Compare commits

..
Author SHA1 Message Date
github-actions[bot]GitHubgithub-actions[bot] <github-actions[bot]@users.noreply.github.com>
50346bd9d0 Version Packages (#622)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-03-07 18:03:15 -08:00
Jonas DanielsandGitHub f9cf2bc6ba [chains] - fix windows build? (#686) 2023-03-07 20:11:52 +00:00
Jonas DanielsandGitHub 4355518afe [chains] - update chains (#685) 2023-03-07 18:57:43 +00:00
Jonas DanielsandGitHub 99521129ed quicker timeouts (#682) 2023-03-06 17:49:44 -08:00
c9067681c2 Add CLI command to deploy dynamic smart contracts (#678)
Co-authored-by: Jonas Daniels <[email protected]>
2023-03-07 00:22:30 +00:00
2335f000c9 [SDK] - NFT supply is now string instead of number (#679)
Co-authored-by: Joaquim Verges <[email protected]>
2023-03-05 04:46:00 +00:00
Adam MajmudarandGitHub a7e908b5fe [SDK] Add transaction pattern to registry (#676) 2023-03-03 22:18:35 +00:00
Adam MajmudarandGitHub 2a8cc289ac [SDK] Add transaction builder to publisher and registry (#675) 2023-03-03 21:44:45 +00:00
Adam MajmudarandGitHub d8dec9fc19 [SDK] Fix configuring SDK with custom chains (#674) 2023-03-03 08:23:55 +00:00
Adam MajmudarandGitHub 0c88304464 [SDK] Don't use functions in sdk.getContract (#673) 2023-03-03 07:25:22 +00:00
Jonas DanielsandGitHub 2676fc01f4 fix react core (#672) 2023-03-03 07:14:50 +00:00
Furqan RydhanandGitHub 61ef69649f app URI fixes (#671) 2023-03-03 07:07:32 +00:00
Furqan Rydhan 460576fea9 Merge branch 'main' of github.com:thirdweb-dev/js 2023-03-03 06:47:37 +00:00
Furqan Rydhan 87a8ebdb7a fix things 2023-03-03 06:47:01 +00:00
Furqan Rydhan e23ee0526e fix type for prebuilt contracts and app uri 2023-03-03 06:13:09 +00:00
be04ff2775 CLI improvements (#666)
Co-authored-by: Adam Majmudar <[email protected]>
Co-authored-by: adam-maj <[email protected]>
Co-authored-by: Jonas Daniels <[email protected]>
2023-03-03 06:11:48 +00:00
3740a0bf5d app uri (#662)
Co-authored-by: Nacho Iacovino <[email protected]>
Co-authored-by: Nacho Iacovino <[email protected]>
2023-03-03 05:40:00 +00:00
Jonas DanielsandGitHub 6ae39277a1 [react-core] fix signer more (#670) 2023-03-03 05:39:18 +00:00
Jonas DanielsandGitHub 8f46a2eef5 update signer correctly (#668) 2023-03-02 20:04:56 +00:00
Furqan Rydhan 8ac9b03f4a fix code tab for contract metadata 2023-03-02 06:24:17 +00:00
6ef52dc916 Fix spelling (#665)
Co-authored-by: Jonas Daniels <[email protected]>
2023-03-02 03:04:05 +00:00
Adam MajmudarandGitHub b6b0855b81 [SDK] Allow setting extra overrides (#667) 2023-03-02 02:20:45 +00:00
Jonas Daniels ac01516ce6 fix it 2023-03-01 17:36:09 -08:00
Jonas Daniels 1aef3bd270 changesets action 2023-03-01 17:29:45 -08:00
Jonas Daniels e9b5031565 more things 2023-03-01 17:23:40 -08:00
Adam MajmudarandGitHub e081075b2c [SDK] Expose get and set functions on transaction and tx.sign() (#663) 2023-03-02 00:28:40 +00:00
Jonas Daniels 3212867de2 just always do it 2023-03-01 16:18:02 -08:00
Jonas Daniels 91e7178295 hasChangesets true value not string 2023-03-01 16:08:28 -08:00
Jonas DanielsandGitHub 3985560942 changeset and workflow changes (#664) 2023-03-01 23:32:43 +00:00
87a101ad56 Fix Wrong Currency symbol in non-default chains (#660)
Co-authored-by: Jonas Daniels <[email protected]>
2023-03-01 21:37:51 +00:00
nkrishangandGitHub 842ed519a3 CLI command to create extensions for dynamic contracts (#641) 2023-03-01 19:04:30 +00:00
Adam MajmudarandGitHub 2f4cd92848 [SDK] Add prepare method to all contracts (#661) 2023-03-01 18:49:55 +00:00
iketwandGitHub 303bf63c1a [ReactCoreSDK] pass default key to the sdkprovider (#658) 2023-03-01 17:44:56 +00:00
Adam MajmudarandGitHub 8845bf960e [SDK] await getGasOverrides (#659) 2023-03-01 08:12:48 +00:00
Jake LooandGitHub b80024c6cc ERC20Permit detect (#655) 2023-03-01 03:39:12 +00:00
Jonas DanielsandGitHub 696c384a34 Jd/fix build app uri (#654) 2023-03-01 01:53:26 +00:00
Jonas DanielsandGitHub bd6be0bae7 [SDK] - add extensions getter (#653) 2023-03-01 01:09:57 +00:00
Nacho IacovinoandGitHub 8d5b418e78 [React] Fix appURI hook invariant (#650) 2023-03-01 00:51:59 +00:00
Adam MajmudarandGitHub 1bdb44d36b [React] Fix onError in Web3Button to work with errors on promise (#651) 2023-03-01 00:51:35 +00:00
Nacho IacovinoandGitHub b83ea5251b [SDK] Detect appURI (#631) 2023-03-01 00:50:03 +00:00
Adam MajmudarandGitHub 537785fed0 [SDK] Add getContract and getContractFromAbi functions (#628) 2023-03-01 00:40:13 +00:00
Adam MajmudarandGitHub fb346ffd45 [Storage] Send progress event if files have already been uploaded (#648) 2023-02-28 23:54:29 +00:00
Adam MajmudarandGitHub 63f552d736 Allow passing gatewayUrls as array and directly (#644) 2023-02-28 23:27:14 +00:00
Adam MajmudarandGitHub cc7ce8b1e8 Allow CID prediction for file type on client (#646) 2023-02-28 23:19:30 +00:00
Jonas DanielsandGitHub 85250cf711 [multi] - various fixes (#643) 2023-02-28 22:50:22 +00:00
Adam MajmudarandGitHub 29c1cf7eff Make checking for CID non-blocking on error (#645) 2023-02-28 22:16:58 +00:00
Adam MajmudarandGitHub 0666f37c13 [SDK] Cleanup signer and provider logic & add exhaustive test cases (#623) 2023-02-28 09:14:14 +00:00
Adam MajmudarandGitHub 8a8a37f6d3 [Storage] Pre-compute IPFS hashes before uploading (#637) 2023-02-28 08:08:15 +00:00
Furqan RydhanandGitHub dc08aa731f contract metadata compatibility (#642) 2023-02-28 03:59:31 +00:00
Adam MajmudarandGitHub 541dfeeaba Fix top-level transaction functions (#640) 2023-02-28 02:27:13 +00:00
1e1a39123b [SDK] Add new transaction pattern (#566)
Co-authored-by: Jonas Daniels <[email protected]>
2023-02-27 23:22:21 +00:00
Jonas DanielsandGitHub 5c7ae694c4 add test for chains (#639) 2023-02-27 22:30:36 +00:00
Jonas DanielsandGitHub e33bd2a856 add getChainByChainId function (#638) 2023-02-27 19:18:04 +00:00
Nacho IacovinoandGitHub b1ee7491c8 [React] Export appURI hooks (#636) 2023-02-27 01:01:05 +00:00
Jonas DanielsandGitHub 7832041c0f add chains (#635) 2023-02-27 00:47:10 +00:00
Joaquim VergesandGitHub 88c78f3b32 [SDK] export marketplace and appUri classes (#634) 2023-02-26 23:16:43 +00:00
Nacho IacovinoandGitHub 78536ba65f [Multi] More docs small changes (#633) 2023-02-26 07:26:22 +00:00
Nacho IacovinoandGitHub b0e8406d1e [Multi] Document marketplace v3 with examples (#632) 2023-02-26 04:00:43 +00:00
Nacho IacovinoandGitHub 9c5dbf1fe6 [Multi] AppURI now works with ContractMetadata feature (#630) 2023-02-25 23:13:09 +00:00
Nacho IacovinoandGitHub ba90c675db [Multi] More docs updates (#629) 2023-02-25 22:51:46 +00:00
Joaquim VergesandGitHub fd9ba94db2 Fix feature snippets SDK script (#627) 2023-02-25 17:10:32 +00:00
Nacho IacovinoandGitHub 91f5a2fd5c Fix documentation for react docs (#626) 2023-02-25 16:30:23 +00:00
Joaquim VergesandGitHub e50911bc06 [Wallet] Email wallet improvements (#612) 2023-02-25 04:02:59 +00:00
Nacho IacovinoandGitHub 23cd88ec3a [React] Add AppURI get/set hooks (#625) 2023-02-25 01:52:20 +00:00
Joaquim VergesandGitHub 1adaf41e41 [SDK] Extension code comments (#624) 2023-02-25 01:16:02 +00:00
YashandGitHub 478780f634 [SDK] Feature for extension router (#621) 2023-02-24 03:59:16 +00:00
github-actions[bot]GitHubgithub-actions[bot] <github-actions[bot]@users.noreply.github.com>
521c85c1ba Version Packages (#618)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-23 09:29:36 -08:00
Jonas DanielsandGitHub b7a5b45441 fix base goerli slug (#619) 2023-02-23 17:17:37 +00:00
Jonas DanielsandGitHub d7deaa48f2 [chains] - add support for base goerli (#617) 2023-02-23 16:58:25 +00:00
github-actions[bot]GitHubgithub-actions[bot] <github-actions[bot]@users.noreply.github.com>
98fc320a86 Version Packages (#614)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-22 21:48:03 -08:00
Joaquim VergesandGitHub 5712650074 [SDK] Handle custom currencies for any chain (#616) 2023-02-23 05:33:00 +00:00
Jonas DanielsandGitHub 1b0bc87efb [sdk] add code cov (#615) 2023-02-23 01:26:53 +00:00
Jonas DanielsandGitHub a3472a1331 [chains] - DX improvements & chain updates (#613) 2023-02-23 00:01:59 +00:00
github-actions[bot]GitHubgithub-actions[bot] <github-actions[bot]@users.noreply.github.com>
7c3f050883 Version Packages (#609)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-22 13:59:28 -08:00
8b68f20678 refactor: Release to Publish (#567)
Co-authored-by: Jonas Daniels <[email protected]>
2023-02-22 21:36:03 +00:00
Jonas DanielsandGitHub 3d644fb8cb [react] - add mediarenderer prop (#608) 2023-02-21 10:30:21 +00:00
github-actions[bot]GitHubgithub-actions[bot] <github-actions[bot]@users.noreply.github.com>
690ff925c3 Version Packages (#603)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-20 20:13:14 -08:00
Jonas DanielsandGitHub 4fe6797427 clean up remaining workflows (#605) 2023-02-19 02:12:39 +00:00
Jonas DanielsandGitHub f3408d05d8 [sdk] - fix possible crash in StaticJsonRpcBatchProvider (#604) 2023-02-19 01:47:29 +00:00
Jonas Daniels 845e818c66 CI all in one? 2023-02-18 14:55:51 -08:00
Jonas Daniels 5178256e84 try out new ci action 2023-02-18 14:40:23 -08:00
Jonas DanielsandGitHub 66cf1fb5c2 [various] - upgrade dependencies (#601) 2023-02-18 22:10:45 +00:00
Jonas Daniels df792f0b81 make merge queue work 2023-02-18 14:10:16 -08:00
Jonas Daniels ae0f967356 make platform own everything by default 2023-02-18 13:55:33 -08:00
Jonas Daniels 076718112f devrel should not own changeset markdown files 2023-02-18 13:54:00 -08:00
Jonas Daniels 7c9f86cc44 improve codeowners 2023-02-18 13:51:56 -08:00
Jonas DanielsandGitHub 9c90371426 Jd/add codeowners (#602) 2023-02-18 13:49:09 -08:00
github-actions[bot]GitHubgithub-actions[bot] <github-actions[bot]@users.noreply.github.com>
4516487a9a Version Packages (#600)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-17 17:38:12 -08:00
Adam MajmudarandGitHub 300fe4a933 [Storage] Pass through pinata metadata (#597) 2023-02-18 01:32:09 +00:00
Joaquim VergesandGitHub f580b8ac06 [React] fix react provider readonly chain mismatch (#599) 2023-02-18 01:24:16 +00:00
Adam MajmudarandGitHub f0de81d4b1 [Auth] Expose verifyLogin function (#588) 2023-02-17 17:15:08 -08:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
f3a863a3b1 Bump undici from 5.14.0 to 5.19.1 (#594)
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-16 18:11:22 -08:00
github-actions[bot]GitHubgithub-actions[bot] <github-actions[bot]@users.noreply.github.com>
128bca9e07 Version Packages (#595)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-16 17:37:38 -08:00
iketwGitHubiketwciaranightingaleJonas Danielsgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>github-actions[bot] <github-actions[bot]@users.noreply.github.com>Nacho Iacovino
18ba6b381e [React Native SDK] init package (#522)
Co-authored-by: iketw <[email protected]>
Co-authored-by: ciaranightingale <[email protected]>
Co-authored-by: Jonas Daniels <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Nacho Iacovino <[email protected]>
2023-02-16 20:04:07 -05:00
Jonas Daniels 18c16101dd release-pr may use cache 2023-02-16 08:49:50 -08:00
Jonas DanielsandGitHub b6b94ca348 smaller workers (#593) 2023-02-16 08:45:38 -08:00
383 changed files with 19158 additions and 9398 deletions
+1 -1
View File
@@ -16,6 +16,6 @@
},
"snapshot": {
"useCalculatedVersion": true,
"prereleaseTemplate": "{tag}-{commit}"
"prereleaseTemplate": "{tag}-{datetime}-{commit}"
}
}
+29
View File
@@ -0,0 +1,29 @@
# Order is important; the last matching pattern takes the most precedence.
# Platform team owns everything by default
* @thirdweb-dev/platform
# Devrel owns all markdown files (README etc.)
*.md @thirdweb-dev/devrel
.changeset/
# Shared ownership of the react and react-core packages
packages/react/ @thirdweb-dev/product @thirdweb-dev/platform
packages/react-core/ @thirdweb-dev/product @thirdweb-dev/platform
# Shared ownership of the CLI
packages/cli/ @thirdweb-dev/product @thirdweb-dev/platform
# Chains is owned specifically by jonas for now
packages/chains/ @jnsdls
# .github folder + .changeset + turbo config is owned by joaquim and jonas for now
.github/ @jnsdls @joaquim-verges
.changeset/config.json @jnsdls @joaquim-verges
turbo.json @joaquim-verges @jnsdls
+1 -1
View File
@@ -13,6 +13,6 @@ runs:
- name: Install dependencies
shell: bash
run: yarn install --frozen-lockfile
run: yarn
env:
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: "1"
+1 -1
View File
@@ -23,7 +23,7 @@ We use [Turborepo](https://turborepo.org/docs/getting-started) to manage the mon
You can see a quick outline of each of the projects within this repo below, each living within the [/packages](/packages) directory:
| Package | Description | Latest Version |
| ------------------------------ | -------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|--------------------------------|----------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [/sdk](./packages/sdk) | Best in class web3 SDK for Browser, Node and Mobile apps | <a href="https://www.npmjs.com/package/@thirdweb-dev/sdk"><img src="https://img.shields.io/npm/v/@thirdweb-dev/sdk?color=red&label=npm&logo=npm" alt="npm version"/></a> |
| [/react](./packages/react) | Ultimate collection of React hooks for your web3 apps | <a href="https://www.npmjs.com/package/@thirdweb-dev/react"><img src="https://img.shields.io/npm/v/@thirdweb-dev/react?color=red&label=npm&logo=npm" alt="npm version"/></a> |
| [/auth](./packages/auth) | Best in class wallet authentication for Node backends | <a href="https://www.npmjs.com/package/@thirdweb-dev/auth"><img src="https://img.shields.io/npm/v/@thirdweb-dev/auth?color=red&label=npm&logo=npm" alt="npm version"/></a> |
-34
View File
@@ -1,34 +0,0 @@
name: CI
on:
push:
branches: ["main"]
pull_request:
types: [opened, synchronize]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
name: Build and Test
timeout-minutes: 30
runs-on: ubuntu-latest-32
# To use Remote Caching, uncomment the next lines and follow the steps below.
env:
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
TURBO_TEAM: ${{ secrets.TURBO_TEAM }}
steps:
- name: Check out code
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install
uses: ./.github/composite-actions/install
# this already builds anything that changed...
- name: Build & Test
run: yarn test
+121
View File
@@ -0,0 +1,121 @@
name: Build, Lint & Test
on:
push:
branches: ["main"]
pull_request:
types: [opened, synchronize]
# trigger on merge group as well (merge queue)
merge_group:
types: [checks_requested]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
# To use Remote Caching, uncomment the next lines and follow the steps below.
env:
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
TURBO_TEAM: ${{ secrets.TURBO_TEAM }}
jobs:
build:
timeout-minutes: 15
name: Build
runs-on: ubuntu-latest-16
steps:
- name: Check out code
uses: actions/checkout@v3
with:
fetch-depth: 25
- name: Install
uses: ./.github/composite-actions/install
- run: yarn build
# We use week in the turbo cache key to keep the cache from infinitely growing
- id: get-week
run: echo "WEEK=$(date +%U)" >> $GITHUB_OUTPUT
- uses: actions/cache@v3
timeout-minutes: 5
id: cache-build
with:
path: ./*
key: ${{ github.sha }}-${{ github.run_number }}
lint:
timeout-minutes: 15
name: Lint Packages
runs-on: ubuntu-latest
needs: build
steps:
- name: Setup node
uses: actions/setup-node@v3
with:
node-version: 16
check-latest: true
- uses: actions/cache@v3
timeout-minutes: 5
id: restore-build
with:
path: ./*
key: ${{ github.sha }}-${{ github.run_number }}
- run: yarn lint
test:
timeout-minutes: 15
name: Unit Tests
runs-on: ubuntu-latest-16
needs: build
steps:
- name: Setup node
uses: actions/setup-node@v3
with:
node-version: 16
check-latest: true
- uses: actions/cache@v3
timeout-minutes: 5
id: restore-build
with:
path: ./*
key: ${{ github.sha }}-${{ github.run_number }}
- run: yarn test
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v3
with:
files: ./packages/sdk/coverage/evm/lcov.info,./packages/sdk/coverage/solana/lcov.info,
e2e:
timeout-minutes: 15
name: E2E Tests
runs-on: ubuntu-latest-16
needs: build
steps:
- name: Setup node
uses: actions/setup-node@v3
with:
node-version: 16
check-latest: true
- uses: actions/cache@v3
timeout-minutes: 5
id: restore-build
with:
path: ./*
key: ${{ github.sha }}-${{ github.run_number }}
- name: Install Playwright
run: npx playwright install --with-deps
- name: Run e2e tests
run: yarn e2e
env:
NODE_OPTIONS: "--max_old_space_size=4096"
-29
View File
@@ -1,29 +0,0 @@
name: Integration tests
on:
push:
branches: ["main"]
pull_request:
types: [opened, synchronize]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
integration-tests:
timeout-minutes: 30
runs-on: ubuntu-latest-32
steps:
- uses: actions/checkout@v3
- name: Install
uses: ./.github/composite-actions/install
- name: Install Playwright
run: npx playwright install --with-deps
- name: Run e2e tests
run: yarn e2e
env:
NODE_OPTIONS: "--max_old_space_size=4096"
-33
View File
@@ -1,33 +0,0 @@
name: Lint
on:
push:
branches: ["main"]
pull_request:
types: [opened, synchronize]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
lint:
name: Lint
timeout-minutes: 15
runs-on: ubuntu-latest
# To use Remote Caching, uncomment the next lines and follow the steps below.
env:
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
TURBO_TEAM: ${{ secrets.TURBO_TEAM }}
steps:
- name: Check out code
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install
uses: ./.github/composite-actions/install
- name: Lint
run: yarn lint
+4 -2
View File
@@ -40,7 +40,7 @@ jobs:
comment_body: ${{ github.event.comment.body }}
deploy:
runs-on: ubuntu-latest-32
runs-on: ubuntu-latest-16
timeout-minutes: 30
needs: deploy-check
if: needs.deploy-check.outputs.triggered == 'true'
@@ -67,7 +67,7 @@ jobs:
uses: ./.github/composite-actions/install
- name: Build
run: yarn build:release
run: yarn build
- name: Configure npm
run: |
@@ -76,8 +76,10 @@ jobs:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Deploy pre-release
id: changesets
run: |
yarn changeset version --snapshot dev
node ./scripts/pre-release.mjs
yarn changeset publish --tag dev --no-git-tag
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+1 -1
View File
@@ -15,7 +15,7 @@ jobs:
release:
name: Release
timeout-minutes: 30
runs-on: ubuntu-latest-32
runs-on: ubuntu-latest-16
steps:
- name: Checkout branch
uses: actions/checkout@v3
-20
View File
@@ -1,20 +0,0 @@
name: Compressed Size
on: [pull_request]
jobs:
build:
runs-on: ubuntu-latest-32
timeout-minutes: 30
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 1
- uses: preactjs/compressed-size-action@v2
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
strip-hash: "\\-(\\w{8})(?:\\.esm|\\.cjs)"
minimum-change-threshold: 100
# exclude source maps, node modules and any test related files
exclude: "{**/*.map,**/node_modules/**,**/test/**}"
-1
View File
@@ -10,7 +10,6 @@ dist-ssr
.cache
server/dist
public/dist
.turbo
./packages/contracts-js/abis
.idea/
.yalc/
+4 -4
View File
@@ -5,11 +5,11 @@
<br />
</p>
<h1 align="center"><a href='http://thirdweb.com/'>thirdweb</a> JavaScript/TypeScript monorepo</h1>
<h1 align="center"><a href='https://thirdweb.com/'>thirdweb</a> JavaScript/TypeScript monorepo</h1>
<p align="center">
<a href="https://github.com/thirdweb-dev/js/actions/workflows/CI.yml">
<img alt="Build Status" src="https://github.com/thirdweb-dev/js/actions/workflows/CI.yml/badge.svg"/>
<a href="https://github.com/thirdweb-dev/js/actions/workflows/build-test-lint.yml">
<img alt="Build Status" src="https://github.com/thirdweb-dev/js/actions/workflows/build-test-lint.yml/badge.svg"/>
</a>
<a href="https://discord.gg/thirdweb">
<img alt="Join our Discord!" src="https://img.shields.io/discord/834227967404146718.svg?color=7289da&label=discord&logo=discord&style=flat"/>
@@ -21,7 +21,7 @@
## Packages
| Package | Description | Latest Version |
| ------------------------------ | -------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|--------------------------------|----------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [/sdk](./packages/sdk) | Best in class web3 SDK for Browser, Node and Mobile apps | <a href="https://www.npmjs.com/package/@thirdweb-dev/sdk"><img src="https://img.shields.io/npm/v/@thirdweb-dev/sdk?color=red&label=npm&logo=npm" alt="npm version"/></a> |
| [/react](./packages/react) | Ultimate collection of React hooks for your web3 apps | <a href="https://www.npmjs.com/package/@thirdweb-dev/react"><img src="https://img.shields.io/npm/v/@thirdweb-dev/react?color=red&label=npm&logo=npm" alt="npm version"/></a> |
| [/auth](./packages/auth) | Best in class wallet authentication for Node backends | <a href="https://www.npmjs.com/package/@thirdweb-dev/auth"><img src="https://img.shields.io/npm/v/@thirdweb-dev/auth?color=red&label=npm&logo=npm" alt="npm version"/></a> |
+3 -3
View File
@@ -13,7 +13,7 @@
]
},
"scripts": {
"test": "turbo run test test:evm test:solana",
"test": "turbo run test test:evm test:solana --filter=./packages/*",
"e2e": "turbo run e2e",
"build": "turbo run build --filter=./packages/*",
"build:release": "turbo run build --force --filter=./packages/*",
@@ -41,10 +41,10 @@
"mocha": "^10.2.0",
"postinstall-postinstall": "^2.1.0",
"prettier": "^2.7.1",
"turbo": "^1.4.6",
"turbo": "^1.8.3",
"yalc": "^1.0.0-pre.53"
},
"manypkg": {
"defaultBranch": "main"
}
}
}
+18
View File
@@ -1,5 +1,23 @@
# @thirdweb-dev/auth
## 3.0.7
### Patch Changes
- [#665](https://github.com/thirdweb-dev/js/pull/665) [`6ef52dc9`](https://github.com/thirdweb-dev/js/commit/6ef52dc916251d72416ba5a8b63b428770f54e75) Thanks [@shift4id](https://github.com/shift4id)! - Fix spelling throughout all packages
## 3.0.6
### Patch Changes
- [#601](https://github.com/thirdweb-dev/js/pull/601) [`66cf1fb`](https://github.com/thirdweb-dev/js/commit/66cf1fb5c2e8deb486543ee028d786bb8eef6c19) Thanks [@jnsdls](https://github.com/jnsdls)! - upgrade dependencies
## 3.0.5
### Patch Changes
- [#588](https://github.com/thirdweb-dev/js/pull/588) [`f0de81d`](https://github.com/thirdweb-dev/js/commit/f0de81d4b1ba33b2ac73ed16cfdea8fd4eb5da9e) Thanks [@adam-maj](https://github.com/adam-maj)! - Add verify login to auth
## 3.0.4
### Patch Changes
+2
View File
@@ -5,6 +5,8 @@
</p>
<h1 align="center">thirdweb Auth</h1>
<p align="center">
<a href="https://www.npmjs.com/package/@thirdweb-dev/auth"><img src="https://img.shields.io/npm/v/@thirdweb-dev/auth?color=red&label=npm&logo=npm" alt="npm version"/></a>
<a href="https://github.com/thirdweb-dev/js/actions/workflows/build-test-lint.yml"><img alt="Build Status" src="https://github.com/thirdweb-dev/js/actions/workflows/build-test-lint.yml/badge.svg"/></a>
<a href="https://discord.gg/thirdweb"><img alt="Join our Discord!" src="https://img.shields.io/discord/834227967404146718.svg?color=7289da&label=discord&logo=discord&style=flat"/></a>
</p>
+2 -5
View File
@@ -1,6 +1,6 @@
{
"name": "@thirdweb-dev/auth",
"version": "3.0.4",
"version": "3.0.7",
"main": "dist/thirdweb-dev-auth.cjs.js",
"module": "dist/thirdweb-dev-auth.esm.js",
"exports": {
@@ -50,9 +50,6 @@
"evm/index.ts",
"solana/index.ts"
],
"___experimentalFlags_WILL_CHANGE_IN_PATCH": {
"exports": true
},
"exports": true
},
"devDependencies": {
@@ -138,4 +135,4 @@
"uuid": "^9.0.0",
"zod": "^3.20.2"
}
}
}
+2 -1
View File
@@ -50,7 +50,8 @@ export class ThirdwebAuth {
statement: parsedOptions?.statement,
version: parsedOptions?.version,
uri:
parsedOptions?.uri || (isBrowser() ? window.location.href : undefined),
parsedOptions?.uri ||
(isBrowser() ? window.location.origin : undefined),
chain_id: chainId,
nonce: parsedOptions?.nonce,
expiration_time:
+28
View File
@@ -0,0 +1,28 @@
import { ThirdwebAuth } from "../core";
import { LoginPayload, VerifyOptions } from "../core/schema";
import { SignerWallet } from "./signer";
import { ethers } from "ethers";
const wallet = new SignerWallet(ethers.Wallet.createRandom());
const authMap = new Map<string, ThirdwebAuth>();
export async function verifyLogin(
domain: string,
payload: LoginPayload,
options?: Omit<VerifyOptions, "domain">,
) {
let auth: ThirdwebAuth;
if (!authMap.has(domain)) {
auth = new ThirdwebAuth(wallet, domain);
authMap.set(domain, auth);
} else {
auth = authMap.get(domain) as ThirdwebAuth;
}
try {
const address = await auth.verify(payload, options);
return { address, error: undefined };
} catch (err: any) {
return { address: undefined, error: err.message };
}
}
+5 -39
View File
@@ -468,6 +468,7 @@ const polygonMumbai: Chain = {
/**
* @public
* @deprecated - use the chainId number directly instead
*/
export enum ChainId {
Mainnet = 1,
@@ -488,6 +489,7 @@ export enum ChainId {
/**
* @public
* @deprecated - thirdweb now supports all evm chains, for a list of chain install the @thirdweb-dev/chains package
*/
export type SUPPORTED_CHAIN_ID =
| ChainId.Mainnet
@@ -507,6 +509,7 @@ export type SUPPORTED_CHAIN_ID =
/**
* @public
* @deprecated - thirdweb now supports all evm chains, for a list of chain install the @thirdweb-dev/chains package
*/
export const SUPPORTED_CHAIN_IDS: SUPPORTED_CHAIN_ID[] = [
ChainId.Mainnet,
@@ -534,45 +537,8 @@ export const NATIVE_TOKEN_ADDRESS =
export const DEFAULT_API_KEY =
"c6634ad2d97b74baf15ff556016830c251050e6c36b9da508ce3ec80095d3dc1";
function getRpcNameFromChainId(chainId: SUPPORTED_CHAIN_ID): string {
switch (chainId) {
case ChainId.Mainnet:
return "mainnet";
case ChainId.Goerli:
return "goerli";
case ChainId.Polygon:
return "polygon";
case ChainId.Mumbai:
return "mumbai";
case ChainId.Avalanche:
return "avalanche";
case ChainId.AvalancheFujiTestnet:
return "avalanche-fuji";
case ChainId.Fantom:
return "fantom";
case ChainId.FantomTestnet:
return "fantom-testnet";
case ChainId.Arbitrum:
return "arbitrum";
case ChainId.ArbitrumGoerli:
return "arbitrum-goerli";
case ChainId.Optimism:
return "optimism";
case ChainId.OptimismGoerli:
return "optimism-goerli";
case ChainId.BinanceSmartChainMainnet:
return "bsc";
case ChainId.BinanceSmartChainTestnet:
return "bsc-testnet";
default:
throw new Error("Unsupported chain id");
}
}
export function getRpcUrl(chainId: SUPPORTED_CHAIN_ID) {
return `https://${getRpcNameFromChainId(
chainId,
)}.rpc.thirdweb.com/${DEFAULT_API_KEY}`;
export function getRpcUrl(chainId: number) {
return `https://${chainId}.rpc.thirdweb.com/${DEFAULT_API_KEY}`;
}
function enhanceChain<TChain extends Chain>(chain: TChain) {
+2 -93
View File
@@ -1,93 +1,2 @@
import { SUPPORTED_CHAIN_ID, supportedChains } from "./evm";
import type { Ecosystem, GenericAuthWallet } from "@thirdweb-dev/wallets";
import { ethers } from "ethers";
const EIP1271_ABI = [
"function isValidSignature(bytes32 _message, bytes _signature) public view returns (bytes4)",
];
const EIP1271_MAGICVALUE = "0x1626ba7e";
export const checkContractWalletSignature = async (
message: string,
signature: string,
address: string,
chainId: number,
): Promise<boolean> => {
const rpcUrl =
supportedChains[chainId as SUPPORTED_CHAIN_ID]?.rpcUrls.default.http[0];
if (!rpcUrl) {
return false;
}
const provider = new ethers.providers.JsonRpcProvider(rpcUrl);
const walletContract = new ethers.Contract(address, EIP1271_ABI, provider);
const hashMessage = ethers.utils.hashMessage(message);
try {
const res = await walletContract.isValidSignature(hashMessage, signature);
return res === EIP1271_MAGICVALUE;
} catch {
return false;
}
};
export class SignerWallet implements GenericAuthWallet {
type: Ecosystem = "evm";
#signer: ethers.Signer;
constructor(signer: ethers.Signer) {
this.#signer = signer;
}
public async getAddress(): Promise<string> {
return this.#signer.getAddress();
}
public async getChainId(): Promise<number> {
return this.#signer.getChainId();
}
public async signMessage(message: string): Promise<string> {
return await this.#signer.signMessage(message);
}
public async verifySignature(
message: string,
signature: string,
address: string,
chainId?: number,
): Promise<boolean> {
const messageHash = ethers.utils.hashMessage(message);
const messageHashBytes = ethers.utils.arrayify(messageHash);
const recoveredAddress = ethers.utils.recoverAddress(
messageHashBytes,
signature,
);
if (recoveredAddress === address) {
return true;
}
// Check if the address is a smart contract wallet
if (chainId !== undefined) {
try {
const isValid = await checkContractWalletSignature(
message,
signature,
address,
chainId || 1,
);
return isValid;
} catch {
// no-op
}
}
return false;
}
}
export class PrivateKeyWallet extends SignerWallet {
constructor(privateKey: string) {
super(new ethers.Wallet(privateKey));
}
}
export * from "./signer";
export * from "./auth";
+93
View File
@@ -0,0 +1,93 @@
import { SUPPORTED_CHAIN_ID, supportedChains } from "./evm";
import type { Ecosystem, GenericAuthWallet } from "@thirdweb-dev/wallets";
import { ethers } from "ethers";
const EIP1271_ABI = [
"function isValidSignature(bytes32 _message, bytes _signature) public view returns (bytes4)",
];
const EIP1271_MAGICVALUE = "0x1626ba7e";
export const checkContractWalletSignature = async (
message: string,
signature: string,
address: string,
chainId: number,
): Promise<boolean> => {
const rpcUrl =
supportedChains[chainId as SUPPORTED_CHAIN_ID]?.rpcUrls.default.http[0];
if (!rpcUrl) {
return false;
}
const provider = new ethers.providers.JsonRpcProvider(rpcUrl);
const walletContract = new ethers.Contract(address, EIP1271_ABI, provider);
const hashMessage = ethers.utils.hashMessage(message);
try {
const res = await walletContract.isValidSignature(hashMessage, signature);
return res === EIP1271_MAGICVALUE;
} catch {
return false;
}
};
export class SignerWallet implements GenericAuthWallet {
type: Ecosystem = "evm";
#signer: ethers.Signer;
constructor(signer: ethers.Signer) {
this.#signer = signer;
}
public async getAddress(): Promise<string> {
return this.#signer.getAddress();
}
public async getChainId(): Promise<number> {
return this.#signer.getChainId();
}
public async signMessage(message: string): Promise<string> {
return await this.#signer.signMessage(message);
}
public async verifySignature(
message: string,
signature: string,
address: string,
chainId?: number,
): Promise<boolean> {
const messageHash = ethers.utils.hashMessage(message);
const messageHashBytes = ethers.utils.arrayify(messageHash);
const recoveredAddress = ethers.utils.recoverAddress(
messageHashBytes,
signature,
);
if (recoveredAddress === address) {
return true;
}
// Check if the address is a smart contract wallet
if (chainId !== undefined) {
try {
const isValid = await checkContractWalletSignature(
message,
signature,
address,
chainId || 1,
);
return isValid;
} catch {
// no-op
}
}
return false;
}
}
export class PrivateKeyWallet extends SignerWallet {
constructor(privateKey: string) {
super(new ethers.Wallet(privateKey));
}
}
+1 -1
View File
@@ -31,5 +31,5 @@ export default async function handler(
}),
);
return res.status(200).json({ message: "Succesfully logged out" });
return res.status(200).json({ message: "Successfully logged out" });
}
+1 -1
View File
@@ -31,5 +31,5 @@ export default async function handler(
}),
);
return res.status(200).json({ message: "Succesfully logged out" });
return res.status(200).json({ message: "Successfully logged out" });
}
+28
View File
@@ -0,0 +1,28 @@
import { ThirdwebAuth } from "../core";
import { LoginPayload, VerifyOptions } from "../core/schema";
import { KeypairWallet } from "./signer";
import { Keypair } from "@solana/web3.js";
const wallet = new KeypairWallet(Keypair.generate());
const authMap = new Map<string, ThirdwebAuth>();
export async function verifyLogin(
domain: string,
payload: LoginPayload,
options?: Omit<VerifyOptions, "domain">,
) {
let auth: ThirdwebAuth;
if (!authMap.has(domain)) {
auth = new ThirdwebAuth(wallet, domain);
authMap.set(domain, auth);
} else {
auth = authMap.get(domain) as ThirdwebAuth;
}
try {
const address = await auth.verify(payload, options);
return { address, error: undefined };
} catch (err: any) {
return { address: undefined, error: err.message };
}
}
+2 -69
View File
@@ -1,69 +1,2 @@
import * as ed25519 from "@noble/ed25519";
import { Signer, Keypair, PublicKey } from "@solana/web3.js";
import type { Ecosystem, GenericAuthWallet } from "@thirdweb-dev/wallets";
import bs58 from "bs58";
import nacl from "tweetnacl";
export interface SolanaSigner {
publicKey: PublicKey;
signMessage(message: Uint8Array): Promise<Uint8Array>;
}
export class SignerWallet implements GenericAuthWallet {
type: Ecosystem = "solana";
private signer: SolanaSigner;
constructor(signer: SolanaSigner) {
this.signer = signer;
}
public async getAddress(): Promise<string> {
return this.signer.publicKey.toBase58();
}
public async signMessage(message: string): Promise<string> {
const encodedMessage = new TextEncoder().encode(message);
const signedMessage = await this.signer.signMessage(encodedMessage);
const signature = bs58.encode(signedMessage);
return signature;
}
public async verifySignature(
message: string,
signature: string,
address: string,
): Promise<boolean> {
return nacl.sign.detached.verify(
new TextEncoder().encode(message),
bs58.decode(signature),
bs58.decode(address),
);
}
}
class KeypairSigner implements SolanaSigner {
private keypair: Signer;
public publicKey: PublicKey;
constructor(keypair: Signer) {
this.keypair = keypair;
this.publicKey = keypair.publicKey;
}
public async signMessage(message: Uint8Array): Promise<Uint8Array> {
return ed25519.sync.sign(message, this.keypair.secretKey.slice(0, 32));
}
}
export class KeypairWallet extends SignerWallet {
constructor(keypair: Keypair) {
super(new KeypairSigner(keypair));
}
}
export class PrivateKeyWallet extends KeypairWallet {
constructor(privateKey: string) {
super(Keypair.fromSecretKey(bs58.decode(privateKey)));
}
}
export * from "./signer";
export * from "./auth";
+69
View File
@@ -0,0 +1,69 @@
import * as ed25519 from "@noble/ed25519";
import { Signer, Keypair, PublicKey } from "@solana/web3.js";
import type { Ecosystem, GenericAuthWallet } from "@thirdweb-dev/wallets";
import bs58 from "bs58";
import nacl from "tweetnacl";
export interface SolanaSigner {
publicKey: PublicKey;
signMessage(message: Uint8Array): Promise<Uint8Array>;
}
export class SignerWallet implements GenericAuthWallet {
type: Ecosystem = "solana";
private signer: SolanaSigner;
constructor(signer: SolanaSigner) {
this.signer = signer;
}
public async getAddress(): Promise<string> {
return this.signer.publicKey.toBase58();
}
public async signMessage(message: string): Promise<string> {
const encodedMessage = new TextEncoder().encode(message);
const signedMessage = await this.signer.signMessage(encodedMessage);
const signature = bs58.encode(signedMessage);
return signature;
}
public async verifySignature(
message: string,
signature: string,
address: string,
): Promise<boolean> {
return nacl.sign.detached.verify(
new TextEncoder().encode(message),
bs58.decode(signature),
bs58.decode(address),
);
}
}
class KeypairSigner implements SolanaSigner {
private keypair: Signer;
public publicKey: PublicKey;
constructor(keypair: Signer) {
this.keypair = keypair;
this.publicKey = keypair.publicKey;
}
public async signMessage(message: Uint8Array): Promise<Uint8Array> {
return ed25519.sync.sign(message, this.keypair.secretKey.slice(0, 32));
}
}
export class KeypairWallet extends SignerWallet {
constructor(keypair: Keypair) {
super(new KeypairSigner(keypair));
}
}
export class PrivateKeyWallet extends KeypairWallet {
constructor(privateKey: string) {
super(Keypair.fromSecretKey(bs58.decode(privateKey)));
}
}
+46
View File
@@ -1,5 +1,51 @@
# @thirdweb-dev/chains
## 0.1.6
### Patch Changes
- [#635](https://github.com/thirdweb-dev/js/pull/635) [`7832041c`](https://github.com/thirdweb-dev/js/commit/7832041c0fb25852489c73453c2b26e844d94582) Thanks [@jnsdls](https://github.com/jnsdls)! - Add additional chains
- [#643](https://github.com/thirdweb-dev/js/pull/643) [`85250cf7`](https://github.com/thirdweb-dev/js/commit/85250cf71190092b61023d56d1e786d395a008a6) Thanks [@jnsdls](https://github.com/jnsdls)! - expose `getChainBySlug` and `ChainSlug` and `ChainId` type
- [#638](https://github.com/thirdweb-dev/js/pull/638) [`e33bd2a8`](https://github.com/thirdweb-dev/js/commit/e33bd2a856bbc2e2f6b0c90b46be5166281875ae) Thanks [@jnsdls](https://github.com/jnsdls)! - Add `getChainByChainId()` to retrieve chain by chainId
- [#685](https://github.com/thirdweb-dev/js/pull/685) [`4355518a`](https://github.com/thirdweb-dev/js/commit/4355518afea68cd8026d3ab8a0144c15d66b9e24) Thanks [@jnsdls](https://github.com/jnsdls)! - update chains
## 0.1.5
### Patch Changes
- [#617](https://github.com/thirdweb-dev/js/pull/617) [`d7deaa4`](https://github.com/thirdweb-dev/js/commit/d7deaa48f2f943deb8f2ad7459d17de930c00517) Thanks [@jnsdls](https://github.com/jnsdls)! - Add Base Goerli
- [#619](https://github.com/thirdweb-dev/js/pull/619) [`b7a5b45`](https://github.com/thirdweb-dev/js/commit/b7a5b454415596316f58a75f14472631242cc115) Thanks [@jnsdls](https://github.com/jnsdls)! - fix the slug for base-goerli
## 0.1.4
### Patch Changes
- [#613](https://github.com/thirdweb-dev/js/pull/613) [`a3472a1`](https://github.com/thirdweb-dev/js/commit/a3472a133175826d052ee986907de014e3cf3ad9) Thanks [@jnsdls](https://github.com/jnsdls)! - Update Chains
- [#616](https://github.com/thirdweb-dev/js/pull/616) [`5712650`](https://github.com/thirdweb-dev/js/commit/5712650074e2415bbea4173a0bb68d727ff2db90) Thanks [@joaquim-verges](https://github.com/joaquim-verges)! - new chains
## 0.1.3
### Patch Changes
- [#608](https://github.com/thirdweb-dev/js/pull/608) [`3d644fb`](https://github.com/thirdweb-dev/js/commit/3d644fb8cbae8bc3ee624505831b9f5c6996898a) Thanks [@jnsdls](https://github.com/jnsdls)! - update chains
## 0.1.2
### Patch Changes
- [#601](https://github.com/thirdweb-dev/js/pull/601) [`66cf1fb`](https://github.com/thirdweb-dev/js/commit/66cf1fb5c2e8deb486543ee028d786bb8eef6c19) Thanks [@jnsdls](https://github.com/jnsdls)! - upgrade dependencies
## 0.1.1
### Patch Changes
- [#599](https://github.com/thirdweb-dev/js/pull/599) [`f580b8a`](https://github.com/thirdweb-dev/js/commit/f580b8ac06534df24b0194cbc632b4a8fd447611) Thanks [@joaquim-verges](https://github.com/joaquim-verges)! - New chains added
## 0.1.0
### Minor Changes
+24 -4
View File
@@ -5,12 +5,32 @@
</p>
<h1 align="center">thirdweb chains</h1>
<p align="center">
<!-- <a href="https://www.npmjs.com/package/@thirdweb-dev/sdk"><img src="https://img.shields.io/npm/v/@thirdweb-dev/sdk?color=red&label=npm&logo=npm" alt="npm version"/></a> -->
<!-- <a href="https://github.com/thirdweb-dev/js/actions/workflows/CI.yml"><img alt="Build Status" src="https://github.com/thirdweb-dev/js/actions/workflows/CI.yml/badge.svg"/></a> -->
<!-- <a href="https://discord.gg/thirdweb"><img alt="Join our Discord!" src="https://img.shields.io/discord/834227967404146718.svg?color=7289da&label=discord&logo=discord&style=flat"/></a> -->
<a href="https://www.npmjs.com/package/@thirdweb-dev/chains"><img src="https://img.shields.io/npm/v/@thirdweb-dev/chains?color=red&label=npm&logo=npm" alt="npm version"/></a>
<a href="https://github.com/thirdweb-dev/js/actions/workflows/build-test-lint.yml"><img alt="Build Status" src="https://github.com/thirdweb-dev/js/actions/workflows/build-test-lint.yml/badge.svg"/></a>
<a href="https://discord.gg/thirdweb"><img alt="Join our Discord!" src="https://img.shields.io/discord/834227967404146718.svg?color=7289da&label=discord&logo=discord&style=flat"/></a>
</p>
<!-- <p align="center"><strong>Best in class Web3 SDK for Browser, Node and Mobile apps</strong></p> -->
<br />
### todo
## Installation
```bash
yarn add @thirdweb-dev/chains
```
## Contributing
### Adding / Overriding Chain Data
Chain data is automatically pulled in from [ethereum-lists/chains](https://github.com/ethereum-lists/chains) on every build.
#### Overriding Chain Data
Chain data can be overridden by running `yarn override-chain` and following the prompts.
#### Adding A New Chain
In cases where a chain is not listed in the [ethereum-lists/chains](https://github.com/ethereum-lists/chains) repo, you can add it manually by running `yarn add-chain` and following the prompts.
> Prefer adding chains to the ethereum-lists/chains repo instead of manually adding them here.
+41
View File
@@ -0,0 +1,41 @@
export default {
"name": "Siberium Network",
"chain": "SBR",
"rpc": [
"https://siberium-network.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc.main.siberium.net",
"https://rpc.main.siberium.net.ru"
],
"faucets": [],
"nativeCurrency": {
"name": "Siberium",
"symbol": "SBR",
"decimals": 18
},
"infoURL": "https://siberium.net",
"shortName": "sbr",
"chainId": 111111,
"networkId": 111111,
"icon": {
"url": "ipfs://QmVDeoGo2TZPDWiaNDdPCnH2tz2BCQ7viw8ugdDWnU5LFq",
"width": 1920,
"height": 1920,
"format": "svg"
},
"explorers": [
{
"name": "Siberium Mainnet Explorer - blockscout - 1",
"url": "https://explorer.main.siberium.net",
"icon": "siberium",
"standard": "EIP3091"
},
{
"name": "Siberium Mainnet Explorer - blockscout - 2",
"url": "https://explorer.main.siberium.net.ru",
"icon": "siberium",
"standard": "EIP3091"
}
],
"testnet": false,
"slug": "siberium-network"
} as const;
+30
View File
@@ -0,0 +1,30 @@
export default {
"name": "HashBit Mainnet",
"chain": "HBIT",
"rpc": [
"https://hashbit.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://mainnet-rpc.hashbit.org",
"https://rpc.hashbit.org"
],
"faucets": [
"https://free-online-app.com/faucet-for-eth-evm-chains/"
],
"nativeCurrency": {
"name": "HashBit Native Token",
"symbol": "HBIT",
"decimals": 18
},
"infoURL": "https://hashbit.org",
"shortName": "hbit",
"chainId": 11119,
"networkId": 11119,
"explorers": [
{
"name": "hashbitscan",
"url": "https://explorer.hashbit.org",
"standard": "EIP3091"
}
],
"testnet": false,
"slug": "hashbit"
} as const;
+1
View File
@@ -5,6 +5,7 @@ export default {
"rpc": [
"https://sepolia.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc.sepolia.org",
"https://rpc2.sepolia.org",
"https://rpc-sepolia.rockx.com"
],
"faucets": [
+1 -1
View File
@@ -9,7 +9,7 @@ export default {
},
"rpc": [
"https://dogcoin.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://mainnet-rpc.dogcoin.network"
"https://mainnet-rpc.dogcoin.me"
],
"faucets": [
"https://faucet.dogcoin.network"
+33
View File
@@ -0,0 +1,33 @@
export default {
"name": "AmStar Testnet",
"chain": "AmStar",
"icon": {
"url": "ipfs://Qmd4TMQdnYxaUZqnVddh5S37NGH72g2kkK38ccCEgdZz1C",
"width": 599,
"height": 563,
"format": "png"
},
"rpc": [
"https://amstar-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet-rpc.amstarscan.com"
],
"faucets": [],
"nativeCurrency": {
"name": "SINSO",
"symbol": "SINSO",
"decimals": 18
},
"infoURL": "https://sinso.io",
"shortName": "ASARt",
"chainId": 1138,
"networkId": 1138,
"explorers": [
{
"name": "amstarscan-testnet",
"url": "https://testnet.amstarscan.com",
"standard": "EIP3091"
}
],
"testnet": true,
"slug": "amstar-testnet"
} as const;
+33
View File
@@ -0,0 +1,33 @@
export default {
"name": "Arcology Testnet",
"chain": "Arcology",
"icon": {
"url": "ipfs://QmRD7itMvaZutfBjyA7V9xkMGDtsZiJSagPwd3ijqka8kE",
"width": 288,
"height": 288,
"format": "png"
},
"rpc": [
"https://arcology-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet.arcology.network/rpc"
],
"faucets": [],
"nativeCurrency": {
"name": "Arcology Coin",
"symbol": "Acol",
"decimals": 18
},
"infoURL": "https://arcology.network/",
"shortName": "arcology",
"chainId": 118,
"networkId": 118,
"explorers": [
{
"name": "arcology",
"url": "https://testnet.arcology.network/explorer",
"standard": "none"
}
],
"testnet": true,
"slug": "arcology-testnet"
} as const;
+6
View File
@@ -15,6 +15,12 @@ export default {
"shortName": "fuse",
"chainId": 122,
"networkId": 122,
"icon": {
"url": "ipfs://QmQg8aqyeaMfHvjzFDtZkb8dUNRYhFezPp8UYVc1HnLpRW/green.png",
"format": "png",
"width": 512,
"height": 512
},
"testnet": false,
"slug": "fuse"
} as const;
+6
View File
@@ -18,5 +18,11 @@ export default {
"chainId": 123,
"networkId": 123,
"testnet": true,
"icon": {
"url": "ipfs://QmQg8aqyeaMfHvjzFDtZkb8dUNRYhFezPp8UYVc1HnLpRW/green.png",
"format": "png",
"width": 512,
"height": 512
},
"slug": "fuse-sparknet"
} as const;
+33
View File
@@ -0,0 +1,33 @@
export default {
"name": "Fibonacci Mainnet",
"chain": "FIBO",
"icon": {
"url": "ipfs://bafkreidiedaz3jugxmh2ylzlc4nympbd5iwab33adhwkcnblyop6vvj25y",
"width": 1494,
"height": 1494,
"format": "png"
},
"rpc": [
"https://fibonacci.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://node1.fibo-api.asia"
],
"faucets": [],
"nativeCurrency": {
"name": "FIBONACCI UTILITY TOKEN",
"symbol": "FIBO",
"decimals": 18
},
"infoURL": "https://fibochain.org",
"shortName": "fibo",
"chainId": 12306,
"networkId": 1230,
"explorers": [
{
"name": "fiboscan",
"url": "https://scan.fibochain.org",
"standard": "EIP3091"
}
],
"testnet": false,
"slug": "fibonacci"
} as const;
+28
View File
@@ -0,0 +1,28 @@
export default {
"name": "BLG Testnet",
"chain": "BLG",
"icon": {
"url": "ipfs://QmUN5j2cre8GHKv52JE8ag88aAnRmuHMGFxePPvKMogisC",
"width": 512,
"height": 512,
"format": "svg"
},
"rpc": [
"https://blg-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc.blgchain.com"
],
"faucets": [
"https://faucet.blgchain.com"
],
"nativeCurrency": {
"name": "Blg",
"symbol": "BLG",
"decimals": 18
},
"infoURL": "https://blgchain.com",
"shortName": "blgchain",
"chainId": 12321,
"networkId": 12321,
"testnet": true,
"slug": "blg-testnet"
} as const;
+45
View File
@@ -0,0 +1,45 @@
export default {
"name": "Horizen Yuma Testnet",
"shortName": "Yuma",
"chain": "Yuma",
"icon": {
"url": "ipfs://QmSFMBk3rMyu45Sy9KQHjgArFj4HdywANNYrSosLMUdcti",
"width": 1213,
"height": 1213,
"format": "png"
},
"rpc": [
"https://horizen-yuma-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://yuma-testnet.horizenlabs.io/ethv1"
],
"features": [
{
"name": "EIP155"
},
{
"name": "EIP1559"
}
],
"faucets": [
"https://yuma-testnet-faucet.horizen.io"
],
"nativeCurrency": {
"name": "Testnet Zen",
"symbol": "tZEN",
"decimals": 18
},
"infoURL": "https://horizen.io/",
"chainId": 1662,
"networkId": 1662,
"slip44": 121,
"explorers": [
{
"name": "Yuma Testnet Block Explorer",
"url": "https://yuma-explorer.horizen.io",
"icon": "eon",
"standard": "EIP3091"
}
],
"testnet": true,
"slug": "horizen-yuma-testnet"
} as const;
-1
View File
@@ -10,7 +10,6 @@ export default {
"rpc": [
"https://songbird-canary-network.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://songbird-api.flare.network/ext/C/rpc",
"https://songbird.towolabs.com/ext/C/rpc",
"https://sgb.ftso.com.au/ext/bc/C/rpc",
"https://sgb.lightft.so/rpc",
"https://sgb-rpc.ftso.eu"
+33
View File
@@ -0,0 +1,33 @@
export default {
"name": "Bitcichain Mainnet",
"chain": "BITCI",
"icon": {
"url": "ipfs://QmbxmfWw5sVMASz5EbR1DCgLfk8PnqpSJGQKpYuEUpoxqn",
"width": 64,
"height": 64,
"format": "svg"
},
"rpc": [
"https://bitcichain.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc.bitci.com"
],
"faucets": [],
"nativeCurrency": {
"name": "Bitci",
"symbol": "BITCI",
"decimals": 18
},
"infoURL": "https://www.bitcichain.com",
"shortName": "bitci",
"chainId": 1907,
"networkId": 1907,
"explorers": [
{
"name": "Bitci Explorer",
"url": "https://bitciexplorer.com",
"standard": "EIP3091"
}
],
"testnet": false,
"slug": "bitcichain"
} as const;
+35
View File
@@ -0,0 +1,35 @@
export default {
"name": "Bitcichain Testnet",
"chain": "TBITCI",
"icon": {
"url": "ipfs://QmbxmfWw5sVMASz5EbR1DCgLfk8PnqpSJGQKpYuEUpoxqn",
"width": 64,
"height": 64,
"format": "svg"
},
"rpc": [
"https://bitcichain-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet.bitcichain.com"
],
"faucets": [
"https://faucet.bitcichain.com"
],
"nativeCurrency": {
"name": "Test Bitci",
"symbol": "TBITCI",
"decimals": 18
},
"infoURL": "https://www.bitcichain.com",
"shortName": "tbitci",
"chainId": 1908,
"networkId": 1908,
"explorers": [
{
"name": "Bitci Explorer Testnet",
"url": "https://testnet.bitciexplorer.com",
"standard": "EIP3091"
}
],
"testnet": true,
"slug": "bitcichain-testnet"
} as const;
+6
View File
@@ -22,6 +22,12 @@ export default {
"standard": "none"
}
],
"icon": {
"url": "ipfs://Qmc9AJGg9aNhoH56n3deaZeUc8Ty1jDYJsW6Lu6hgSZH4S",
"height": 512,
"width": 512,
"format": "png"
},
"testnet": false,
"slug": "gather-network"
} as const;
+31
View File
@@ -0,0 +1,31 @@
export default {
"name": "Eleanor",
"title": "Metatime Testnet Eleanor",
"chain": "MTC",
"rpc": [
"https://eleanor.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc.metatime.com/eleanor",
"wss://ws.metatime.com/eleanor"
],
"faucets": [
"https://faucet.metatime.com/eleanor"
],
"nativeCurrency": {
"name": "Eleanor Metacoin",
"symbol": "MTC",
"decimals": 18
},
"infoURL": "https://eleanor.metatime.com",
"shortName": "mtc",
"chainId": 1967,
"networkId": 1967,
"explorers": [
{
"name": "metaexplorer-eleanor",
"url": "https://explorer.metatime.com/eleanor",
"standard": "EIP3091"
}
],
"testnet": true,
"slug": "eleanor"
} as const;
+2 -1
View File
@@ -3,7 +3,8 @@ export default {
"chain": "edeXa TestNetwork",
"rpc": [
"https://edexa-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet.edexa.com/rpc"
"https://testnet.edexa.com/rpc",
"https://io-dataseed1.testnet.edexa.io-market.com/rpc"
],
"faucets": [
"https://faucet.edexa.com/"
+19
View File
@@ -0,0 +1,19 @@
export default {
"name": "Arevia",
"chain": "Arevia",
"rpc": [],
"faucets": [],
"nativeCurrency": {
"name": "Arev",
"symbol": "ARÉV",
"decimals": 18
},
"infoURL": "",
"shortName": "arevia",
"chainId": 2309,
"networkId": 2309,
"explorers": [],
"status": "incubating",
"testnet": false,
"slug": "arevia"
} as const;
+21 -12
View File
@@ -1,36 +1,45 @@
export default {
"name": "zkSync alpha testnet",
"name": "zkSync Era Testnet",
"chain": "ETH",
"rpc": [
"https://zksync-alpha-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://zksync-era-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://zksync2-testnet.zksync.dev"
],
"faucets": [
"https://portal.zksync.io/faucet"
"https://goerli.portal.zksync.io/faucet"
],
"nativeCurrency": {
"name": "Ether",
"symbol": "ETH",
"decimals": 18
},
"infoURL": "https://v2-docs.zksync.io/",
"infoURL": "https://era.zksync.io/docs/",
"shortName": "zksync-goerli",
"chainId": 280,
"networkId": 280,
"icon": {
"url": "ipfs://QmdwQDr6vmBtXmK2TmknkEuZNoaDqTasFdZdu3DRw8b2wt",
"width": 1000,
"height": 1628,
"format": "png"
"url": "ipfs://Qma6H9xd8Ydah1bAFnmDuau1jeMh5NjGEL8tpdnjLbJ7m2",
"width": 512,
"height": 512,
"format": "svg"
},
"explorers": [
{
"name": "blockscout",
"url": "https://zksync2-testnet.zkscan.io",
"icon": "blockscout",
"name": "zkSync Era Block Explorer",
"url": "https://goerli.explorer.zksync.io",
"icon": "zksync-era",
"standard": "EIP3091"
}
],
"parent": {
"type": "L2",
"chain": "eip155-1",
"bridges": [
{
"url": "https://goerli.portal.zksync.io/bridge"
}
]
},
"testnet": true,
"slug": "zksync-alpha-testnet"
"slug": "zksync-era-testnet"
} as const;
+62
View File
@@ -0,0 +1,62 @@
export default {
"name": "Hedera Mainnet",
"chain": "Hedera",
"icon": {
"url": "ipfs://QmQikzhvZKyMmbZJd7BVLZb2YTBDMgNDnaMCAErsVjsfuz",
"width": 1500,
"height": 1500,
"format": "png"
},
"rpc": [
"https://hedera.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://mainnet.hashio.io/api"
],
"features": [
{
"name": "EIP155"
},
{
"name": "EIP1559"
}
],
"faucets": [],
"nativeCurrency": {
"name": "hbar",
"symbol": "HBAR",
"decimals": 8
},
"infoURL": "https://hedera.com",
"shortName": "hedera-mainnet",
"chainId": 295,
"networkId": 295,
"slip44": 3030,
"explorers": [
{
"name": "HashScan",
"url": "https://hashscan.io/mainnet/dashboard",
"standard": "none"
},
{
"name": "Arkhia Explorer",
"url": "https://explorer.arkhia.io",
"standard": "none"
},
{
"name": "DragonGlass",
"url": "https://app.dragonglass.me",
"standard": "none"
},
{
"name": "Hedera Explorer",
"url": "https://hederaexplorer.io",
"standard": "none"
},
{
"name": "Ledger Works Explore",
"url": "https://explore.lworks.io",
"standard": "none"
}
],
"testnet": false,
"slug": "hedera"
} as const;
+64
View File
@@ -0,0 +1,64 @@
export default {
"name": "Hedera Testnet",
"chain": "Hedera",
"icon": {
"url": "ipfs://QmQikzhvZKyMmbZJd7BVLZb2YTBDMgNDnaMCAErsVjsfuz",
"width": 1500,
"height": 1500,
"format": "png"
},
"rpc": [
"https://hedera-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet.hashio.io/api"
],
"features": [
{
"name": "EIP155"
},
{
"name": "EIP1559"
}
],
"faucets": [
"https://portal.hedera.com"
],
"nativeCurrency": {
"name": "hbar",
"symbol": "HBAR",
"decimals": 8
},
"infoURL": "https://hedera.com",
"shortName": "hedera-testnet",
"chainId": 296,
"networkId": 296,
"slip44": 3030,
"explorers": [
{
"name": "HashScan",
"url": "https://hashscan.io/testnet/dashboard",
"standard": "none"
},
{
"name": "Arkhia Explorer",
"url": "https://explorer.arkhia.io",
"standard": "none"
},
{
"name": "DragonGlass",
"url": "https://app.dragonglass.me",
"standard": "none"
},
{
"name": "Hedera Explorer",
"url": "https://hederaexplorer.io",
"standard": "none"
},
{
"name": "Ledger Works Explore",
"url": "https://explore.lworks.io",
"standard": "none"
}
],
"testnet": true,
"slug": "hedera-testnet"
} as const;
+44
View File
@@ -0,0 +1,44 @@
export default {
"name": "Hedera Previewnet",
"chain": "Hedera",
"icon": {
"url": "ipfs://QmQikzhvZKyMmbZJd7BVLZb2YTBDMgNDnaMCAErsVjsfuz",
"width": 1500,
"height": 1500,
"format": "png"
},
"rpc": [
"https://hedera-previewnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://previewnet.hashio.io/api"
],
"features": [
{
"name": "EIP155"
},
{
"name": "EIP1559"
}
],
"faucets": [
"https://portal.hedera.com"
],
"nativeCurrency": {
"name": "hbar",
"symbol": "HBAR",
"decimals": 8
},
"infoURL": "https://hedera.com",
"shortName": "hedera-previewnet",
"chainId": 297,
"networkId": 297,
"slip44": 3030,
"explorers": [
{
"name": "HashScan",
"url": "https://hashscan.io/previewnet/dashboard",
"standard": "none"
}
],
"testnet": false,
"slug": "hedera-previewnet"
} as const;
+33
View File
@@ -0,0 +1,33 @@
export default {
"name": "Hedera Localnet",
"chain": "Hedera",
"icon": {
"url": "ipfs://QmQikzhvZKyMmbZJd7BVLZb2YTBDMgNDnaMCAErsVjsfuz",
"width": 1500,
"height": 1500,
"format": "png"
},
"rpc": [],
"features": [
{
"name": "EIP155"
},
{
"name": "EIP1559"
}
],
"faucets": [],
"nativeCurrency": {
"name": "hbar",
"symbol": "HBAR",
"decimals": 8
},
"infoURL": "https://hedera.com",
"shortName": "hedera-localnet",
"chainId": 298,
"networkId": 298,
"slip44": 3030,
"explorers": [],
"testnet": false,
"slug": "hedera-localnet"
} as const;
+15
View File
@@ -29,6 +29,21 @@ export default {
"url": "https://filfox.info/en",
"standard": "none"
},
{
"name": "Beryx",
"url": "https://beryx.zondax.ch",
"standard": "none"
},
{
"name": "Glif Explorer",
"url": "https://explorer.glif.io",
"standard": "EIP3091"
},
{
"name": "Filmine",
"url": "https://explorer.filmine.io",
"standard": "none"
},
{
"name": "Filscan",
"url": "https://filscan.io",
+1
View File
@@ -10,6 +10,7 @@ export default {
"rpc": [
"https://filecoin-hyperspace-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://api.hyperspace.node.glif.io/rpc/v1",
"https://rpc.ankr.com/filecoin_testnet",
"https://filecoin-hyperspace.chainstacklabs.com/rpc/v1"
],
"faucets": [
+17 -10
View File
@@ -1,7 +1,10 @@
export default {
"name": "zkSync v2",
"name": "zkSync Era Mainnet",
"chain": "ETH",
"rpc": [],
"rpc": [
"https://zksync-era.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://zksync2-mainnet.zksync.io"
],
"faucets": [],
"nativeCurrency": {
"name": "Ether",
@@ -13,24 +16,28 @@ export default {
"chainId": 324,
"networkId": 324,
"icon": {
"url": "ipfs://QmdwQDr6vmBtXmK2TmknkEuZNoaDqTasFdZdu3DRw8b2wt",
"width": 1000,
"height": 1628,
"format": "png"
"url": "ipfs://Qma6H9xd8Ydah1bAFnmDuau1jeMh5NjGEL8tpdnjLbJ7m2",
"width": 512,
"height": 512,
"format": "svg"
},
"explorers": [
{
"name": "zkSync v2 Block Explorer",
"name": "zkSync Era Block Explorer",
"url": "https://explorer.zksync.io",
"icon": "zksync-era",
"standard": "EIP3091"
}
],
"parent": {
"type": "L2",
"chain": "eip155-1",
"bridges": []
"bridges": [
{
"url": "https://portal.zksync.io/bridge"
}
]
},
"status": "incubating",
"testnet": false,
"slug": "zksync-v2"
"slug": "zksync-era"
} as const;
+9 -1
View File
@@ -5,7 +5,9 @@ export default {
"https://gather-testnet-network.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet.gather.network"
],
"faucets": [],
"faucets": [
"https://testnet-faucet.gather.network/"
],
"nativeCurrency": {
"name": "Gather",
"symbol": "GTH",
@@ -23,5 +25,11 @@ export default {
}
],
"testnet": true,
"icon": {
"url": "ipfs://Qmc9AJGg9aNhoH56n3deaZeUc8Ty1jDYJsW6Lu6hgSZH4S",
"height": 512,
"width": 512,
"format": "png"
},
"slug": "gather-testnet-network"
} as const;
+35
View File
@@ -0,0 +1,35 @@
export default {
"name": "Tipboxcoin Mainnet",
"chain": "TPBX",
"icon": {
"url": "ipfs://QmbiaHnR3fVVofZ7Xq2GYZxwHkLEy3Fh5qDtqnqXD6ACAh",
"width": 192,
"height": 192,
"format": "png"
},
"rpc": [
"https://tipboxcoin.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://mainnet-rpc.tipboxcoin.net"
],
"faucets": [
"https://faucet.tipboxcoin.net"
],
"nativeCurrency": {
"name": "Tipboxcoin",
"symbol": "TPBX",
"decimals": 18
},
"infoURL": "https://tipboxcoin.net",
"shortName": "TPBXm",
"chainId": 404040,
"networkId": 404040,
"explorers": [
{
"name": "Tipboxcoin",
"url": "https://tipboxcoin.net",
"standard": "EIP3091"
}
],
"testnet": false,
"slug": "tipboxcoin"
} as const;
+33
View File
@@ -0,0 +1,33 @@
export default {
"name": "Nahmii 3 Mainnet",
"chain": "Nahmii",
"rpc": [],
"status": "incubating",
"faucets": [],
"nativeCurrency": {
"name": "Ether",
"symbol": "ETH",
"decimals": 18
},
"infoURL": "https://nahmii.io",
"shortName": "Nahmii3Mainnet",
"chainId": 4061,
"networkId": 4061,
"icon": {
"url": "ipfs://QmZhKXgoGpzvthr2eh8ZNgT75YvMtEBegdELAaMPPzf5QT",
"width": 384,
"height": 384,
"format": "png"
},
"parent": {
"type": "L2",
"chain": "eip155-1",
"bridges": [
{
"url": "https://bridge.nahmii.io"
}
]
},
"testnet": false,
"slug": "nahmii-3"
} as const;
+43
View File
@@ -0,0 +1,43 @@
export default {
"name": "Nahmii 3 Testnet",
"chain": "Nahmii",
"rpc": [
"https://nahmii-3-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://ngeth.testnet.n3.nahmii.io"
],
"faucets": [],
"nativeCurrency": {
"name": "Goerli Ether",
"symbol": "ETH",
"decimals": 18
},
"infoURL": "https://nahmii.io",
"shortName": "Nahmii3Testnet",
"chainId": 4062,
"networkId": 4062,
"icon": {
"url": "ipfs://QmZhKXgoGpzvthr2eh8ZNgT75YvMtEBegdELAaMPPzf5QT",
"width": 384,
"height": 384,
"format": "png"
},
"explorers": [
{
"name": "Nahmii 3 Testnet Explorer",
"url": "https://explorer.testnet.n3.nahmii.io",
"icon": "nahmii",
"standard": "EIP3091"
}
],
"parent": {
"type": "L2",
"chain": "eip155-3",
"bridges": [
{
"url": "https://bridge.testnet.n3.nahmii.io"
}
]
},
"testnet": true,
"slug": "nahmii-3-testnet"
} as const;
+35
View File
@@ -0,0 +1,35 @@
export default {
"name": "Tipboxcoin Testnet",
"chain": "TPBX",
"icon": {
"url": "ipfs://QmbiaHnR3fVVofZ7Xq2GYZxwHkLEy3Fh5qDtqnqXD6ACAh",
"width": 192,
"height": 192,
"format": "png"
},
"rpc": [
"https://tipboxcoin-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet-rpc.tipboxcoin.net"
],
"faucets": [
"https://faucet.tipboxcoin.net"
],
"nativeCurrency": {
"name": "Tipboxcoin",
"symbol": "TPBX",
"decimals": 18
},
"infoURL": "https://tipboxcoin.net",
"shortName": "TPBXt",
"chainId": 4141,
"networkId": 4141,
"explorers": [
{
"name": "Tipboxcoin",
"url": "https://testnet.tipboxcoin.net",
"standard": "EIP3091"
}
],
"testnet": true,
"slug": "tipboxcoin-testnet"
} as const;
+30
View File
@@ -0,0 +1,30 @@
export default {
"name": "BeanEco SmartChain",
"title": "BESC Mainnet",
"chain": "BESC",
"rpc": [
"https://beaneco-smartchain.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://mainnet-rpc.bescscan.io"
],
"faucets": [
"faucet.bescscan.ion"
],
"nativeCurrency": {
"name": "BeanEco SmartChain",
"symbol": "BESC",
"decimals": 18
},
"infoURL": "besceco.finance",
"shortName": "BESC",
"chainId": 535037,
"networkId": 535037,
"explorers": [
{
"name": "bescscan",
"url": "https://Bescscan.io",
"standard": "EIP3091"
}
],
"testnet": false,
"slug": "beaneco-smartchain"
} as const;
+34
View File
@@ -0,0 +1,34 @@
export default {
"name": "Hika Network Testnet",
"title": "Hika Network Testnet",
"chain": "HIK",
"icon": {
"url": "ipfs://QmW44FPm3CMM2JDs8BQxLNvUtykkUtrGkQkQsUDJSi3Gmp",
"width": 350,
"height": 84,
"format": "png"
},
"rpc": [
"https://hika-network-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc-testnet.hika.network/"
],
"faucets": [],
"nativeCurrency": {
"name": "Hik Token",
"symbol": "HIK",
"decimals": 18
},
"infoURL": "https://hika.network/",
"shortName": "hik",
"chainId": 5729,
"networkId": 5729,
"explorers": [
{
"name": "Hika Network Testnet Explorer",
"url": "https://scan-testnet.hika.network",
"standard": "none"
}
],
"testnet": true,
"slug": "hika-network-testnet"
} as const;
+27
View File
@@ -0,0 +1,27 @@
export default {
"name": "Graphlinq Blockchain Mainnet",
"chain": "GLQ Blockchain",
"rpc": [
"https://graphlinq-blockchain.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://glq-dataseed.graphlinq.io"
],
"faucets": [],
"nativeCurrency": {
"name": "GLQ",
"symbol": "GLQ",
"decimals": 18
},
"infoURL": "https://graphlinq.io",
"shortName": "glq",
"chainId": 614,
"networkId": 614,
"explorers": [
{
"name": "GLQ Explorer",
"url": "https://explorer.graphlinq.io",
"standard": "none"
}
],
"testnet": false,
"slug": "graphlinq-blockchain"
} as const;
+6
View File
@@ -18,6 +18,12 @@ export default {
"shortName": "bakerloo-0",
"chainId": 65010000,
"networkId": 65010000,
"icon": {
"url": "ipfs://Qme5nxFZZoNNpiT8u9WwcBot4HyLTg2jxMxRnsbc5voQwB",
"width": 1000,
"height": 1000,
"format": "png"
},
"explorers": [
{
"name": "autonity-blockscout",
+6
View File
@@ -18,6 +18,12 @@ export default {
"shortName": "piccadilly-0",
"chainId": 65100000,
"networkId": 65100000,
"icon": {
"url": "ipfs://Qme5nxFZZoNNpiT8u9WwcBot4HyLTg2jxMxRnsbc5voQwB",
"width": 1000,
"height": 1000,
"format": "png"
},
"explorers": [
{
"name": "autonity-blockscout",
-27
View File
@@ -1,27 +0,0 @@
export default {
"name": "SiriusNet",
"chain": "SIN",
"rpc": [
"https://siriusnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://u0tnafcv6j:o2T045sxuCNXL878RDQLp5__Zj-es2cvdjtgkl4etn0@u0v7kwtvtg-u0wj114sve-rpc.us0-aws.kaleido.io/"
],
"faucets": [],
"nativeCurrency": {
"name": "MCD",
"symbol": "MCD",
"decimals": 18
},
"infoURL": "https://macaucasinolisboa.xyz",
"shortName": "mcl",
"chainId": 67390,
"networkId": 67390,
"explorers": [
{
"name": "siriusnetscan",
"url": "https://siriusnet.tryethernal.com",
"standard": "EIP3091"
}
],
"testnet": false,
"slug": "siriusnet"
} as const;
+37
View File
@@ -0,0 +1,37 @@
export default {
"name": "KLYNTAR",
"chain": "KLY",
"rpc": [
"https://klyntar.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://evm.klyntar.org/kly_evm_rpc",
"https://evm.klyntarscan.org/kly_evm_rpc"
],
"faucets": [],
"nativeCurrency": {
"name": "KLYNTAR",
"symbol": "KLY",
"decimals": 18
},
"features": [
{
"name": "EIP155"
},
{
"name": "EIP1559"
}
],
"infoURL": "https://klyntar.org",
"shortName": "kly",
"chainId": 7331,
"networkId": 7331,
"icon": {
"url": "ipfs://QmaDr9R6dKnZLsogRxojjq4dwXuXcudR8UeTZ8Nq553K4u",
"width": 400,
"height": 400,
"format": "png"
},
"explorers": [],
"status": "incubating",
"testnet": false,
"slug": "klyntar"
} as const;
+3 -1
View File
@@ -11,7 +11,9 @@ export default {
"https://bear-network-chain-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://brnkc-test.bearnetwork.net"
],
"faucets": [],
"faucets": [
"https://faucet.bearnetwork.net"
],
"nativeCurrency": {
"name": "Bear Network Chain Testnet Token",
"symbol": "tBRNKC",
+7 -2
View File
@@ -24,8 +24,13 @@ export default {
"standard": "none"
},
{
"name": "Canto Cosmos Explorer (BigDipper)",
"url": "https://cosmos.explorer.canto.io",
"name": "Canto Cosmos Explorer",
"url": "https://cosmos-explorers.neobase.one",
"standard": "none"
},
{
"name": "Canto EVM Explorer (Blockscout)",
"url": "https://tuber.build",
"standard": "none"
}
],
+14
View File
@@ -3,6 +3,9 @@ export default {
"chain": "KLAY",
"rpc": [
"https://klaytn-cypress.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://klaytn.blockpi.network/v1/rpc/public",
"https://klaytn-mainnet-rpc.allthatnode.com:8551",
"https://public-en-cypress.klaytn.net",
"https://public-node-api.klaytnapi.com/v1/cypress"
],
"faucets": [],
@@ -17,12 +20,23 @@ export default {
"networkId": 8217,
"slip44": 8217,
"explorers": [
{
"name": "klaytnfinder",
"url": "https://www.klaytnfinder.io/",
"standard": "none"
},
{
"name": "Klaytnscope",
"url": "https://scope.klaytn.com",
"standard": "none"
}
],
"icon": {
"format": "png",
"url": "ipfs://bafkreigtgdivlmfvf7trqjqy4vkz2d26xk3iif6av265v4klu5qavsugm4",
"height": 1000,
"width": 1000
},
"testnet": false,
"slug": "klaytn-cypress"
} as const;
+24
View File
@@ -0,0 +1,24 @@
export default {
"name": "Base",
"chain": "ETH",
"rpc": [],
"faucets": [],
"nativeCurrency": {
"name": "Ether",
"symbol": "ETH",
"decimals": 18
},
"infoURL": "https://base.org",
"shortName": "base",
"chainId": 8453,
"networkId": 8453,
"status": "incubating",
"icon": {
"url": "ipfs://QmW5Vn15HeRkScMfPcW12ZdZcC2yUASpu6eCsECRdEmjjj/base-512.png",
"height": 512,
"width": 512,
"format": "png"
},
"testnet": false,
"slug": "base"
} as const;
+40
View File
@@ -0,0 +1,40 @@
export default {
"name": "Base Goerli Testnet",
"chain": "ETH",
"rpc": [
"https://base-goerli.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://goerli.base.org"
],
"faucets": [
"https://www.coinbase.com/faucets/base-ethereum-goerli-faucet"
],
"nativeCurrency": {
"name": "Goerli Ether",
"symbol": "ETH",
"decimals": 18
},
"infoURL": "https://base.org",
"shortName": "basegor",
"chainId": 84531,
"networkId": 84531,
"explorers": [
{
"name": "basescout",
"url": "https://base-goerli.blockscout.com",
"standard": "none"
},
{
"name": "basescan",
"url": "https://goerli.basescan.org",
"standard": "none"
}
],
"testnet": true,
"icon": {
"url": "ipfs://QmW5Vn15HeRkScMfPcW12ZdZcC2yUASpu6eCsECRdEmjjj/base-512.png",
"height": 512,
"width": 512,
"format": "png"
},
"slug": "base-goerli"
} as const;
+33
View File
@@ -0,0 +1,33 @@
export default {
"name": "MARO Blockchain Mainnet",
"chain": "MARO Blockchain",
"icon": {
"url": "ipfs://bafkreig47k53aipns6nu3u5fxpysp7mogzk6zyvatgpbam7yut3yvtuefa",
"width": 160,
"height": 160,
"format": "png"
},
"rpc": [
"https://maro-blockchain.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc-mainnet.ma.ro"
],
"faucets": [],
"nativeCurrency": {
"name": "MARO",
"symbol": "MARO",
"decimals": 18
},
"infoURL": "https://ma.ro/",
"shortName": "maro",
"chainId": 8848,
"networkId": 8848,
"explorers": [
{
"name": "MARO Scan",
"url": "https://scan.ma.ro/#",
"standard": "none"
}
],
"testnet": false,
"slug": "maro-blockchain"
} as const;
+1 -1
View File
@@ -9,7 +9,7 @@ export default {
},
"rpc": [
"https://dogcoin-testnet.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://testnet-rpc.dogcoin.network"
"https://testnet-rpc.dogcoin.me"
],
"faucets": [
"https://faucet.dogcoin.network"
+38
View File
@@ -0,0 +1,38 @@
export default {
"name": "Bitkub Chain",
"chain": "BKC",
"icon": {
"url": "ipfs://QmYFYwyquipwc9gURQGcEd4iAq7pq15chQrJ3zJJe9HuFT",
"width": 1000,
"height": 1000,
"format": "png"
},
"rpc": [
"https://bitkub-chain.rpc.thirdweb.com/${THIRDWEB_API_KEY}",
"https://rpc.bitkubchain.io",
"wss://wss.bitkubchain.io"
],
"faucets": [],
"nativeCurrency": {
"name": "Bitkub Coin",
"symbol": "KUB",
"decimals": 18
},
"infoURL": "https://www.bitkubchain.com/",
"shortName": "bkc",
"chainId": 96,
"networkId": 96,
"explorers": [
{
"name": "Bitkub Chain Explorer",
"url": "https://bkcscan.com",
"standard": "none",
"icon": "bkc"
}
],
"redFlags": [
"reusedChainId"
],
"testnet": false,
"slug": "bitkub-chain"
} as const;
+27
View File
@@ -0,0 +1,27 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Omit<Chain, "slug">} */
export default {
name: "Localhost",
chain: "ETH",
rpc: ["http://localhost:8545"],
faucets: [],
nativeCurrency: {
name: "Ether",
symbol: "ETH",
decimals: 18,
},
// hard code eth icon for now
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/ethereum/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
shortName: "local",
chainId: 1337,
networkId: 1337,
testnet: true,
};
+14
View File
@@ -0,0 +1,14 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/ethereum/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
rpc: ["https://eth-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}"],
};
+17
View File
@@ -0,0 +1,17 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/optimism/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
rpc: [
"https://optimism-mainnet.infura.io/v3/${INFURA_API_KEY}",
"https://opt-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}",
],
};
+13
View File
@@ -0,0 +1,13 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
chainId: 122,
icon: {
url: "ipfs://QmQg8aqyeaMfHvjzFDtZkb8dUNRYhFezPp8UYVc1HnLpRW/green.png",
format: "png",
width: 512,
height: 512,
},
};
+14
View File
@@ -0,0 +1,14 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
chainId: 123,
testnet: true,
icon: {
url: "ipfs://QmQg8aqyeaMfHvjzFDtZkb8dUNRYhFezPp8UYVc1HnLpRW/green.png",
format: "png",
width: 512,
height: 512,
},
};
+17
View File
@@ -0,0 +1,17 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/polygon/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
rpc: [
"https://polygon-mainnet.infura.io/v3/${INFURA_API_KEY}",
"https://polygon-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}",
],
};
@@ -0,0 +1,13 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
chainId: 192837465,
icon: {
url: "ipfs://Qmc9AJGg9aNhoH56n3deaZeUc8Ty1jDYJsW6Lu6hgSZH4S",
height: 512,
width: 512,
format: "png",
},
};
+13
View File
@@ -0,0 +1,13 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/fantom/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
};
@@ -0,0 +1,15 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
chainId: 356256156,
testnet: true,
icon: {
url: "ipfs://Qmc9AJGg9aNhoH56n3deaZeUc8Ty1jDYJsW6Lu6hgSZH4S",
height: 512,
width: 512,
format: "png",
},
faucets: ["https://testnet-faucet.gather.network/"],
};
+13
View File
@@ -0,0 +1,13 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/fantom/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
};
+17
View File
@@ -0,0 +1,17 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/optimism/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
rpc: [
"https://optimism-goerli.infura.io/v3/${INFURA_API_KEY}",
"https://opt-goerli.g.alchemy.com/v2/${ALCHEMY_API_KEY}",
],
};
+14
View File
@@ -0,0 +1,14 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/arbitrum/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
rpc: ["https://arb-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}"],
};
+17
View File
@@ -0,0 +1,17 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/arbitrum/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
rpc: [
"https://abritrum-goerli.infura.io/v3/${INFURA_API_KEY}",
"https://arb-goerli.g.alchemy.com/v2/${ALCHEMY_API_KEY}",
],
};
+14
View File
@@ -0,0 +1,14 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/avalanche/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
rpc: ["https://avalanche-fuji.infura.io/v3/${INFURA_API_KEY}"],
};
+14
View File
@@ -0,0 +1,14 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/avalanche/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
rpc: ["https://avalanche-mainnet.infura.io/v3/${INFURA_API_KEY}"],
};
+14
View File
@@ -0,0 +1,14 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/ethereum/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
rpc: ["https://eth-goerli.g.alchemy.com/v2/${ALCHEMY_API_KEY}"],
};
+13
View File
@@ -0,0 +1,13 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/binance-coin/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
};
+17
View File
@@ -0,0 +1,17 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/polygon/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
rpc: [
"https://polygon-mumbai.infura.io/v3/${INFURA_API_KEY}",
"https://polygon-mumbai.g.alchemy.com/v2/${ALCHEMY_API_KEY}",
],
};
+25
View File
@@ -0,0 +1,25 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
chainId: 8217,
rpc: [
"https://public-en-cypress.klaytn.net",
"https://klaytn-mainnet-rpc.allthatnode.com:8551",
"https://klaytn.blockpi.network/v1/rpc/public",
],
explorers: [
{
name: "klaytnfinder",
url: "https://www.klaytnfinder.io/",
standard: "none",
},
],
icon: {
format: "png",
url: "ipfs://bafkreigtgdivlmfvf7trqjqy4vkz2d26xk3iif6av265v4klu5qavsugm4",
height: 1000,
width: 1000,
},
};
+13
View File
@@ -0,0 +1,13 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
chainId: 8453,
icon: {
url: "ipfs://QmW5Vn15HeRkScMfPcW12ZdZcC2yUASpu6eCsECRdEmjjj/base-512.png",
height: 512,
width: 512,
format: "png",
},
};
+14
View File
@@ -0,0 +1,14 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
chainId: 84531,
testnet: true,
icon: {
url: "ipfs://QmW5Vn15HeRkScMfPcW12ZdZcC2yUASpu6eCsECRdEmjjj/base-512.png",
height: 512,
width: 512,
format: "png",
},
};
+13
View File
@@ -0,0 +1,13 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Partial<Chain>} */
export default {
icon: {
url: "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/binance-coin/512.png",
height: 512,
width: 512,
format: "png",
sizes: [16, 32, 64, 128, 256, 512],
},
};
-153
View File
@@ -1,153 +0,0 @@
{
"1": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/ethereum/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
},
"rpc": ["https://eth-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}"]
},
"5": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/ethereum/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
},
"rpc": ["https://eth-goerli.g.alchemy.com/v2/${ALCHEMY_API_KEY}"]
},
"137": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/polygon/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
},
"rpc": [
"https://polygon-mainnet.infura.io/v3/${INFURA_API_KEY}",
"https://polygon-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}"
]
},
"80001": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/polygon/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
},
"rpc": [
"https://polygon-mumbai.infura.io/v3/${INFURA_API_KEY}",
"https://polygon-mumbai.g.alchemy.com/v2/${ALCHEMY_API_KEY}"
]
},
"250": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/fantom/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
}
},
"4002": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/fantom/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
}
},
"43114": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/avalanche/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
},
"rpc": ["https://avalanche-mainnet.infura.io/v3/${INFURA_API_KEY}"]
},
"43113": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/avalanche/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
},
"rpc": ["https://avalanche-fuji.infura.io/v3/${INFURA_API_KEY}"]
},
"10": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/optimism/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
},
"rpc": [
"https://optimism-mainnet.infura.io/v3/${INFURA_API_KEY}",
"https://opt-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}"
]
},
"420": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/optimism/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
},
"rpc": [
"https://optimism-goerli.infura.io/v3/${INFURA_API_KEY}",
"https://opt-goerli.g.alchemy.com/v2/${ALCHEMY_API_KEY}"
]
},
"42161": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/arbitrum/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
},
"rpc": ["https://arb-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}"]
},
"421613": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/arbitrum/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
},
"rpc": [
"https://abritrum-goerli.infura.io/v3/${INFURA_API_KEY}",
"https://arb-goerli.g.alchemy.com/v2/${ALCHEMY_API_KEY}"
]
},
"56": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/binance-coin/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
}
},
"97": {
"icon": {
"url": "ipfs://QmcxZHpyJa8T4i63xqjPYrZ6tKrt55tZJpbXcjSDKuKaf9/binance-coin/512.png",
"height": 512,
"width": 512,
"format": "png",
"sizes": [16, 32, 64, 128, 256, 512]
}
}
}
+8 -5
View File
@@ -1,6 +1,6 @@
{
"name": "@thirdweb-dev/chains",
"version": "0.1.0",
"version": "0.1.6",
"main": "dist/thirdweb-dev-chains.cjs.js",
"module": "dist/thirdweb-dev-chains.esm.js",
"exports": {
@@ -18,20 +18,23 @@
"author": "thirdweb eng <[email protected]>",
"devDependencies": {
"axios": "^0.27.2",
"jest": "^29.4.3",
"plop": "^3.1.2",
"typescript": "^4.7.4"
},
"preconstruct": {
"entrypoints": [
"index.ts"
],
"___experimentalFlags_WILL_CHANGE_IN_PATCH": {
"exports": true
},
"exports": true
},
"sideEffects": false,
"scripts": {
"build": "node ./scripts/generate-package.mjs && tsc && preconstruct build",
"push": "yalc push"
"push": "yalc push",
"plop": "plop",
"add-chain": "plop add-chain",
"override-chain": "plop override-chain",
"test": "jest"
}
}
@@ -0,0 +1,11 @@
// @ts-check
/** @typedef { import("../../src/types").Chain } Chain */
/** @type {Omit<Chain, "slug">} */
export default {
{{> namePartial}}
{{> chainPartial}}
{{> shortNamePartial}}
{{> chainIdPartial}}
{{> isTestnetPartial}}
};

Some files were not shown because too many files have changed in this diff Show More