Compare commits

..
Author SHA1 Message Date
github-actions[bot]GitHubgithub-actions[bot] <github-actions[bot]@users.noreply.github.com>GitHub Action
dccb9ddd0e Version Packages (#2180)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: GitHub Action <[email protected]>
2024-01-17 15:20:06 -08:00
Joaquim VergesandGitHub c3b264982d export sig minting classes for docs (#2194) 2024-01-17 23:14:26 +00:00
Manan TankandGitHub 0efd0f9d26 [react] add useSetWalletModalConfig hook (#2193) 2024-01-17 22:49:17 +00:00
Manan TankandGitHub 7af35a0133 only commit generated files in release-artifacts workflow (#2192) 2024-01-17 21:02:34 +00:00
Manan TankandGitHub 9caf201f24 Reorder commands in release-artifacts.yml (#2191) 2024-01-17 19:56:28 +00:00
Manan TankandGitHub ea7da5fb77 Refactor release-artifacts workflow (#2190) 2024-01-17 18:56:57 +00:00
89641e3378 [react] Add switchNetworkBtnTitle prop in ConnectWallet and Web3Button (#1884)
Co-authored-by: Manan Tank <[email protected]>
2024-01-17 16:36:39 +00:00
Manan TankandGitHub dcb6afa148 Fix release-artifacts workflow (#2189) 2024-01-17 15:38:37 +00:00
iketwandGitHub 324330d354 [RN] Exports ConnectEmbed as a standalone component (#2185) 2024-01-17 15:14:19 +00:00
Manan TankandGitHub 056643ad83 Fix error in typedoc and snippets workflows (#2188) 2024-01-17 14:39:43 +00:00
Gerry SaporitoandGitHub e21f7bb171 chore: synced chains with db (#2187) 2024-01-17 03:50:19 +00:00
Manan TankandGitHub 148e6a9166 Add bun setup in release-artifacts workflow to fix setup job (#2184) 2024-01-16 21:53:33 +00:00
YashandGitHub 9a23de2be0 [SDK] ZkSync Sepolia Addresses (#2183) 2024-01-16 21:32:46 +00:00
Manan TankandGitHub c377e868ed Fix Docs and Release workflows (#2179) 2024-01-16 21:21:50 +00:00
iketwandGitHub c4f1309dcd [RN] Reports react-native only (#2182) 2024-01-16 20:34:25 +00:00
Manan TankandGitHub 2e057827e3 [react] Remove unused deps (#2181) 2024-01-16 14:53:44 +00:00
YashandGitHub 9e1455294a Add: Example for useOwnedNFTs hook for queryParams (#2170) 2024-01-16 14:35:30 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Manan Tank
e11e645c74 Bump fuse.js from 6.6.2 to 7.0.0 (#2177)
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Manan Tank <[email protected]>
2024-01-16 14:35:12 +00:00
82 changed files with 783530 additions and 156 deletions
+65
View File
@@ -0,0 +1,65 @@
# On the Version Packages branch
# Generate and Commit the Typedoc JSON files and the Snippets JSON files
name: Commit Release Artifacts
on:
push:
branches:
- changeset-release/main
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
jobs:
release-artifacts:
runs-on: ubuntu-latest
steps:
- name: Checkout branch
uses: actions/checkout@v3
# bun setup is required, because pnpm typdoc will run pnpm build and some packages uses bun for build
- name: Setup bun
uses: oven-sh/setup-bun@v1
with:
bun-version: 1.0.21
- name: Install
uses: ./.github/composite-actions/install
- name: Build
run: pnpm build
- name: Typedoc
run: pnpm typedoc
- name: Generate Docs
run: |
cd packages/sdk
pnpm generate-docs
cd ../react-core
pnpm generate-docs
cd ../react
pnpm generate-docs
cd ../..
- name: Generate Snippets
run: pnpm generate-snippets
- name: Commit changes
run: |
git config --local user.email "[email protected]"
git config --local user.name "GitHub Action"
git status
git add packages/react/typedoc/documentation.json
git add packages/react-core/typedoc/documentation.json
git add packages/sdk/typedoc/documentation.json
git add packages/storage/typedoc/documentation.json
git add packages/wallets/typedoc/documentation.json
git add snippets/feature_snippets_react.json
git add snippets/feature_snippets_sdk.json
git add snippets/snippets.json
git commit -m "Commit Release Artifacts [skip ci]"
git push
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+7 -17
View File
@@ -1,3 +1,6 @@
# Using CUSTOM_GITHUB_TOKEN instead of GITHUB_TOKEN is required to trigger workflows in "Version Packages" PR created by changesets/action
# CUSTOM_GITHUB_TOKEN should be a PAT with write access to the repo and has to be created and set as a secret in the repo manually
name: Release Nightly & Stable
on:
@@ -25,6 +28,8 @@ jobs:
uses: actions/checkout@v3
with:
fetch-depth: 0
# Do not use the GITHUB_TOKEN by default
token: ${{ secrets.CUSTOM_GITHUB_TOKEN }}
- name: Setup bun
uses: oven-sh/setup-bun@v1
@@ -46,7 +51,7 @@ jobs:
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.CUSTOM_GITHUB_TOKEN }}
- name: Create @nightly release
if: steps.changesets.outputs.published != 'true'
@@ -56,19 +61,4 @@ jobs:
pnpm release:nightly
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Generate docs
if: steps.changesets.outputs.published == 'true'
run: |
pnpm typedoc
pnpm build
pnpm generate-docs
pnpm generate-snippets
git config --local user.email "[email protected]"
git config --local user.name "GitHub Action"
git add -A
git commit -m "doc automation: update JSON files [skip ci]"
git push
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.CUSTOM_GITHUB_TOKEN }}
-1
View File
@@ -15,7 +15,6 @@
"e2e": "turbo run e2e",
"build": "turbo run build --filter=./packages/*",
"typedoc": "turbo run typedoc",
"generate-docs": "turbo run generate-docs",
"generate-snippets": "node ./scripts/generate-snippets/index.mjs",
"build:release": "turbo run build --force --filter=./packages/*",
"dev": "turbo run dev --no-cache --parallel --continue",
+7
View File
@@ -1,5 +1,12 @@
# @thirdweb-dev/auth
## 4.1.24
### Patch Changes
- Updated dependencies []:
- @thirdweb-dev/wallets@2.4.2
## 4.1.23
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@thirdweb-dev/auth",
"version": "4.1.23",
"version": "4.1.24",
"main": "dist/thirdweb-dev-auth.cjs.js",
"module": "dist/thirdweb-dev-auth.esm.js",
"browser": {
+6
View File
@@ -1,5 +1,11 @@
# @thirdweb-dev/chains
## 0.1.64
### Patch Changes
- [#2187](https://github.com/thirdweb-dev/js/pull/2187) [`e21f7bb1`](https://github.com/thirdweb-dev/js/commit/e21f7bb171334fa3003c954060e60c1ce8c1228f) Thanks [@gerrysaporito](https://github.com/gerrysaporito)! - synced chains package with chains db
## 0.1.63
### Patch Changes
+1 -1
View File
@@ -31,5 +31,5 @@ export default {
"shortName": "Baobab",
"slip44": 1,
"slug": "klaytn-testnet-baobab",
"testnet": false
"testnet": true
} as const satisfies Chain;
+10 -4
View File
@@ -4,9 +4,14 @@ export default {
"chainId": 11297108099,
"explorers": [
{
"name": "Palm Testnet Explorer",
"url": "https://explorer.palm-uat.xyz",
"name": "Chainlens",
"url": "https://testnet.palm.chainlens.com",
"standard": "EIP3091"
},
{
"name": "Dora",
"url": "https://www.ondora.xyz/network/palm-testnet",
"standard": "none"
}
],
"faucets": [],
@@ -16,7 +21,7 @@ export default {
"height": 72,
"format": "svg"
},
"infoURL": "https://palm.io",
"infoURL": "https://palm.network",
"name": "Palm Testnet",
"nativeCurrency": {
"name": "PALM",
@@ -27,7 +32,8 @@ export default {
"rpc": [
"https://palm-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://11297108099.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://palm-testnet.infura.io/v3/${INFURA_API_KEY}"
"https://palm-testnet.infura.io/v3/${INFURA_API_KEY}",
"https://palm-testnet.public.blastapi.io"
],
"shortName": "tpalm",
"slip44": 1,
+10 -4
View File
@@ -4,9 +4,14 @@ export default {
"chainId": 11297108109,
"explorers": [
{
"name": "Palm Explorer",
"url": "https://explorer.palm.io",
"name": "Chainlens",
"url": "https://palm.chainlens.com",
"standard": "EIP3091"
},
{
"name": "Dora",
"url": "https://www.ondora.xyz/network/palm",
"standard": "none"
}
],
"faucets": [],
@@ -16,7 +21,7 @@ export default {
"height": 72,
"format": "svg"
},
"infoURL": "https://palm.io",
"infoURL": "https://palm.network",
"name": "Palm",
"nativeCurrency": {
"name": "PALM",
@@ -27,7 +32,8 @@ export default {
"rpc": [
"https://palm.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://11297108109.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://palm-mainnet.infura.io/v3/${INFURA_API_KEY}"
"https://palm-mainnet.infura.io/v3/${INFURA_API_KEY}",
"https://palm-mainnet.public.blastapi.io"
],
"shortName": "palm",
"slug": "palm",
+37
View File
@@ -0,0 +1,37 @@
import type { Chain } from "../src/types";
export default {
"chain": "Jumbo",
"chainId": 129,
"explorers": [
{
"name": "ProtoJumbo",
"url": "https://protojumbo.jumbochain.org",
"standard": "EIP3091"
}
],
"faucets": [
"https://protojumbo.jumbochain.org/faucet-smart"
],
"features": [
{
"name": "EIP155"
}
],
"infoURL": "https://jumbochain.org",
"name": "ProtoJumbo Testnet",
"nativeCurrency": {
"name": "JNFTC",
"symbol": "JNFTC",
"decimals": 18
},
"networkId": 129,
"rpc": [
"https://protojumbo-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://129.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnode.jumbochain.org"
],
"shortName": "ProtoJumbo",
"slip44": 1,
"slug": "protojumbo-testnet",
"testnet": true
} as const satisfies Chain;
+1 -1
View File
@@ -14,7 +14,7 @@ export default {
"rpc": [
"https://turkey-demo-dev.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://1731313.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://blockscout-poa.huabeizhenxuan.com"
"https://devchain-poa.huabeizhenxuan.com"
],
"shortName": "TDD",
"slug": "turkey-demo-dev",
+31
View File
@@ -0,0 +1,31 @@
import type { Chain } from "../src/types";
export default {
"chain": "Avalanche",
"chainId": 18303,
"explorers": [],
"faucets": [],
"features": [],
"icon": {
"url": "https://images.ctfassets.net/9bazykntljf6/62CceHSYsRS4D9fgDSkLRB/877cb8f26954e1743ff535fd7fdaf78f/avacloud-placeholder.svg",
"width": 256,
"height": 256,
"format": "svg"
},
"infoURL": "https://avacloud.io",
"name": "Zeroone Testnet",
"nativeCurrency": {
"name": "Zeroone Testnet Token",
"symbol": "ZERO",
"decimals": 18
},
"networkId": 18303,
"redFlags": [],
"rpc": [
"https://zeroone-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://18303.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://subnets.avax.network/zeroonetes/testnet/rpc"
],
"shortName": "Zeroone Testnet",
"slug": "zeroone-testnet",
"testnet": true
} as const satisfies Chain;
+31
View File
@@ -0,0 +1,31 @@
import type { Chain } from "../src/types";
export default {
"chain": "Avalanche",
"chainId": 1838,
"explorers": [],
"faucets": [],
"features": [],
"icon": {
"url": "https://images.ctfassets.net/9bazykntljf6/62CceHSYsRS4D9fgDSkLRB/877cb8f26954e1743ff535fd7fdaf78f/avacloud-placeholder.svg",
"width": 256,
"height": 256,
"format": "svg"
},
"infoURL": "https://avacloud.io",
"name": "Traderlands Testnet",
"nativeCurrency": {
"name": "Traderlands Testnet Token",
"symbol": "TDL3",
"decimals": 18
},
"networkId": 1838,
"redFlags": [],
"rpc": [
"https://traderlands-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://1838.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://subnets.avax.network/traderland/testnet/rpc"
],
"shortName": "Traderlands Testnet",
"slug": "traderlands-testnet",
"testnet": true
} as const satisfies Chain;
+2 -2
View File
@@ -10,7 +10,7 @@ export default {
}
],
"faucets": [],
"infoURL": "https:/bt.io",
"infoURL": "https://bt.io",
"name": "BitTorrent Chain Mainnet",
"nativeCurrency": {
"name": "BitTorrent",
@@ -21,7 +21,7 @@ export default {
"rpc": [
"https://bittorrent-chain.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://199.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc.bittorrentchain.io/"
"https://rpc.bt.io"
],
"shortName": "BTT",
"slug": "bittorrent-chain",
+31
View File
@@ -0,0 +1,31 @@
import type { Chain } from "../src/types";
export default {
"chain": "Avalanche",
"chainId": 21758,
"explorers": [],
"faucets": [],
"features": [],
"icon": {
"url": "https://images.ctfassets.net/9bazykntljf6/62CceHSYsRS4D9fgDSkLRB/877cb8f26954e1743ff535fd7fdaf78f/avacloud-placeholder.svg",
"width": 256,
"height": 256,
"format": "svg"
},
"infoURL": "https://avacloud.io",
"name": "FST 01-16 Multi",
"nativeCurrency": {
"name": "FST 01-16 Multi Token",
"symbol": "RUI",
"decimals": 18
},
"networkId": 21758,
"redFlags": [],
"rpc": [
"https://fst-01-16-multi.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://21758.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://subnets.avax.network/defi-kingdoms/dfk-chain/rpc"
],
"shortName": "FST 01-16 Multi",
"slug": "fst-01-16-multi",
"testnet": true
} as const satisfies Chain;
+36
View File
@@ -0,0 +1,36 @@
import type { Chain } from "../src/types";
export default {
"chain": "Ancient8",
"chainId": 28122024,
"explorers": [
{
"name": "scan-testnet",
"url": "https://scanv2-testnet.ancient8.gg",
"standard": "EIP3091"
}
],
"faucets": [],
"icon": {
"url": "ipfs://QmXLmYMqZ2ZKyaaEjayNjLai4RUo2YmorUDwkk95xmdTUr",
"width": 80,
"height": 80,
"format": "png"
},
"infoURL": "https://ancient8.gg/",
"name": "Ancient8 Testnet",
"nativeCurrency": {
"name": "Ether",
"symbol": "ETH",
"decimals": 18
},
"networkId": 28122024,
"rpc": [
"https://ancient8-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://28122024.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpcv2-testnet.ancient8.gg"
],
"shortName": "a8",
"slip44": 1,
"slug": "ancient8-testnet",
"testnet": true
} as const satisfies Chain;
+8 -7
View File
@@ -11,13 +11,13 @@ export default {
],
"faucets": [],
"icon": {
"url": "ipfs://QmSX8sHToRzyFupT8BvPQjVsegRWFYz2mdnLkVnqBFKohY",
"width": 901,
"height": 901,
"url": "ipfs://QmXLmYMqZ2ZKyaaEjayNjLai4RUo2YmorUDwkk95xmdTUr",
"width": 80,
"height": 80,
"format": "png"
},
"infoURL": "https://ancient8.gg/",
"name": "Ancient8 Testnet",
"name": "Ancient8 Testnet (deprecated)",
"nativeCurrency": {
"name": "Ether",
"symbol": "ETH",
@@ -25,12 +25,13 @@ export default {
},
"networkId": 2863311531,
"rpc": [
"https://ancient8-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://ancient8-testnet-deprecated.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://2863311531.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc-testnet.ancient8.gg"
],
"shortName": "a8",
"shortName": "a8old",
"slip44": 1,
"slug": "ancient8-testnet",
"slug": "ancient8-testnet-deprecated",
"status": "deprecated",
"testnet": true
} as const satisfies Chain;
+37
View File
@@ -0,0 +1,37 @@
import type { Chain } from "../src/types";
export default {
"chain": "Evoke",
"chainId": 31414,
"explorers": [
{
"name": "Evoke SmartChain Testnet Explorer",
"url": "https://testnet-explorer.evokescan.org",
"standard": "EIP3091"
}
],
"faucets": [
"https://faucet.evokescan.org"
],
"icon": {
"url": "ipfs://bafkreia5q26knsvxgkwxze7woepvsqat5n2hodokh4ozzphmhexqez5s34",
"width": 100,
"height": 100,
"format": "png"
},
"infoURL": "https://testnet-explorer.evokescan.org",
"name": "Evoke Testnet",
"nativeCurrency": {
"name": "MTHN Testnet",
"symbol": "MTHN",
"decimals": 18
},
"networkId": 31414,
"rpc": [
"https://evoke-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://31414.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet-rpc.evokescan.org"
],
"shortName": "tmthn",
"slug": "evoke-testnet",
"testnet": true
} as const satisfies Chain;
+31
View File
@@ -0,0 +1,31 @@
import type { Chain } from "../src/types";
export default {
"chain": "Avalanche",
"chainId": 35439,
"explorers": [],
"faucets": [],
"features": [],
"icon": {
"url": "https://images.ctfassets.net/9bazykntljf6/62CceHSYsRS4D9fgDSkLRB/877cb8f26954e1743ff535fd7fdaf78f/avacloud-placeholder.svg",
"width": 256,
"height": 256,
"format": "svg"
},
"infoURL": "https://avacloud.io",
"name": "QI M 2401122",
"nativeCurrency": {
"name": "QI M 2401122 Token",
"symbol": "HZU",
"decimals": 18
},
"networkId": 35439,
"redFlags": [],
"rpc": [
"https://qi-m-2401122.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://35439.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://subnets.avacloud-dev.io/f14d837e-de8f-446d-8222-0077f26e6694"
],
"shortName": "QI M 2401122",
"slug": "qi-m-2401122",
"testnet": true
} as const satisfies Chain;
+42
View File
@@ -0,0 +1,42 @@
import type { Chain } from "../src/types";
export default {
"chain": "Xai Sepolia",
"chainId": 37714555429,
"explorers": [
{
"name": "blockscout",
"url": "https://testnet-explorer-v2.xai-chain.net/",
"standard": "EIP3091"
}
],
"faucets": [],
"features": [],
"icon": {
"url": "ipfs://QmZKFekbHxDkB8gFmmmjWz89SLhwg38GkALmAKo3gn753N/2024-01-10%2012.50.15.jpg",
"width": 512,
"height": 512,
"format": "jpg"
},
"infoURL": "https://xai.games",
"name": "Xai Sepolia",
"nativeCurrency": {
"name": "sXAI",
"symbol": "sXAI",
"decimals": 18
},
"networkId": 37714555429,
"parent": {
"type": "L3",
"chain": "eip155-1",
"bridges": []
},
"redFlags": [],
"rpc": [
"https://xai-sepolia.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://37714555429.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet-v2.xai-chain.net/rpc"
],
"shortName": "xai-sepolia",
"slug": "xai-sepolia",
"testnet": true
} as const satisfies Chain;
+46
View File
@@ -0,0 +1,46 @@
import type { Chain } from "../src/types";
export default {
"chain": "Tangle Testnet",
"chainId": 3799,
"explorers": [
{
"name": "ttntscan",
"url": "https://testnet-explorer.tangle.tools",
"standard": "EIP3091",
"icon": {
"url": "ipfs://QmYtUimyqHkkFxYdbXXRbUqNg2VLPUg6Uu2C2nmFWowiZM",
"width": 551,
"height": 540,
"format": "png"
}
}
],
"faucets": [
"https://faucet.tangle.tools"
],
"icon": {
"url": "ipfs://QmbxMNBTeQgch8t9GpWdLiS2R3wPYCzVRaX5kCQ4o5QU3w",
"width": 1600,
"height": 1600,
"format": "png"
},
"infoURL": "https://docs.tangle.tools",
"name": "Tangle Testnet",
"nativeCurrency": {
"name": "Testnet Tangle Network Token",
"symbol": "tTNT",
"decimals": 18
},
"networkId": 3799,
"rpc": [
"https://tangle-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://3799.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet-rpc.tangle.tools",
"https://testnet-rpc-archive.tangle.tools",
"wss://testnet-rpc.tangle.tools",
"wss://testnet-rpc-archive.tangle.tools"
],
"shortName": "tTangle",
"slug": "tangle-testnet",
"testnet": true
} as const satisfies Chain;
+31
View File
@@ -0,0 +1,31 @@
import type { Chain } from "../src/types";
export default {
"chain": "Avalanche",
"chainId": 39098,
"explorers": [],
"faucets": [],
"features": [],
"icon": {
"url": "https://images.ctfassets.net/9bazykntljf6/62CceHSYsRS4D9fgDSkLRB/877cb8f26954e1743ff535fd7fdaf78f/avacloud-placeholder.svg",
"width": 256,
"height": 256,
"format": "svg"
},
"infoURL": "https://avacloud.io",
"name": "QI 20240108",
"nativeCurrency": {
"name": "QI 20240108 Token",
"symbol": "COZ",
"decimals": 18
},
"networkId": 39098,
"redFlags": [],
"rpc": [
"https://qi-20240108.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://39098.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://subnets.avacloud-dev.io/f575b5b1-8b60-47f3-af28-13f3f3de2ba5"
],
"shortName": "QI 20240108",
"slug": "qi-20240108",
"testnet": true
} as const satisfies Chain;
+31
View File
@@ -0,0 +1,31 @@
import type { Chain } from "../src/types";
export default {
"chain": "Avalanche",
"chainId": 39747,
"explorers": [],
"faucets": [],
"features": [],
"icon": {
"url": "https://images.ctfassets.net/9bazykntljf6/62CceHSYsRS4D9fgDSkLRB/877cb8f26954e1743ff535fd7fdaf78f/avacloud-placeholder.svg",
"width": 256,
"height": 256,
"format": "svg"
},
"infoURL": "https://avacloud.io",
"name": "QaUser41Testnet",
"nativeCurrency": {
"name": "QaUser41Testnet Token",
"symbol": "GYF",
"decimals": 18
},
"networkId": 39747,
"redFlags": [],
"rpc": [
"https://qauser41testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://39747.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://subnets.avax.network/defi-kingdoms/dfk-chain/rpc"
],
"shortName": "QaUser41Testnet",
"slug": "qauser41testnet",
"testnet": true
} as const satisfies Chain;
+38
View File
@@ -0,0 +1,38 @@
import type { Chain } from "../src/types";
export default {
"chain": "DEE",
"chainId": 45510,
"explorers": [
{
"name": "Deelance Mainnet Explorer",
"url": "https://deescan.com",
"standard": "EIP3091"
}
],
"faucets": [
"https://faucet.deelance.com"
],
"icon": {
"url": "ipfs://Qmay2j8biuo5xLJL8NcLtrzubAEHuCWz65cdbKE1pSnGf6",
"width": 500,
"height": 500,
"format": "png"
},
"infoURL": "https://deelance.com",
"name": "Deelance Mainnet",
"nativeCurrency": {
"name": "Deelance",
"symbol": "DEE",
"decimals": 18
},
"networkId": 45510,
"rpc": [
"https://deelance.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://45510.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc.deelance.com"
],
"shortName": "dee",
"slug": "deelance",
"testnet": false,
"title": "Deelance Network Mainnet"
} as const satisfies Chain;
+5 -1
View File
@@ -27,7 +27,11 @@ export default {
"rpc": [
"https://areon-network.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://463.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://mainnet-rpc.areon.network"
"https://mainnet-rpc.areon.network",
"https://mainnet-rpc2.areon.network",
"https://mainnet-rpc3.areon.network",
"https://mainnet-rpc4.areon.network",
"https://mainnet-rpc5.areon.network"
],
"shortName": "area",
"slug": "areon-network",
+31
View File
@@ -0,0 +1,31 @@
import type { Chain } from "../src/types";
export default {
"chain": "Avalanche",
"chainId": 56570,
"explorers": [],
"faucets": [],
"features": [],
"icon": {
"url": "https://images.ctfassets.net/9bazykntljf6/62CceHSYsRS4D9fgDSkLRB/877cb8f26954e1743ff535fd7fdaf78f/avacloud-placeholder.svg",
"width": 256,
"height": 256,
"format": "svg"
},
"infoURL": "https://avacloud.io",
"name": "QaUser4Testnet",
"nativeCurrency": {
"name": "QaUser4Testnet Token",
"symbol": "GYF",
"decimals": 18
},
"networkId": 56570,
"redFlags": [],
"rpc": [
"https://qauser4testnet-qauser4testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://56570.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://subnets.avax.network/defi-kingdoms/dfk-chain/rpc"
],
"shortName": "QaUser4Testnet",
"slug": "qauser4testnet-qauser4testnet",
"testnet": true
} as const satisfies Chain;
+31
View File
@@ -0,0 +1,31 @@
import type { Chain } from "../src/types";
export default {
"chain": "Avalanche",
"chainId": 61514,
"explorers": [],
"faucets": [],
"features": [],
"icon": {
"url": "https://images.ctfassets.net/9bazykntljf6/62CceHSYsRS4D9fgDSkLRB/877cb8f26954e1743ff535fd7fdaf78f/avacloud-placeholder.svg",
"width": 256,
"height": 256,
"format": "svg"
},
"infoURL": "https://avacloud.io",
"name": "QI011624I1",
"nativeCurrency": {
"name": "QI011624I1 Token",
"symbol": "DGQ",
"decimals": 18
},
"networkId": 61514,
"redFlags": [],
"rpc": [
"https://qi011624i1.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://61514.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://subnets.avacloud-dev.io/e81adde6-3c1b-46ce-8dfe-e7a689f8c7eb"
],
"shortName": "QI011624I1",
"slug": "qi011624i1",
"testnet": true
} as const satisfies Chain;
+31
View File
@@ -0,0 +1,31 @@
import type { Chain } from "../src/types";
export default {
"chain": "Avalanche",
"chainId": 63367,
"explorers": [],
"faucets": [],
"features": [],
"icon": {
"url": "https://images.ctfassets.net/9bazykntljf6/62CceHSYsRS4D9fgDSkLRB/877cb8f26954e1743ff535fd7fdaf78f/avacloud-placeholder.svg",
"width": 256,
"height": 256,
"format": "svg"
},
"infoURL": "https://avacloud.io",
"name": "ReSFT 1-16-24",
"nativeCurrency": {
"name": "ReSFT 1-16-24 Token",
"symbol": "ZAF",
"decimals": 18
},
"networkId": 63367,
"redFlags": [],
"rpc": [
"https://resft-1-16-24.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://63367.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://subnets.avax.network/defi-kingdoms/dfk-chain/rpc"
],
"shortName": "ReSFT 1-16-24",
"slug": "resft-1-16-24",
"testnet": true
} as const satisfies Chain;
+10 -4
View File
@@ -10,8 +10,14 @@ export default {
}
],
"faucets": [],
"icon": {
"url": "ipfs://bafkreieox7v337p3jfhd37dz74mq6mn3uk5i5475rmzpirmyp6ydcfzzqi",
"width": 350,
"height": 350,
"format": "png"
},
"infoURL": "https://kalichain.com",
"name": "Kalichain Mainnet",
"name": "Kalichain Testnet",
"nativeCurrency": {
"name": "kalis",
"symbol": "KALIS",
@@ -19,11 +25,11 @@ export default {
},
"networkId": 653,
"rpc": [
"https://kalichain.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://kalichain-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://653.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc.kalichain.com"
],
"shortName": "kalichain",
"slug": "kalichain",
"testnet": false
"slug": "kalichain-testnet",
"testnet": true
} as const satisfies Chain;
+2 -2
View File
@@ -25,11 +25,11 @@ export default {
},
"networkId": 654,
"rpc": [
"https://kalichain-kalichainmainnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://kalichain.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://654.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://mainnet.kalichain.com"
],
"shortName": "kalichainMainnet",
"slug": "kalichain-kalichainmainnet",
"slug": "kalichain",
"testnet": false
} as const satisfies Chain;
+41
View File
@@ -0,0 +1,41 @@
import type { Chain } from "../src/types";
export default {
"chain": "PAXB",
"chainId": 6701,
"explorers": [
{
"name": "PAXB Explorer",
"url": "https://scan.paxb.io",
"standard": "EIP3091",
"icon": {
"url": "ipfs://QmSP66CHynXpMYkjV28uLjTR4kjuoJyy92igYYpvLoqHtG",
"width": 300,
"height": 300,
"format": "png"
}
}
],
"faucets": [],
"icon": {
"url": "ipfs://QmSP66CHynXpMYkjV28uLjTR4kjuoJyy92igYYpvLoqHtG",
"width": 300,
"height": 300,
"format": "png"
},
"infoURL": "https://paxb.io/",
"name": "PAXB Mainnet",
"nativeCurrency": {
"name": "PAXB",
"symbol": "PAXB",
"decimals": 18
},
"networkId": 6701,
"rpc": [
"https://paxb.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://6701.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://chain.paxb.io"
],
"shortName": "PAXB",
"slug": "paxb",
"testnet": false
} as const satisfies Chain;
+31
View File
@@ -0,0 +1,31 @@
import type { Chain } from "../src/types";
export default {
"chain": "Avalanche",
"chainId": 68295,
"explorers": [],
"faucets": [],
"features": [],
"icon": {
"url": "https://images.ctfassets.net/9bazykntljf6/62CceHSYsRS4D9fgDSkLRB/877cb8f26954e1743ff535fd7fdaf78f/avacloud-placeholder.svg",
"width": 256,
"height": 256,
"format": "svg"
},
"infoURL": "https://avacloud.io",
"name": "qr0116y1s",
"nativeCurrency": {
"name": "qr0116y1s Token",
"symbol": "ANG",
"decimals": 18
},
"networkId": 68295,
"redFlags": [],
"rpc": [
"https://qr0116y1s.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://68295.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://subnets.avax.network/qr0116y1s/testnet/rpc"
],
"shortName": "qr0116y1s",
"slug": "qr0116y1s",
"testnet": true
} as const satisfies Chain;
+23
View File
@@ -0,0 +1,23 @@
import type { Chain } from "../src/types";
export default {
"chain": "Berachain",
"chainId": 80085,
"explorers": [],
"faucets": [
"https://artio.faucet.berachain.com/"
],
"features": [],
"infoURL": "https://www.berachain.com/",
"name": "Berachain Artio",
"nativeCurrency": {
"name": "BERA",
"symbol": "BERA",
"decimals": 18
},
"networkId": 80085,
"redFlags": [],
"rpc": [],
"shortName": "bera-artio",
"slug": "berachain-artio",
"testnet": true
} as const satisfies Chain;
+51
View File
@@ -0,0 +1,51 @@
import type { Chain } from "../src/types";
export default {
"chain": "haven1",
"chainId": 810,
"explorers": [
{
"name": "Haven1 Explorer",
"url": "https://testnet-explorer.haven1.org",
"standard": "EIP3091",
"icon": {
"url": "ipfs://QmbSwngVDEiGaw3JzdME7fz5mYBWKbbz1ZerTpimaAxNXR",
"width": 32,
"height": 33,
"format": "svg"
}
}
],
"faucets": [
"https://www.haven1.org/faucet"
],
"features": [
{
"name": "EIP155"
},
{
"name": "EIP1559"
}
],
"icon": {
"url": "ipfs://QmbSwngVDEiGaw3JzdME7fz5mYBWKbbz1ZerTpimaAxNXR",
"width": 32,
"height": 33,
"format": "svg"
},
"infoURL": "https://www.haven1.org",
"name": "Haven1 Testnet",
"nativeCurrency": {
"name": "Haven1",
"symbol": "H1",
"decimals": 18
},
"networkId": 810,
"rpc": [
"https://haven1-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://810.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet-rpc.haven1.org"
],
"shortName": "h1",
"slug": "haven1-testnet",
"testnet": true
} as const satisfies Chain;
+31
View File
@@ -0,0 +1,31 @@
import type { Chain } from "../src/types";
export default {
"chain": "Avalanche",
"chainId": 82368,
"explorers": [],
"faucets": [],
"features": [],
"icon": {
"url": "https://images.ctfassets.net/9bazykntljf6/62CceHSYsRS4D9fgDSkLRB/877cb8f26954e1743ff535fd7fdaf78f/avacloud-placeholder.svg",
"width": 256,
"height": 256,
"format": "svg"
},
"infoURL": "https://avacloud.io",
"name": "QR0116S1",
"nativeCurrency": {
"name": "QR0116S1 Token",
"symbol": "USJ",
"decimals": 18
},
"networkId": 82368,
"redFlags": [],
"rpc": [
"https://qr0116s1.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://82368.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://subnets.avax.network/qr0116s1/testnet/rpc"
],
"shortName": "QR0116S1",
"slug": "qr0116s1",
"testnet": true
} as const satisfies Chain;
+35
View File
@@ -0,0 +1,35 @@
import type { Chain } from "../src/types";
export default {
"chain": "MTHN",
"chainId": 9395,
"explorers": [
{
"name": "Evoke SmartChain Explorer",
"url": "https://explorer.evokescan.org",
"standard": "EIP3091"
}
],
"faucets": [],
"icon": {
"url": "ipfs://bafkreia5q26knsvxgkwxze7woepvsqat5n2hodokh4ozzphmhexqez5s34",
"width": 100,
"height": 100,
"format": "png"
},
"infoURL": "https://explorer.evokescan.org",
"name": "Evoke Mainnet",
"nativeCurrency": {
"name": "MTHN",
"symbol": "MTHN",
"decimals": 18
},
"networkId": 9395,
"rpc": [
"https://evoke.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://9395.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://mainnet-rpc.evokescan.org"
],
"shortName": "MTHN",
"slug": "evoke",
"testnet": false
} as const satisfies Chain;
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@thirdweb-dev/chains",
"version": "0.1.63",
"version": "0.1.64",
"main": "dist/thirdweb-dev-chains.cjs.js",
"module": "dist/thirdweb-dev-chains.esm.js",
"exports": {
File diff suppressed because one or more lines are too long
+10
View File
@@ -1,5 +1,15 @@
# thirdweb
## 0.13.32
### Patch Changes
- Updated dependencies [[`9a23de2b`](https://github.com/thirdweb-dev/js/commit/9a23de2be0c47a7a3702d65041ff654159d8e264), [`e21f7bb1`](https://github.com/thirdweb-dev/js/commit/e21f7bb171334fa3003c954060e60c1ce8c1228f)]:
- @thirdweb-dev/sdk@4.0.27
- @thirdweb-dev/chains@0.1.64
- @thirdweb-dev/wallets@2.4.2
- @thirdweb-dev/auth@4.1.24
## 0.13.31
### Patch Changes
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "thirdweb",
"main": "dist/cli/index.js",
"version": "0.13.31",
"version": "0.13.32",
"repository": "https://github.com/thirdweb-dev/js/tree/main/packages/cli",
"author": "thirdweb eng <[email protected]>",
"license": "Apache-2.0",
+10
View File
@@ -1,5 +1,15 @@
# @thirdweb-dev/react-core
## 4.3.2
### Patch Changes
- Updated dependencies [[`9a23de2b`](https://github.com/thirdweb-dev/js/commit/9a23de2be0c47a7a3702d65041ff654159d8e264), [`e21f7bb1`](https://github.com/thirdweb-dev/js/commit/e21f7bb171334fa3003c954060e60c1ce8c1228f)]:
- @thirdweb-dev/sdk@4.0.27
- @thirdweb-dev/chains@0.1.64
- @thirdweb-dev/wallets@2.4.2
- @thirdweb-dev/auth@4.1.24
## 4.3.1
## 4.3.0
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@thirdweb-dev/react-core",
"version": "4.3.1",
"version": "4.3.2",
"repository": "https://github.com/thirdweb-dev/js/tree/main/packages/react-core",
"author": "thirdweb eng <[email protected]>",
"license": "Apache-2.0",
+19 -1
View File
@@ -335,8 +335,26 @@ export function useTotalCirculatingSupply(
* @param ownerWalletAddress -
* The wallet address to get owned tokens for. Likely, you will want to view the connected wallet’s NFTs. use the `useAddress` hook to get this value.
*
* @param queryParams - Query params to pass to the query for pagination
* @param queryParams -
* Paginate the results by providing a `queryParams` object as an argument.
*
* ```jsx
* import { useOwnedNFTs, useContract, useAddress } from "@thirdweb-dev/react";
*
* function App() {
* const { contract } = useContract(contractAddress);
* const address = useAddress();
* const { data, isLoading, error } = useOwnedNFTs(
* contract,
* address
* {
* count: 10, // Limit the number of results
* start: 0, // Start from the nth result (useful for pagination)
* },
* );
* }
* ```
*
* @returns Query result object that includes the list of owned `NFT` objects
*
* @twfeature ERC721Enumerable | ERC1155Enumerable | ERC721Supply
File diff suppressed because it is too large Load Diff
@@ -1,5 +1,7 @@
# @thirdweb-dev/react-native-compat
## 0.6.2
## 0.6.1
## 0.6.0
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "@thirdweb-dev/react-native-compat",
"description": "Shims for Thirdweb in React Native Projects",
"version": "0.6.1",
"version": "0.6.2",
"author": "thirdweb eng <[email protected]>",
"repository": "https://github.com/thirdweb-dev/js/tree/main/packages/react-native-compat",
"license": "Apache-2.0",
+33
View File
@@ -1,5 +1,38 @@
# @thirdweb-dev/react-native
## 0.6.2
### Patch Changes
- [#2182](https://github.com/thirdweb-dev/js/pull/2182) [`c4f1309d`](https://github.com/thirdweb-dev/js/commit/c4f1309dcdb599b8b5f014436bce8e63a7f5a9c6) Thanks [@iketw](https://github.com/iketw)! - Reports only react-nativec
- [#2185](https://github.com/thirdweb-dev/js/pull/2185) [`324330d3`](https://github.com/thirdweb-dev/js/commit/324330d3549176542b05be5bede84ebd8f2684ca) Thanks [@iketw](https://github.com/iketw)! - Exports standalone ConnectEmbed UI
Devs can now show the Connect modal UI directly into their apps.
This component will render the wallets defined in our ThirdwebProvider.
```tsx
<ConnectEmbed
modalTitleIconUrl="<my-icon-url>"
modalTitle="Sign In"
theme={"light"}
onConnect={() => {
console.log("wallet connected");
}}
container={{
paddingVertical: "md",
marginHorizontal: "md",
borderRadius: "md",
}}
/>
```
- Updated dependencies [[`9a23de2b`](https://github.com/thirdweb-dev/js/commit/9a23de2be0c47a7a3702d65041ff654159d8e264), [`e21f7bb1`](https://github.com/thirdweb-dev/js/commit/e21f7bb171334fa3003c954060e60c1ce8c1228f)]:
- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
## 0.6.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@thirdweb-dev/react-native",
"version": "0.6.1",
"version": "0.6.2",
"repository": "https://github.com/thirdweb-dev/js/tree/main/packages/react-native",
"author": "thirdweb eng <[email protected]>",
"license": "Apache-2.0",
@@ -5,7 +5,6 @@ import {
TW_UPLOAD_SERVER_URL,
} from "@thirdweb-dev/storage";
import { IpfsUploaderOptions, UploadDataValue } from "./types";
import { Platform } from "react-native";
import { appBundleId, packageVersion } from "../../evm/utils/version";
import { BUNDLE_ID_HEADER } from "../../evm/constants/headers";
@@ -40,7 +39,7 @@ export class IpfsUploader implements IStorageUploader<IpfsUploadBatchOptions> {
};
const { version, name: packageName } = packageVersion;
const platform = `react-native-${Platform.OS}`;
const platform = "react-native";
if ("uri" in data[0] && "type" in data[0] && "name" in data[0]) {
// then it's an array of files
@@ -23,7 +23,7 @@ export type ChooseWalletProps = {
headerText?: ReactNode | string;
subHeaderText?: ReactNode | string;
onChooseWallet: (wallet: WalletConfig<any>, data?: any) => void;
onClose: () => void;
onClose?: () => void;
wallets: WalletConfig<any>[];
excludeWalletIds?: string[];
modalTitleIconUrl?: string;
@@ -13,32 +13,125 @@ import { useColorScheme } from "react-native";
import {
useGlobalTheme,
useLocale,
useModalState,
useUIContext,
} from "../../providers/ui-context-provider";
import {
CLOSE_MODAL_STATE,
ConnectWalletFlowModal,
} from "../../utils/modalTypes";
import { CLOSE_MODAL_STATE } from "../../utils/modalTypes";
import Box from "../base/Box";
import { ThemeProvider } from "../../styles/ThemeProvider";
import { Theme } from "../../styles/theme";
export const ConnectWalletFlow = () => {
export type ConnectEmbedProps = {
/**
* Set a custom title for the Connect Wallet modal
*
* The default is `"Choose your wallet"`
*/
modalTitle?: string;
/**
* Replace the thirdweb icon next to modalTitle and set your own iconUrl
*
* Set to empty string to hide the icon
*/
modalTitleIconUrl?: string;
/**
* theme for the ConnectEmbed
*
* If a theme is set on the [`ThirdWebProvider`](https://portal.thirdweb.com/react/v4/ThirdwebProvider) component, it will be used as the default theme for all thirdweb components, else the default will be "dark"
*
* theme can be set to either "dark" or "light" or a custom theme object.
*
* You can also import `lightTheme` or `darkTheme` functions from `@thirdweb-dev/react-native` to use the default themes as base and overrides parts of it.
*
* @example
* ```ts
* import { lightTheme } from "@thirdweb-dev/react-native";
* const customTheme = lightTheme({
* colors: {
* accentButtonTextColor: 'red'
* }
* })
* ```
*/
theme?: "dark" | "light" | Theme;
/**
* If provided, Embed will show a Terms of Service message at the bottom with below link
*/
termsOfServiceUrl?: string;
/**
* If provided, Embed will show a Privacy Policy message at the bottom with below link
*/
privacyPolicyUrl?: string;
/**
* Callback to be called on successful connection of wallet
*
* ```tsx
* <ConnectEmbed
* onConnect={() => {
* console.log("wallet connected")
* }}
* />
* ```
*
* Note that this does not include the sign in, If you want to call a callback after user connects AND signs in with their wallet, use `auth.onLogin` prop instead
*
* ```tsx
* <ConnectEmbed
* auth={{
* onLogin: () => {
* console.log("wallet connected and signed in")
* }
* }}
* />
* ```
*
*/
onConnect?: () => void;
/**
* Props to be passed to the Embed container component to control padding, margin, etc.
*
* ```tsx
* <ConnectEmbed container={{
* paddingVertical: 'md',
* marginHorizontal: 'md',
* borderRadius: 'md',
* }} />
* ```
*/
container?: React.ComponentProps<typeof Box>;
};
export const ConnectEmbed = (props: ConnectEmbedProps) => {
return <ConnectEmbedUI {...props} isModal={false} />;
};
export const ConnectEmbedUI = ({
modalTitle,
modalTitleIconUrl,
privacyPolicyUrl,
termsOfServiceUrl,
isModal = true,
theme,
container: container,
onConnect,
}: ConnectEmbedProps & { isModal: boolean }) => {
const l = useLocale();
const { modalState, setModalState } = useModalState();
const {
modalTitle,
modalTitleIconUrl,
privacyPolicyUrl,
termsOfServiceUrl,
walletConfig,
} = (modalState as ConnectWalletFlowModal).data;
const supportedWallets = useWallets();
const setModalState = useUIContext().setModalState;
const walletConfig =
supportedWallets.length === 1 ? supportedWallets[0] : undefined;
const [modalVisible, setModalVisible] = useState(false);
const [activeWallet, setActiveWallet] = useState<WalletConfig | undefined>();
const [isConnecting, setIsConnecting] = useState(false);
const [selectionData, setSelectionData] = useState<any>();
const supportedWallets = useWallets();
const theme = useColorScheme();
const colorTheme = useColorScheme();
const appTheme = useGlobalTheme();
const setTheme = useUIContext().setTheme;
const address = useAddress();
const {
activeWallet: connectedWallet,
@@ -65,13 +158,14 @@ export const ConnectWalletFlow = () => {
setIsConnecting(true);
try {
await connect(wallet, { ...data });
onConnect?.();
} catch (error) {
console.error("Error connecting to the wallet", error);
} finally {
onClose(true);
}
},
[connect, onClose],
[connect, onClose, onConnect],
);
const onChooseWallet = useCallback(
@@ -87,6 +181,12 @@ export const ConnectWalletFlow = () => {
[connectActiveWallet],
);
useEffect(() => {
if (theme) {
setTheme(theme);
}
}, [setTheme, theme]);
useEffect(() => {
// case when only one wallet is passed in supportedWallets
if (walletConfig) {
@@ -128,7 +228,7 @@ export const ConnectWalletFlow = () => {
return (
<activeWallet.connectUI
modalSize="compact"
theme={theme || "dark"}
theme={colorTheme || "dark"}
goBack={onBackPress}
connected={handleClose}
isOpen={modalVisible}
@@ -164,12 +264,12 @@ export const ConnectWalletFlow = () => {
setConnectedWallet,
setConnectionStatus,
supportedWallets,
theme,
colorTheme,
]);
return (
<ThemeProvider theme={appTheme}>
<Box flexDirection="column">
<Box flexDirection="column" backgroundColor="background" {...container}>
{activeWallet ? (
isConnecting ? (
<ConnectingWallet
@@ -182,7 +282,7 @@ export const ConnectWalletFlow = () => {
) : undefined
}
wallet={activeWallet}
onClose={onClose}
onClose={isModal ? onClose : undefined}
onBackPress={onBackPress}
/>
) : (
@@ -196,7 +296,7 @@ export const ConnectWalletFlow = () => {
termsOfServiceUrl={termsOfServiceUrl}
wallets={supportedWallets}
onChooseWallet={onChooseWallet}
onClose={onClose}
onClose={isModal ? onClose : undefined}
/>
)}
</Box>
@@ -1,6 +1,6 @@
import { ActivityIndicator, StyleSheet } from "react-native";
import { BaseButton, Text } from "../base";
import { useConnectionStatus, useWallets } from "@thirdweb-dev/react-core";
import { useConnectionStatus } from "@thirdweb-dev/react-core";
import { useState, useEffect } from "react";
import {
useGlobalTheme,
@@ -53,7 +53,6 @@ export const ConnectWalletButton = ({
const connectionStatus = useConnectionStatus();
const isWalletConnecting = connectionStatus === "connecting";
const supportedWallets = useWallets();
const [showButtonSpinner, setShowButtonSpinner] = useState(false);
const { setModalState } = useModalState();
@@ -88,8 +87,6 @@ export const ConnectWalletButton = ({
modalTitleIconUrl,
termsOfServiceUrl,
privacyPolicyUrl,
walletConfig:
supportedWallets.length === 1 ? supportedWallets[0] : undefined,
},
caller: "ConnectWallet",
});
@@ -11,7 +11,7 @@ export type ConnectingWalletProps = {
subHeaderText?: string;
footer?: ReactNode;
content?: ReactNode;
onClose: () => void;
onClose?: () => void;
onBackPress: () => void;
wallet: WalletConfig<any>;
};
@@ -7,7 +7,7 @@ import Text from "../../base/Text";
import { FlexAlignType, StyleSheet, View } from "react-native";
interface ConnectWalletHeaderProps {
onClose: () => void;
onClose?: () => void;
onBackPress?: () => void;
middleContent?: React.ReactNode;
headerText?: string;
@@ -46,13 +46,17 @@ export const ConnectWalletHeader = ({
<View />
)}
{middleContent ? middleContent : null}
<Icon
type="close"
width={14}
height={14}
onPress={onClose}
color={theme.colors.iconPrimary}
/>
{onClose ? (
<Icon
type="close"
width={14}
height={14}
onPress={onClose}
color={theme.colors.iconPrimary}
/>
) : (
<View />
)}
</View>
<View style={{ ...styles.headerContainer, alignItems: alignHeader }}>
{headerText ? (
@@ -2,7 +2,7 @@ import {
useGlobalTheme,
useModalState,
} from "../providers/ui-context-provider";
import { ConnectWalletFlow } from "./ConnectWalletFlow/ConnectWalletFlow";
import { ConnectEmbedUI } from "./ConnectWalletFlow/ConnectEmbed";
import { Dimensions, StyleSheet, View } from "react-native";
import { useMemo } from "react";
import { ThemeProvider } from "../styles/ThemeProvider";
@@ -10,6 +10,7 @@ import { SessionRequestModal } from "./ConnectWalletDetails/SessionRequestModal"
import { SessionProposalModal } from "./ConnectWalletDetails/SessionProposalModal";
import { TWModal } from "./base/modal/TWModal";
import Box from "./base/Box";
import { ConnectWalletFlowModal } from "../utils/modalTypes";
const MODAL_HEIGHT = Dimensions.get("window").height * 0.7;
const DEVICE_WIDTH = Dimensions.get("window").width;
@@ -23,7 +24,12 @@ export const MainModal = () => {
const view = useMemo(() => {
switch (modalState?.view) {
case "ConnectWalletFlow":
return <ConnectWalletFlow />;
return (
<ConnectEmbedUI
{...(modalState as ConnectWalletFlowModal).data}
isModal={true}
/>
);
case "WalletConnectSessionRequestModal":
return <SessionRequestModal />;
case "WalletConnectSessionProposalModal":
@@ -31,7 +37,7 @@ export const MainModal = () => {
default:
return null;
}
}, [modalState.view]);
}, [modalState]);
return (
<ThemeProvider theme={theme}>
@@ -43,7 +43,6 @@ export const WalletButton = ({
paddingHorizontal="md"
paddingVertical="sm"
borderRadius="sm"
backgroundColor="background"
onPress={onPress}
{...props}
>
+6
View File
@@ -38,6 +38,12 @@ export {
ConnectWallet,
type ConnectWalletProps,
} from "./components/ConnectWallet";
export {
ConnectEmbed,
type ConnectEmbedProps,
} from "./components/ConnectWalletFlow/ConnectEmbed";
export {
Web3Button,
type Web3ButtonProps,
@@ -100,7 +100,7 @@ export const useGlobalTheme = (theme?: ThemeProviderProps["theme"]): Theme => {
const resultTheme = useMemo(() => {
const resp = getThemeObj(context.theme) || getThemeObj(theme) || appTheme;
return resp;
}, [theme, context, appTheme]);
}, [theme, context.theme, appTheme]);
return resultTheme;
};
@@ -1,4 +1,3 @@
import { WalletConfig } from "@thirdweb-dev/react-core";
import { WCProposal, WCRequest } from "@thirdweb-dev/wallets";
export const CLOSE_MODAL_STATE = (caller: Caller): ModalState => {
@@ -50,17 +49,16 @@ export type ClosedModal = {
} & SheetModal;
// connect wallet flow
export type ConnectWalletFlowData = {
export type ConnectEmbedData = {
modalTitle?: string;
modalTitleIconUrl?: string;
termsOfServiceUrl?: string;
privacyPolicyUrl?: string;
walletConfig?: WalletConfig;
};
export type ConnectWalletFlowModal = {
view: "ConnectWalletFlow";
data: ConnectWalletFlowData;
data: ConnectEmbedData;
} & SheetModal;
// wallet details
+56
View File
@@ -1,5 +1,61 @@
# @thirdweb-dev/react
## 4.3.2
### Patch Changes
- [#1884](https://github.com/thirdweb-dev/js/pull/1884) [`89641e33`](https://github.com/thirdweb-dev/js/commit/89641e33784ff74c32fcbb51db72b67065ba85cb) Thanks [@tommaay](https://github.com/tommaay)! - Add prop `switchNetworkBtnTitle` to `ConnectWallet` and `Web3Button` components to allow changing the "Switch Network" label on the button which is displayed when user needs to switch the network in the connected wallet.
```tsx
<ConnectWallet switchNetworkBtnTitle="Switch Chain" />
```
```tsx
<Web3Button
switchNetworkBtnTitle="Switch Chain"
contractAddress="0x..."
action={someAction}
/>
```
- [#2193](https://github.com/thirdweb-dev/js/pull/2193) [`0efd0f9d`](https://github.com/thirdweb-dev/js/commit/0efd0f9d2626d1cb8d7a49f26b9beaa4c27bca15) Thanks [@MananTank](https://github.com/MananTank)! - add `useSetWalletModalConfig` hook to customize the ConnectWallet Modal to programmatically open the modal without using the `ConnectWallet` component along with `useSetIsWalletModalOpen`
```tsx
import {
useSetWalletModalConfig,
useSetIsWalletModalOpen,
} from "@thirdweb-dev/react";
function Example() {
const setWalletModalConfig = useSetWalletModalConfig();
const setIsWalletModalOpen = useSetIsWalletModalOpen();
return (
<button
onClick={() => {
// customize the modal
setWalletModalConfig({
modalSize: "wide",
theme: "light",
});
// open the modal
setIsWalletModalOpen(true);
}}
>
open connect modal
</button>
);
}
```
- [#2177](https://github.com/thirdweb-dev/js/pull/2177) [`e11e645c`](https://github.com/thirdweb-dev/js/commit/e11e645c7407a37545e78bbf8976ecc31e40bee7) Thanks [@dependabot](https://github.com/apps/dependabot)! - Bump fuse.js from 6.6.2 to 7.0.0
- Updated dependencies [[`9a23de2b`](https://github.com/thirdweb-dev/js/commit/9a23de2be0c47a7a3702d65041ff654159d8e264), [`e21f7bb1`](https://github.com/thirdweb-dev/js/commit/e21f7bb171334fa3003c954060e60c1ce8c1228f)]:
- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
## 4.3.1
### Patch Changes
+2 -4
View File
@@ -1,6 +1,6 @@
{
"name": "@thirdweb-dev/react",
"version": "4.3.1",
"version": "4.3.2",
"repository": "https://github.com/thirdweb-dev/js/tree/main/packages/react",
"author": "thirdweb eng <[email protected]>",
"license": "Apache-2.0",
@@ -84,7 +84,6 @@
"@thirdweb-dev/auth": "workspace:*",
"@thirdweb-dev/sdk": "workspace:*",
"@thirdweb-dev/tsconfig": "workspace:*",
"@types/color": "^3.0.3",
"@types/qrcode": "^1.5.2",
"@types/react": "^18.2.17",
"@types/react-dom": "^18.2.7",
@@ -121,7 +120,6 @@
"@radix-ui/react-popover": "^1.0.6",
"@radix-ui/react-tabs": "^1.0.4",
"@radix-ui/react-tooltip": "^1.0.6",
"@react-icons/all-files": "^4.1.0",
"@tanstack/react-query": "^4.33.0",
"@thirdweb-dev/chains": "workspace:*",
"@thirdweb-dev/payments": "workspace:*",
@@ -131,7 +129,7 @@
"buffer": "^6.0.3",
"copy-to-clipboard": "^3.3.2",
"detect-browser": "^5.3.0",
"fuse.js": "^6.6.2",
"fuse.js": "^7.0.0",
"qrcode": "^1.5.3",
"tiny-invariant": "^1.2.0"
},
@@ -186,6 +186,11 @@ export interface Web3ButtonProps<TActionFn extends ActionFn> {
*/
welcomeScreen?: WelcomeScreen;
};
/**
* Set a custom label for the "Switch Network" button
*/
switchNetworkBtnTitle?: string;
}
/**
@@ -255,6 +260,8 @@ export const Web3Button = <TAction extends ActionFn>(
const theme = props.theme || contextTheme || "dark";
const locale = useTWLocale();
const switchNetworkLabel =
props.switchNetworkBtnTitle || locale.connectWallet.switchNetwork;
const [confirmStatus, setConfirmStatus] = useState<"idle" | "waiting">(
"idle",
@@ -337,7 +344,7 @@ export const Web3Button = <TAction extends ActionFn>(
{confirmStatus === "waiting" ? (
<Spinner size="sm" color={"primaryButtonText"} />
) : (
locale.connectWallet.switchNetwork
switchNetworkLabel
)}
</Button>
);
+2
View File
@@ -1,6 +1,8 @@
export {
useIsWalletModalOpen,
useSetIsWalletModalOpen,
type ModalConfigOptions,
useSetWalletModalConfig,
} from "./providers/wallet-ui-states-provider";
export { useSafe } from "./connectors/gnosis";
@@ -139,3 +139,288 @@ export const useSetIsWalletModalOpen = () => {
}
return context;
};
export type ModalConfigOptions = {
/**
* Title of the Modal
*/
title?: string;
/**
* Set the theme for the Modal
*
* By default it is set to "dark" if `theme` is not set on [`ThirdwebProvider`](https://portal.thirdweb.com/react/v4/ThirdwebProvider)
* If a `theme` is set on [`ThirdwebProvider`](https://portal.thirdweb.com/react/v4/ThirdwebProvider) then that theme will be used by default
*
* theme can be set to either `"dark"` or `"light"` or a custom theme object. You can also import `lightTheme` or `darkTheme` functions from `@thirdweb-dev/react` to use the default themes as base and overrides parts of it.
*
* ```ts
* import { lightTheme } from "@thirdweb-dev/react";
* const customTheme = lightTheme({
* colors: {
* modalBg: 'red'
* }
* })
* ```
*/
theme?: "light" | "dark" | Theme;
/**
* Set the size of the modal - `compact` or `wide` on desktop
*
* Modal size is always `compact` on mobile
*
* By default it is `"wide"` for desktop.
*/
modalSize: "wide" | "compact";
/**
* URL of the "terms of service" page
*
* If provided, Modal will show a Terms of Service message at the bottom with below link
*/
termsOfServiceUrl?: string;
/**
* URL of the "privacy policy" page
*
* If provided, Modal will show a Privacy Policy message at the bottom with below link
*/
privacyPolicyUrl?: string;
/**
* Customize the welcome screen. This is only applicable when `modalSize` is set to "wide".
* On "wide" Modal size, a welcome screen is shown on the right side of the modal.
*
* This screen can be customized in two ways
*
* #### 1. Customize Metadata and Image
*
* ```tsx
* const welcomeScreen = {
* title: "your title",
* subtitle: "your subtitle",
* img: {
* src: "https://your-image-url.png",
* width: 300,
* height: 50,
* },
* }
* ```
*
* #### 2. Render Custom Component
*
* ```tsx
* const welcomeScreen = () => {
* return <YourCustomComponent />
* }
* ```
*/
welcomeScreen?: WelcomeScreen;
/**
* Replace the thirdweb icon next to modalTitle and set your own iconUrl
*/
titleIconUrl?: string;
/**
* The object contains the following properties to customize the authentication
* - `loginOptional` - specify whether signing in is optional or not. By default it is `false` ( Sign in is required ) if `authConfig` is set on [`ThirdwebProvider`](https://portal.thirdweb.com/react/v4/ThirdwebProvider)
* - `onLogin` - Callback to be called after user signs in with their wallet
* - `onLogout` - Callback to be called after user signs out
*/
auth?: {
loginOptional?: boolean;
onLogin?: (token: string) => void;
onLogout?: () => void;
};
/**
* Callback to be called on successful connection of wallet
*
* Note that this does not include the sign in, If you want to call a callback after user connects AND signs in with their wallet, use `auth.onLogin` instead
*/
onConnect?: () => void;
};
/**
* Set Modal config for the [`ConnectWallet`](https://portal.thirdweb.com/react/v4/components/ConnectWallet) Modal.
* This is useful if you want to open the Modal using the `useSetIsWalletModalOpen` hook and want to configure the Modal before opening it.
*
* @example
* ```tsx
* function Example() {
* const setModalConfig = useSetWalletModalConfig();
* const setIsWalletModalOpen = useSetIsWalletModalOpen();
*
* function openModal() {
* setIsWalletModalOpen(true);
* setModalConfig({
* modalSize: "compact",
* theme: "light"
* })
* }
*
* return <button onClick={openModal}> Open Modal </button>
* }
* ```
*
* @returns Function to set the Modal config
*
* The function takes an object with the following properties
*
* ### title
* Title of the Modal
*
* ### theme
* theme to use in Modal
*
* By default it is set to "dark" if `theme` is not set on [`ThirdwebProvider`](https://portal.thirdweb.com/react/v4/ThirdwebProvider)
* If a `theme` is set on [`ThirdwebProvider`](https://portal.thirdweb.com/react/v4/ThirdwebProvider) then that theme will be used by default
*
* theme can be set to either `"dark"` or `"light"` or a custom theme object. You can also import `lightTheme` or `darkTheme` functions from `@thirdweb-dev/react` to use the default themes as base and overrides parts of it.
*
* ```ts
* import { lightTheme } from "@thirdweb-dev/react";
* const customTheme = lightTheme({
* colors: {
* modalBg: 'red'
* }
* })
* ```
*
* ### modalSize
* Set the size of the modal - `compact` or `wide` on desktop
*
* Modal size is always `compact` on mobile
*
* By default it is `"wide"` for desktop.
*
* ### termsOfServiceUrl
* URL of the "terms of service" page
*
* If provided, Modal will show a Terms of Service message at the bottom with below link
*
* ### privacyPolicyUrl
* URL of the "privacy policy" page
*
* If provided, Modal will show a Privacy Policy message at the bottom with below link
*
* ### welcomeScreen
* Customize the welcome screen. This is only applicable when `modalSize` is set to "wide".
* On "wide" Modal size, a welcome screen is shown on the right side of the modal.
*
* This screen can be customized in two ways
*
* #### 1. Customize Metadata and Image
*
* ```tsx
* function Example() {
* const setModalConfig = useSetWalletModalConfig();
* const setIsWalletModalOpen = useSetIsWalletModalOpen();
*
* function openModal() {
* setIsWalletModalOpen(true);
* setModalConfig({
* welcomeScreen: {
* title: "your title",
* subtitle: "your subtitle",
* img: {
* src: "https://your-image-url.png",
* width: 300,
* height: 50,
* }
* }
* })
* }
*
* return <button onClick={openModal}> Open Modal </button>
* }
* ```
*
* #### 2. Render Custom Component
*
* ```tsx
* function Example() {
* const setModalConfig = useSetWalletModalConfig();
* const setIsWalletModalOpen = useSetIsWalletModalOpen();
*
* function openModal() {
* setIsWalletModalOpen(true);
* setModalConfig({
* welcomeScreen() {
* return <YourCustomComponent />
* }
* })
* }
*
* return <button onClick={openModal}> Open Modal </button>
* }
* ```
*
* ### titleIconUrl
* Replace the thirdweb icon next to modalTitle and set your own iconUrl
*
* ### auth
* The object contains the following properties to customize the authentication
* - `loginOptional` - specify whether signing in is optional or not. By default it is `false` ( Sign in is required ) if `authConfig` is set on [`ThirdwebProvider`](https://portal.thirdweb.com/react/v4/ThirdwebProvider)
* - `onLogin` - Callback to be called after user signs in with their wallet
* - `onLogout` - Callback to be called after user signs out
*
* ### onConnect
* Callback to be called on successful connection of wallet
*
*
* ```tsx
* function Example() {
* const setModalConfig = useSetWalletModalConfig();
* const setIsWalletModalOpen = useSetIsWalletModalOpen();
*
* function openModal() {
* setIsWalletModalOpen(true);
* setModalConfig({
* onConnect() {
* console.log("wallet connected")
* }
* })
* }
*
* return <button onClick={openModal}> Open Modal </button>
* }
* ```
*
* Note that this does not include the sign in, If you want to call a callback after user connects AND signs in with their wallet, use `auth.onLogin` prop instead
*
* ```tsx
* function Example() {
* const setModalConfig = useSetWalletModalConfig();
* const setIsWalletModalOpen = useSetIsWalletModalOpen();
*
* function openModal() {
* setIsWalletModalOpen(true);
* setModalConfig({
* auth: {
* onLogin() {
* console.log("wallet connected and signed in")
* }
* }
* })
* }
*
* return <button onClick={openModal}> Open Modal </button>
* }
* ```
*/
export const useSetWalletModalConfig = () => {
const context = useContext(SetModalConfigCtx);
const _isMobile = isMobile();
const locale = useTWLocale();
if (context === undefined) {
throw new Error(
"useSetWalletModalConfig must be used within a ThirdwebProvider",
);
}
return (value: ModalConfigOptions) => {
const { title, theme, modalSize, ...rest } = value;
return context({
title: title || locale.connectWallet.defaultModalTitle,
data: undefined,
theme: theme || "dark",
modalSize: (_isMobile ? "compact" : modalSize) || "wide",
...rest,
});
};
};
@@ -79,6 +79,11 @@ export type ConnectWalletProps = {
*/
btnTitle?: string;
/**
* Set a custom label for the "Switch Network" button
*/
switchNetworkBtnTitle?: string;
/**
* Change the title of ConnectWallet Modal
*
@@ -196,6 +201,8 @@ export type ConnectWalletProps = {
modalSize?: "compact" | "wide";
/**
* URL of the "terms of service" page
*
* If provided, Modal will show a Terms of Service message at the bottom with below link
*
* @example
@@ -206,6 +213,8 @@ export type ConnectWalletProps = {
termsOfServiceUrl?: string;
/**
* URL of the "privacy policy" page
*
* If provided, Modal will show a Privacy Policy message at the bottom with below link
*
* @example
@@ -722,6 +731,7 @@ export function ConnectWallet(props: ConnectWalletProps) {
<SwitchNetworkButton
style={props.style}
className={props.className}
switchNetworkBtnTitle={props.switchNetworkBtnTitle}
/>
);
}
@@ -784,12 +794,16 @@ export function ConnectWallet(props: ConnectWalletProps) {
function SwitchNetworkButton(props: {
style?: React.CSSProperties;
className?: string;
switchNetworkBtnTitle?: string;
}) {
const { activeChain } = useWalletContext();
const switchChain = useSwitchChain();
const [switching, setSwitching] = useState(false);
const locale = useTWLocale();
const switchNetworkBtnTitle =
props.switchNetworkBtnTitle ?? locale.connectWallet.switchNetwork;
return (
<AnimatedButton
className={`${TW_CONNECT_WALLET}--switch-network ${
@@ -818,7 +832,7 @@ function SwitchNetworkButton(props: {
{switching ? (
<Spinner size="sm" color="primaryButtonText" />
) : (
locale.connectWallet.switchNetwork
switchNetworkBtnTitle
)}
</AnimatedButton>
);
File diff suppressed because it is too large Load Diff
+9
View File
@@ -1,5 +1,14 @@
# @thirdweb-dev/sdk
## 4.0.27
### Patch Changes
- [#2183](https://github.com/thirdweb-dev/js/pull/2183) [`9a23de2b`](https://github.com/thirdweb-dev/js/commit/9a23de2be0c47a7a3702d65041ff654159d8e264) Thanks [@kumaryash90](https://github.com/kumaryash90)! - ZkSync Sepolia addresses
- Updated dependencies [[`e21f7bb1`](https://github.com/thirdweb-dev/js/commit/e21f7bb171334fa3003c954060e60c1ce8c1228f)]:
- @thirdweb-dev/chains@0.1.64
## 4.0.26
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@thirdweb-dev/sdk",
"version": "4.0.26",
"version": "4.0.27",
"description": "The main thirdweb SDK.",
"repository": "https://github.com/thirdweb-dev/js/tree/main/packages/sdk",
"license": "Apache-2.0",
+4 -3
View File
@@ -11,9 +11,7 @@ export * from "./contracts";
export { StaticJsonRpcBatchProvider } from "./lib/static-batch-rpc";
// export integration things
export type {
PaperCreateCheckoutLinkShardParams
} from "./integrations/thirdweb-checkout";
export type { PaperCreateCheckoutLinkShardParams } from "./integrations/thirdweb-checkout";
// explicitly export the *TYPES* of prebuilt contracts
export type { Edition } from "./contracts/prebuilt-implementations/edition";
@@ -45,8 +43,11 @@ export * from "./core/classes/delayed-reveal";
export * from "./core/classes/drop-claim-conditions";
export * from "./core/classes/drop-erc1155-claim-conditions";
export * from "./core/classes/erc-20";
export * from "./core/classes/erc-20-signature-mintable";
export * from "./core/classes/erc-721";
export * from "./core/classes/erc-721-with-quantity-signature-mintable";
export * from "./core/classes/erc-1155";
export * from "./core/classes/erc-1155-signature-mintable";
export * from "./core/classes/account";
export * from "./core/classes/account-factory";
export * from "./core/classes/gas-cost-estimator";
@@ -26,7 +26,7 @@ export const CONTRACT_ADDRESSES: Record<
};
export const IMPLEMENTATIONS: Record<number, Record<string, string>> = {
// ZKSync Era Testnet
// ZKSync Era Goerli Testnet (Deprecated)
[280]: {
DropERC721: "0xA8E28D98203848401A4f924358e6c337153D0f04",
DropERC1155: "0xf3C7d3F0AA374a2D32489929e24D3e9313Aec8bb",
@@ -42,6 +42,22 @@ export const IMPLEMENTATIONS: Record<number, Record<string, string>> = {
AirdropERC1155: "0x8b0DBCf5b7D01eBB0F24525CE8AB72F16CE4F8C8",
},
// ZKSync Era Sepolia Testnet
[300]: {
DropERC721: "0x0006BC0D8Bf9D91290Df89341F936c612D6978eb",
DropERC1155: "0xe0AD48286BF27AE0C5953d4417fB37f3FECABB4a",
DropERC20: "0xA77041a7A34A67D7285c8d3550110e441009436e",
SignatureDrop: "",
Marketplace: "",
MarketplaceV3: "0x12A305cc7168fa3b7B172fE53c57b9a22716F667",
TokenERC721: "0x9742f5ac11958cFAd151eBF0Fc31302fA409036E",
TokenERC1155: "0x4027561E163a420c4e5Db46E07EBd581CAa8Bb62",
TokenERC20: "0xf3C7d3F0AA374a2D32489929e24D3e9313Aec8bb",
AirdropERC20: "0x4b14569c7B79DBe686Ac3Ba5996131E7EDaB7a93",
AirdropERC721: "0xDD3E3BBa3bb4edcbbEa9d52Cd1E49289Ef3DfDE3",
AirdropERC1155: "0x8A4E9034BC6ac77E1408AC878e0603A32B5d4b73",
},
// ZKSync Era Mainnet
[324]: {
DropERC721: "0x9742f5ac11958cFAd151eBF0Fc31302fA409036E",
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+10
View File
@@ -1,5 +1,15 @@
# @thirdweb-dev/unity-js-bridge
## 0.3.7
### Patch Changes
- Updated dependencies [[`9a23de2b`](https://github.com/thirdweb-dev/js/commit/9a23de2be0c47a7a3702d65041ff654159d8e264), [`e21f7bb1`](https://github.com/thirdweb-dev/js/commit/e21f7bb171334fa3003c954060e60c1ce8c1228f)]:
- @thirdweb-dev/sdk@4.0.27
- @thirdweb-dev/chains@0.1.64
- @thirdweb-dev/wallets@2.4.2
- @thirdweb-dev/auth@4.1.24
## 0.3.6
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@thirdweb-dev/unity-js-bridge",
"version": "0.3.6",
"version": "0.3.7",
"main": "dist/thirdweb-unity-bridge.js",
"repository": "https://github.com/thirdweb-dev/js/tree/main/packages/unity-js-bridge",
"license": "Apache-2.0",
+8
View File
@@ -1,5 +1,13 @@
# @thirdweb-dev/wallets
## 2.4.2
### Patch Changes
- Updated dependencies [[`9a23de2b`](https://github.com/thirdweb-dev/js/commit/9a23de2be0c47a7a3702d65041ff654159d8e264), [`e21f7bb1`](https://github.com/thirdweb-dev/js/commit/e21f7bb171334fa3003c954060e60c1ce8c1228f)]:
- @thirdweb-dev/sdk@4.0.27
- @thirdweb-dev/chains@0.1.64
## 2.4.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@thirdweb-dev/wallets",
"version": "2.4.1",
"version": "2.4.2",
"main": "dist/thirdweb-dev-wallets.cjs.js",
"module": "dist/thirdweb-dev-wallets.esm.js",
"browser": {
File diff suppressed because it is too large Load Diff
+4 -34
View File
@@ -611,9 +611,6 @@ importers:
'@radix-ui/react-tooltip':
specifier: ^1.0.6
version: 1.0.6(@types/[email protected])(@types/[email protected])([email protected])([email protected])
'@react-icons/all-files':
specifier: ^4.1.0
version: 4.1.0([email protected])
'@tanstack/react-query':
specifier: ^4.33.0
version: 4.33.0([email protected])([email protected])
@@ -642,8 +639,8 @@ importers:
specifier: ^5.3.0
version: 5.3.0
fuse.js:
specifier: ^6.6.2
version: 6.6.2
specifier: ^7.0.0
version: 7.0.0
qrcode:
specifier: ^1.5.3
version: 1.5.3
@@ -684,9 +681,6 @@ importers:
'@thirdweb-dev/tsconfig':
specifier: workspace:*
version: link:../tw-tsconfig
'@types/color':
specifier: ^3.0.3
version: 3.0.3
'@types/qrcode':
specifier: ^1.5.2
version: 1.5.2
@@ -11201,14 +11195,6 @@ packages:
'@babel/runtime': 7.23.8
dev: false
/@react-icons/[email protected]([email protected]):
resolution: {integrity: sha512-hxBI2UOuVaI3O/BhQfhtb4kcGn9ft12RWAFVMUeNjqqhLsHvFtzIkFaptBJpFDANTKoDfdVoHTKZDlwKCACbMQ==}
peerDependencies:
react: '*'
dependencies:
react: 18.2.0
dev: false
/@react-native-async-storage/[email protected]([email protected]):
resolution: {integrity: sha512-dM8AfdoeIxlh+zqgr0o5+vCTPQ0Ru1mrPzONZMsr7ufp5h+6WgNxQNza7t0r5qQ6b04AJqTlBNixTWZxqP649Q==}
peerDependencies:
@@ -13030,22 +13016,6 @@ packages:
resolution: {integrity: sha512-mEo1sAde+UCE6b2hxn332f1g1E8WfYRu6p5SvTKr2ZKC1f7gFJXk4h5PyGP9Dt6gCaG8y8XhwnXWC6Iy2cmBng==}
dev: true
/@types/[email protected]:
resolution: {integrity: sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==}
dependencies:
'@types/color-name': 1.1.1
dev: true
/@types/[email protected]:
resolution: {integrity: sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==}
dev: true
/@types/[email protected]:
resolution: {integrity: sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==}
dependencies:
'@types/color-convert': 2.0.0
dev: true
/@types/[email protected]:
resolution: {integrity: sha512-GUvNiia85zTDDIx0iPrtF3pI8dwrQkfuokEqxqPDE55qxH0U5SZz4awVZjiJLWN2ZZRkXCUqgsMUbygXY+kytA==}
dev: true
@@ -20486,8 +20456,8 @@ packages:
/[email protected]:
resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
/fuse.js@6.6.2:
resolution: {integrity: sha512-cJaJkxCCxC8qIIcPBF9yGxY0W/tVZS3uEISDxhYIdtk8OL93pe+6Zj7LjCqVV4dzbqcriOZ+kQ/NE4RXZHsIGA==}
/fuse.js@7.0.0:
resolution: {integrity: sha512-14F4hBIxqKvD4Zz/XjDc3y94mNZN6pRv3U13Udo0lNLCWRBUsrMv2xwcF/y/Z5sV6+FQW+/ow68cHpm4sunt8Q==}
engines: {node: '>=10'}
dev: false
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
-4
View File
@@ -9,10 +9,6 @@
"outputs": ["typedoc/**"],
"dependsOn": ["^build"]
},
"generate-docs": {
"outputs": ["docs/**"],
"dependsOn": ["^build"]
},
"@thirdweb-dev/chains#build": {
"outputs": ["dist/**", "chains/**"],
"dependsOn": ["^build"],