From 1304ba398257e039ecaf6c7ab1a8f717d69408e0 Mon Sep 17 00:00:00 2001 From: Karim <98668332+khadni@users.noreply.github.com> Date: Mon, 17 Feb 2025 10:28:29 -0500 Subject: [PATCH 1/4] df integrations feb 17 --- public/changelog.json | 12 ++++++ .../QuickLinks/data/productChainLinks.ts | 1 + .../build/ccip/foundry/local-simulator.mdx | 2 +- .../chainlink-nodes/v1/node-config.mdx | 8 ++-- src/content/vrf/v2-5/migration-from-v2.mdx | 2 +- src/features/data/chains.ts | 39 +++++++++++++++++++ 6 files changed, 58 insertions(+), 6 deletions(-) diff --git a/public/changelog.json b/public/changelog.json index c1a00c6d242..75d2cffded0 100644 --- a/public/changelog.json +++ b/public/changelog.json @@ -1,4 +1,16 @@ [ + { + "category": "integration", + "changes": [], + "date": "2025-02-17", + "description": "Chainlink Data Feeds expands support to new blockchains:\n\n- Ink Sepolia testnet\n- Mantle testnet\n- Ronin Saigon testnet\n- Sonic Blaze testnet\n\nView the available price feed information on the [Price Feed Addresses](https://docs.chain.link/data-feeds/price-feeds/addresses?network=ink&page=1) page.", + "relatedNetworks": ["ink", "mantle", "ronin", "sonic"], + "relatedTokens": [], + "title": "Data Feeds Expands to New Blockchains", + "topic": "data", + "subTopic": "data-feeds", + "urls": [] + }, { "category": "integration", "changes": [], diff --git a/src/components/QuickLinks/data/productChainLinks.ts b/src/components/QuickLinks/data/productChainLinks.ts index c896714041a..f08c37db07c 100644 --- a/src/components/QuickLinks/data/productChainLinks.ts +++ b/src/components/QuickLinks/data/productChainLinks.ts @@ -79,6 +79,7 @@ export const productChainLinks: ProductChainLinks = { fantom: "/data-feeds/price-feeds/addresses?network=fantom", "gnosis-chain": "/data-feeds/price-feeds/addresses?network=gnosis-chain", hedera: "/data-feeds/price-feeds/addresses?network=hedera", + ink: "/data-feeds/price-feeds/addresses?network=ink", linea: "/data-feeds/price-feeds/addresses?network=linea", mantle: "/data-feeds/price-feeds/addresses?network=mantle", metis: "/data-feeds/price-feeds/addresses?network=metis", diff --git a/src/content/chainlink-local/build/ccip/foundry/local-simulator.mdx b/src/content/chainlink-local/build/ccip/foundry/local-simulator.mdx index 0100c1bcde5..5c565134632 100644 --- a/src/content/chainlink-local/build/ccip/foundry/local-simulator.mdx +++ b/src/content/chainlink-local/build/ccip/foundry/local-simulator.mdx @@ -112,7 +112,7 @@ The `setUp()` function is invoked before each test case to reinitialize all the ```solidity alice = makeAddr("alice") - Bob = makeAddr("Bob") + bob = makeAddr("bob") ``` 1. All the variables are stored in the contract state for use in the test cases. diff --git a/src/content/chainlink-nodes/v1/node-config.mdx b/src/content/chainlink-nodes/v1/node-config.mdx index e2902e7720e..6f08799386e 100644 --- a/src/content/chainlink-nodes/v1/node-config.mdx +++ b/src/content/chainlink-nodes/v1/node-config.mdx @@ -1398,7 +1398,7 @@ PeerID = '12D3KooWMoejJznyDuEk5aX6GvbjaG12UzeornPCBNzMRqdwrFJw' # Example TraceLogging = false # Default ``` -P2P has a versioned networking stack. Currenly only `[P2P.V2]` is supported. +P2P has a versioned networking stack. Currently only `[P2P.V2]` is supported. All nodes in the OCR network should share the same networking stack. ### IncomingMessageBufferSize @@ -13984,7 +13984,7 @@ MinAttempts = 3 # Example Enabled = false # Default ``` -Enabled enables or disables automatically purging transactions that have been idenitified as terminally stuck (will never be included on-chain). This feature is only expected to be used by ZK chains. +Enabled enables or disables automatically purging transactions that have been identified as terminally stuck (will never be included on-chain). This feature is only expected to be used by ZK chains. ### DetectionApiUrl @@ -15155,7 +15155,7 @@ GasLimitMultiplier scales the estimated gas limit. MaxMsgsPerBatch = 100 # Default ``` -MaxMsgsPerBatch limits the numbers of mesages per transaction batch. +MaxMsgsPerBatch limits the numbers of messages per transaction batch. ### OCR2CachePollPeriod @@ -15413,7 +15413,7 @@ DISCLAIMER: 1:1 ratio between n and RPC calls. It executes once every 'BlockHist ComputeUnitLimitDefault = 200_000 # Default ``` -ComputeUnitLimitDefault is the compute units limit applied to transactions unless overriden during the txm enqueue +ComputeUnitLimitDefault is the compute units limit applied to transactions unless overridden during the txm enqueue ### EstimateComputeUnitLimit diff --git a/src/content/vrf/v2-5/migration-from-v2.mdx b/src/content/vrf/v2-5/migration-from-v2.mdx index b9ce0eb08ab..c946a364bde 100644 --- a/src/content/vrf/v2-5/migration-from-v2.mdx +++ b/src/content/vrf/v2-5/migration-from-v2.mdx @@ -113,7 +113,7 @@ To modify your existing smart contract code to work with VRF v2.5, complete the 1. Import the VRF v2.5 coordinator, [`VRFCoordinatorV2_5`](https://github.com/smartcontractkit/chainlink/blob/develop/contracts/src/v0.8/vrf/dev/VRFCoordinatorV2_5.sol), and update any old references to the VRF V2 coordinator in your contract. -1. Add a `VRFConsumerBaseV2Plus` constructor, passing in the LINK token address for the network you're using. +1. Add a `VRFConsumerBaseV2Plus` constructor, passing in the VRF coordinator address for the network you're using. 1. Update your `requestRandomWords` function calls to reflect the new request structure for VRF v2.5. Make sure to include the new `extraArgs` part of the `VRFV2PlusClient.RandomWordsRequest` object, and specify whether or not you want to pay for VRF requests using native tokens: diff --git a/src/features/data/chains.ts b/src/features/data/chains.ts index 088ca77c6d0..56421fa73de 100644 --- a/src/features/data/chains.ts +++ b/src/features/data/chains.ts @@ -579,6 +579,13 @@ export const CHAINS: Chain[] = [ rddUrl: "https://reference-data-directory.vercel.app/feeds-sonic-mainnet.json", queryString: "sonic-mainnet", }, + { + name: "Sonic Blaze testnet", + explorerUrl: "https://testnet.sonicscan.org/address/%s", + networkType: "testnet", + rddUrl: "https://reference-data-directory.vercel.app/feeds-sonic-testnet-blaze.json", + queryString: "sonic-testnet", + }, ], }, { @@ -597,6 +604,13 @@ export const CHAINS: Chain[] = [ rddUrl: "https://reference-data-directory.vercel.app/feeds-ethereum-mainnet-mantle-1.json", queryString: "mantle-mainnet", }, + { + name: "Mantle testnet", + explorerUrl: "https://sepolia.mantlescan.xyz/address/%s", + networkType: "testnet", + rddUrl: "https://reference-data-directory.vercel.app/feeds-ethereum-testnet-sepolia-mantle-1.json", + queryString: "mantle-testnet", + }, ], }, { @@ -640,6 +654,13 @@ export const CHAINS: Chain[] = [ rddUrl: "https://reference-data-directory.vercel.app/feeds-ronin-mainnet.json", queryString: "ronin-mainnet", }, + { + name: "Ronin Saigon testnet", + explorerUrl: "https://saigon-app.roninchain.com/address/%s", + networkType: "testnet", + rddUrl: "https://reference-data-directory.vercel.app/feeds-ronin-saigon-testnet.json", + queryString: "ronin-mainnet", + }, ], }, { @@ -678,6 +699,24 @@ export const CHAINS: Chain[] = [ }, ], }, + { + page: "ink", + label: "Ink", + title: "Ink Data Feeds", + img: "/assets/chains/ink.svg", + networkStatusUrl: "https://status.inkonchain.com/", + tags: ["default"], + supportedFeatures: ["feeds"], + networks: [ + { + name: "Ink Sepolia testnet", + explorerUrl: "https://explorer-sepolia.inkonchain.com/address/%s", + networkType: "testnet", + rddUrl: "https://reference-data-directory.vercel.app/feeds-ink-testnet-sepolia.json", + queryString: "ink-sepolia", + }, + ], + }, ] // All mainnet feeds. Used for deprecated feeds. From 5682fc1c1de1af28bd7d4048a48c656588ff7d66 Mon Sep 17 00:00:00 2001 From: Karim <98668332+khadni@users.noreply.github.com> Date: Thu, 20 Feb 2025 11:39:55 -0500 Subject: [PATCH 2/4] Merge remote-tracking branch 'origin' into df-integrations-feb-17 --- .github/workflows/test.yml | 6 + package-lock.json | 62 +- package.json | 10 +- public/assets/chains/aptos.svg | 8 +- public/assets/chains/astar.svg | 160 ++-- public/assets/chains/bitlayer.svg | 26 +- public/assets/chains/ethena.svg | 4 + public/assets/chains/fantom.svg | 5 +- public/assets/chains/hedera.svg | 5 +- public/assets/chains/linea.svg | 26 +- public/assets/chains/moonbeam.svg | 27 +- public/assets/chains/moonriver.svg | 28 +- public/assets/chains/opbnb.svg | 24 +- public/assets/chains/solana.svg | 38 +- public/assets/chains/starknet.svg | 14 +- public/assets/chains/treasure.svg | 10 +- public/assets/chains/wemix.svg | 24 +- public/assets/chains/zksync.svg | 26 +- public/changelog.json | 54 +- .../QuickLinks/data/productChainLinks.ts | 12 +- src/components/ReleaseNotes.astro | 8 +- .../data/ccip/v1_2_0/mainnet/chains.json | 100 +++ .../data/ccip/v1_2_0/mainnet/lanes.json | 796 +++++++++++++++++- .../data/ccip/v1_2_0/mainnet/tokens.json | 231 ++++- .../resources/link-token-contracts.mdx | 42 + src/features/feeds/components/Tables.tsx | 317 +------ .../feeds/data/StreamsNetworksData.ts | 361 ++++++++ src/scripts/fix-remix-urls.ts | 37 +- 28 files changed, 1797 insertions(+), 664 deletions(-) create mode 100644 public/assets/chains/ethena.svg create mode 100644 src/features/feeds/data/StreamsNetworksData.ts diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 96f6a6e9dbb..00c87aed76a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -6,6 +6,12 @@ concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true +# Set default permissions as restrictive as possible +permissions: + actions: write # Required for upload-artifact + contents: read # Required for checkout and other read operations + checks: write # Required for test results + jobs: # Setup job to install and cache dependencies setup: diff --git a/package-lock.json b/package-lock.json index 8aee14be658..6aba66f4ea6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -43,14 +43,14 @@ "lodash": "^4.17.21", "marked": "^15.0.7", "nanostores": "^0.11.4", - "preact": "^10.25.4", + "preact": "^10.26.2", "react-instantsearch": "^7.15.3", "rehype-autolink-headings": "^7.1.0", "rehype-slug": "^6.0.0", "rehype-wrap-all": "^1.1.0", "remark-directive": "^3.0.1", - "swagger-ui-dist": "^5.18.3", - "swagger-ui-react": "^5.18.3", + "swagger-ui-dist": "^5.19.0", + "swagger-ui-react": "^5.19.0", "uuid": "^11.0.5" }, "devDependencies": { @@ -69,8 +69,8 @@ "@types/node": "^20.17.19", "@types/node-fetch": "^2.6.12", "@types/prismjs": "^1.26.5", - "@types/react": "^19.0.9", - "@types/react-dom": "^19.0.3", + "@types/react": "^19.0.10", + "@types/react-dom": "^19.0.4", "@types/swagger-ui-dist": "^3.30.5", "@types/swagger-ui-react": "^5.18.0", "@typescript-eslint/eslint-plugin": "^5.62.0", @@ -12206,18 +12206,18 @@ } }, "node_modules/@types/react": { - "version": "19.0.9", - "resolved": "https://registry.npmjs.org/@types/react/-/react-19.0.9.tgz", - "integrity": "sha512-FedNTYgmMwSZmD1Sru/W1gJKuiYCN/3SuBkmZkcxX+FpO5zL76B22A9YNfAKg4HQO3Neh/30AiynP6BELdU0qQ==", + "version": "19.0.10", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.0.10.tgz", + "integrity": "sha512-JuRQ9KXLEjaUNjTWpzuR231Z2WpIwczOkBEIvbHNCzQefFIT0L8IqE6NV6ULLyC1SI/i234JnDoMkfg+RjQj2g==", "license": "MIT", "dependencies": { "csstype": "^3.0.2" } }, "node_modules/@types/react-dom": { - "version": "19.0.3", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.0.3.tgz", - "integrity": "sha512-0Knk+HJiMP/qOZgMyNFamlIjw9OFCsyC2ZbigmEEyXXixgre6IQpm/4V+r3qH4GC1JPvRJKInw+on2rV6YZLeA==", + "version": "19.0.4", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.0.4.tgz", + "integrity": "sha512-4fSQ8vWFkg+TGhePfUzVmat3eC14TXYSsiiDSLI0dVLsrm9gZFABjPy/Qu6TKgl1tq1Bu1yDsuQgY3A3DOjCcg==", "license": "MIT", "peerDependencies": { "@types/react": "^19.0.0" @@ -12272,6 +12272,13 @@ "@types/react": "*" } }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "license": "MIT", + "optional": true + }, "node_modules/@types/unist": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", @@ -16353,10 +16360,13 @@ } }, "node_modules/dompurify": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.6.tgz", - "integrity": "sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ==", - "license": "(MPL-2.0 OR Apache-2.0)" + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.4.tgz", + "integrity": "sha512-ysFSFEDVduQpyhzAob/kkuJjf5zWkZD8/A9ywSp1byueyuCfHamrCBa14/Oc2iiB0e51B+NpxSl5gmzn+Ms/mg==", + "license": "(MPL-2.0 OR Apache-2.0)", + "optionalDependencies": { + "@types/trusted-types": "^2.0.7" + } }, "node_modules/domutils": { "version": "3.2.2", @@ -27212,9 +27222,9 @@ "license": "MIT" }, "node_modules/preact": { - "version": "10.25.4", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.25.4.tgz", - "integrity": "sha512-jLdZDb+Q+odkHJ+MpW/9U5cODzqnB+fy2EiHSZES7ldV5LK7yjlVzTp7R8Xy6W6y75kfK8iWYtFVH7lvjwrCMA==", + "version": "10.26.2", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.26.2.tgz", + "integrity": "sha512-0gNmv4qpS9HaN3+40CLBAnKe0ZfyE4ZWo5xKlC1rVrr0ckkEvJvAQqKaHANdFKsGstoxrY4AItZ7kZSGVoVjgg==", "license": "MIT", "funding": { "type": "opencollective", @@ -31181,28 +31191,28 @@ } }, "node_modules/swagger-ui-dist": { - "version": "5.18.3", - "resolved": "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-5.18.3.tgz", - "integrity": "sha512-G33HFW0iFNStfY2x6QXO2JYVMrFruc8AZRX0U/L71aA7WeWfX2E5Nm8E/tsipSZJeIZZbSjUDeynLK/wcuNWIw==", + "version": "5.19.0", + "resolved": "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-5.19.0.tgz", + "integrity": "sha512-bSVZeYaqanMFeW5ZY3+EejFbsjkjazYxm1I7Lz3xayYz5XU3m2aUzvuPC0jI95WCQdduszHYV3ER4buQoy8DXA==", "license": "Apache-2.0", "dependencies": { "@scarf/scarf": "=1.4.0" } }, "node_modules/swagger-ui-react": { - "version": "5.18.3", - "resolved": "https://registry.npmjs.org/swagger-ui-react/-/swagger-ui-react-5.18.3.tgz", - "integrity": "sha512-TlcIdQlcbdvRpUP3+B/J08ARM6cC29eMRrNxhTjP/MtYlbuGg6DWET7Is65YTlsk3TE6NhRYVgf3sdqcLooIBw==", + "version": "5.19.0", + "resolved": "https://registry.npmjs.org/swagger-ui-react/-/swagger-ui-react-5.19.0.tgz", + "integrity": "sha512-8O8KImDLt4fIfSWzIQ/m3Uo8JHsTxXOne1SwBZBQPA6tG0wPcPWePDEaRktp27T6bNXQruag4bp3rD6hJImHAA==", "license": "Apache-2.0", "dependencies": { - "@babel/runtime-corejs3": "^7.24.7", + "@babel/runtime-corejs3": "^7.26.9", "@braintree/sanitize-url": "=7.0.4", "@scarf/scarf": "=1.4.0", "base64-js": "^1.5.1", "classnames": "^2.5.1", "css.escape": "1.5.1", "deep-extend": "0.6.0", - "dompurify": "=3.1.6", + "dompurify": "=3.2.4", "ieee754": "^1.2.1", "immutable": "^3.x.x", "js-file-download": "^0.4.12", diff --git a/package.json b/package.json index 3e9b9f78458..d5f8e15f3ff 100644 --- a/package.json +++ b/package.json @@ -68,14 +68,14 @@ "lodash": "^4.17.21", "marked": "^15.0.7", "nanostores": "^0.11.4", - "preact": "^10.25.4", + "preact": "^10.26.2", "react-instantsearch": "^7.15.3", "rehype-autolink-headings": "^7.1.0", "rehype-slug": "^6.0.0", "rehype-wrap-all": "^1.1.0", "remark-directive": "^3.0.1", - "swagger-ui-dist": "^5.18.3", - "swagger-ui-react": "^5.18.3", + "swagger-ui-dist": "^5.19.0", + "swagger-ui-react": "^5.19.0", "uuid": "^11.0.5" }, "devDependencies": { @@ -94,8 +94,8 @@ "@types/node": "^20.17.19", "@types/node-fetch": "^2.6.12", "@types/prismjs": "^1.26.5", - "@types/react": "^19.0.9", - "@types/react-dom": "^19.0.3", + "@types/react": "^19.0.10", + "@types/react-dom": "^19.0.4", "@types/swagger-ui-dist": "^3.30.5", "@types/swagger-ui-react": "^5.18.0", "@typescript-eslint/eslint-plugin": "^5.62.0", diff --git a/public/assets/chains/aptos.svg b/public/assets/chains/aptos.svg index b7d712e5f60..bb9e0e45dd0 100644 --- a/public/assets/chains/aptos.svg +++ b/public/assets/chains/aptos.svg @@ -1 +1,7 @@ - \ No newline at end of file + + + + + + + diff --git a/public/assets/chains/astar.svg b/public/assets/chains/astar.svg index dc90a9d16b1..080711af060 100644 --- a/public/assets/chains/astar.svg +++ b/public/assets/chains/astar.svg @@ -1,147 +1,81 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - diff --git a/public/assets/chains/bitlayer.svg b/public/assets/chains/bitlayer.svg index b4aed533567..5ffd583c250 100644 --- a/public/assets/chains/bitlayer.svg +++ b/public/assets/chains/bitlayer.svg @@ -1,18 +1,10 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file + + + + + + + + + diff --git a/public/assets/chains/ethena.svg b/public/assets/chains/ethena.svg new file mode 100644 index 00000000000..b1782554b67 --- /dev/null +++ b/public/assets/chains/ethena.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/chains/fantom.svg b/public/assets/chains/fantom.svg index e501d1efe1e..039cbb48a4a 100644 --- a/public/assets/chains/fantom.svg +++ b/public/assets/chains/fantom.svg @@ -1 +1,4 @@ -fa \ No newline at end of file + + + + diff --git a/public/assets/chains/hedera.svg b/public/assets/chains/hedera.svg index 808b0a0fb9c..39a92a3bd6f 100644 --- a/public/assets/chains/hedera.svg +++ b/public/assets/chains/hedera.svg @@ -1 +1,4 @@ -hedera--logo \ No newline at end of file + + + + diff --git a/public/assets/chains/linea.svg b/public/assets/chains/linea.svg index 57b4b75b71b..f3563aa6bcf 100644 --- a/public/assets/chains/linea.svg +++ b/public/assets/chains/linea.svg @@ -1,23 +1,5 @@ - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file + + + + diff --git a/public/assets/chains/moonbeam.svg b/public/assets/chains/moonbeam.svg index c24d8a3e068..083069a52d3 100644 --- a/public/assets/chains/moonbeam.svg +++ b/public/assets/chains/moonbeam.svg @@ -1,21 +1,8 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + diff --git a/public/assets/chains/moonriver.svg b/public/assets/chains/moonriver.svg index 6419d25e5cd..0913c247b2f 100644 --- a/public/assets/chains/moonriver.svg +++ b/public/assets/chains/moonriver.svg @@ -1,17 +1,13 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + diff --git a/public/assets/chains/opbnb.svg b/public/assets/chains/opbnb.svg index 89bb95f0c4d..93e6e8faf41 100644 --- a/public/assets/chains/opbnb.svg +++ b/public/assets/chains/opbnb.svg @@ -1,19 +1,7 @@ - - - - - - - - - + + + + + + diff --git a/public/assets/chains/solana.svg b/public/assets/chains/solana.svg index bd349af26c7..f6a408caa67 100644 --- a/public/assets/chains/solana.svg +++ b/public/assets/chains/solana.svg @@ -1,28 +1,14 @@ - - - - - - - + + + + + + + + + + + - - - - - - - - - - - + diff --git a/public/assets/chains/starknet.svg b/public/assets/chains/starknet.svg index 4f612351762..6c9f8cb054c 100644 --- a/public/assets/chains/starknet.svg +++ b/public/assets/chains/starknet.svg @@ -1 +1,13 @@ - \ No newline at end of file + + + + + + + + + + + + + diff --git a/public/assets/chains/treasure.svg b/public/assets/chains/treasure.svg index 39174a136fb..9da1a249a1b 100644 --- a/public/assets/chains/treasure.svg +++ b/public/assets/chains/treasure.svg @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/public/assets/chains/wemix.svg b/public/assets/chains/wemix.svg index 1558b7bfa03..6caab1d6f6c 100644 --- a/public/assets/chains/wemix.svg +++ b/public/assets/chains/wemix.svg @@ -1,23 +1,13 @@ - - + + - + - - - - - - - - - - - - - - + + + + diff --git a/public/assets/chains/zksync.svg b/public/assets/chains/zksync.svg index 8dcea63a2c9..f392791a865 100644 --- a/public/assets/chains/zksync.svg +++ b/public/assets/chains/zksync.svg @@ -1,13 +1,21 @@ - - - - - - + + + + + - - - + + + + + + + + + + + + diff --git a/public/changelog.json b/public/changelog.json index 75d2cffded0..eea849e224a 100644 --- a/public/changelog.json +++ b/public/changelog.json @@ -2,8 +2,8 @@ { "category": "integration", "changes": [], - "date": "2025-02-17", - "description": "Chainlink Data Feeds expands support to new blockchains:\n\n- Ink Sepolia testnet\n- Mantle testnet\n- Ronin Saigon testnet\n- Sonic Blaze testnet\n\nView the available price feed information on the [Price Feed Addresses](https://docs.chain.link/data-feeds/price-feeds/addresses?network=ink&page=1) page.", + "date": "2025-02-20", + "description": "Chainlink Data Feeds expands support to new blockchains:\n\n- Ink Mainnet\n- Ink Sepolia testnet\n- Mantle testnet\n- Ronin Saigon testnet\n- Sonic Blaze testnet\n\nView the available price feed information on the [Price Feed Addresses](https://docs.chain.link/data-feeds/price-feeds/addresses?network=ink&page=1) page.", "relatedNetworks": ["ink", "mantle", "ronin", "sonic"], "relatedTokens": [], "title": "Data Feeds Expands to New Blockchains", @@ -11,6 +11,41 @@ "subTopic": "data-feeds", "urls": [] }, + { + "category": "integration", + "changes": [], + "date": "2025-02-19", + "description": "Chainlink Data Streams is available in Early Access for new blockchains:\n\n- Bob Mainnet\n- Bob Sepolia Testnet\n- Linea Mainnet\n- Linea Sepolia Testnet\n- Unichain Mainnet\n- Unichain Sepolia Testnet\n\nThe verifier proxy addresses and stream IDs are available on the [Stream Addresses](https://docs.chain.link/data-streams/crypto-streams) page.", + "relatedNetworks": ["bob", "linea", "unichain"], + "relatedTokens": [], + "title": "Data Streams Expands to New Blockchains", + "topic": "data", + "subTopic": "data-streams", + "urls": [] + }, + { + "category": "integration", + "changes": [], + "date": "2025-02-18", + "description": "Chainlink Data Streams is available in Early Access on Hashkey Chain Testnet. The verifier proxy address and stream IDs are available on the [Stream Addresses](https://docs.chain.link/data-streams/crypto-streams) page.", + "relatedNetworks": ["hashkey"], + "relatedTokens": [], + "title": "Data Streams on Hashkey Chain Testnet", + "topic": "data", + "subTopic": "data-streams", + "urls": [] + }, + { + "category": "integration", + "changes": [], + "date": "2025-02-18", + "description": "Chainlink CCIP expands support to new blockchains:\n\n- Merlin Mainnet\n- Fraxtal Mainnet\n- Unichain Mainnet\n- Core Mainnet\n- Berachain Mainnet\n\nCheck the [CCIP Directory](https://docs.chain.link/ccip/directory/mainnet) for more information.", + "relatedNetworks": ["merlin", "fraxtal", "unichain", "core", "berachain"], + "relatedTokens": [], + "topic": "ccip", + "title": "CCIP Expands to New Blockchains", + "urls": [] + }, { "category": "integration", "changes": [], @@ -97,8 +132,19 @@ "category": "integration", "changes": [], "date": "2025-02-07", - "description": "Chainlink CCIP expands support to new blockchains:\n\n- Bitlayer\n- Botanix\n- Corn Network\n- Hashkey Chain\n- Ink\n- Polygon zkEVM\n- Sei Network\n- Soneium\n- XLayer\n\nCheck the [mainnet CCIP Directory](https://docs.chain.link/ccip/directory/mainnet) and [testnet CCIP Directory](https://docs.chain.link/ccip/directory/testnet) for contract addresses and network details.", - "relatedNetworks": ["bitlayer", "corn", "hashkey", "ink", "polygonzkevm", "sei", "soneium", "xlayer", "botanix"], + "description": "Chainlink CCIP expands support to new blockchains:\n\n- Bitlayer\n- Botanix\n- Corn Network\n- Hashkey Chain\n- Ink\n- Monad Testnet\n- Polygon zkEVM\n- Sei Network\n- Soneium\n- XLayer\n\nCheck the [mainnet CCIP Directory](https://docs.chain.link/ccip/directory/mainnet) and [testnet CCIP Directory](https://docs.chain.link/ccip/directory/testnet) for contract addresses and network details.", + "relatedNetworks": [ + "bitlayer", + "corn", + "hashkey", + "ink", + "polygonzkevm", + "sei", + "soneium", + "xlayer", + "botanix", + "monad" + ], "relatedTokens": [], "title": "CCIP Expands to New Blockchains", "topic": "ccip", diff --git a/src/components/QuickLinks/data/productChainLinks.ts b/src/components/QuickLinks/data/productChainLinks.ts index f08c37db07c..7867ac33511 100644 --- a/src/components/QuickLinks/data/productChainLinks.ts +++ b/src/components/QuickLinks/data/productChainLinks.ts @@ -57,11 +57,12 @@ export const productChainLinks: ProductChainLinks = { sei: "/ccip/directory/mainnet/chain/sei-mainnet", monad: "/ccip/directory/testnet/chain/monad-testnet", treasure: "/ccip/directory/mainnet/chain/treasure-mainnet", - merlin: "/ccip/directory/testnet/chain/bitcoin-testnet-merlin", - fraxtal: "/ccip/directory/testnet/chain/ethereum-testnet-holesky-fraxtal-1", + merlin: "/ccip/directory/mainnet/chain/bitcoin-merlin-mainnet", + fraxtal: "/ccip/directory/mainnet/chain/fraxtal-mainnet", lens: "/ccip/directory/testnet/chain/ethereum-testnet-sepolia-lens-1", - unichain: "/ccip/directory/testnet/chain/ethereum-testnet-sepolia-unichain-1", - berachain: "/ccip/directory/testnet/chain/berachain-testnet-bartio", + unichain: "/ccip/directory/mainnet/chain/ethereum-mainnet-unichain-1", + berachain: "/ccip/directory/mainnet/chain/berachain-mainnet", + core: "/ccip/directory/mainnet/chain/core-mainnet", }, }, "Data Feeds": { @@ -108,10 +109,12 @@ export const productChainLinks: ProductChainLinks = { base: "/data-streams/crypto-streams", berachain: "/data-streams/crypto-streams", blast: "/data-streams/crypto-streams", + bob: "/data-streams/crypto-streams", botanix: "/data-streams/crypto-streams", ethereum: "/data-streams/crypto-streams", hashkey: "/data-streams/crypto-streams", ink: "/data-streams/crypto-streams", + linea: "/data-streams/crypto-streams", mantle: "/data-streams/crypto-streams", monad: "/data-streams/crypto-streams", opbnb: "/data-streams/crypto-streams", @@ -122,6 +125,7 @@ export const productChainLinks: ProductChainLinks = { solana: "/data-streams/crypto-streams", soneium: "/data-streams/crypto-streams", sonic: "/data-streams/crypto-streams", + unichain: "/data-streams/crypto-streams", worldchain: "/data-streams/crypto-streams", zksync: "/data-streams/crypto-streams", }, diff --git a/src/components/ReleaseNotes.astro b/src/components/ReleaseNotes.astro index 8132d5129a9..fc92fa2c183 100644 --- a/src/components/ReleaseNotes.astro +++ b/src/components/ReleaseNotes.astro @@ -44,7 +44,9 @@ function isValidNetwork(entry: unknown): entry is ChangelogEntry { if (e.relatedNetworks) { if (!Array.isArray(e.relatedNetworks)) { console.error( - `Invalid type for field "relatedNetworks" in entry "${e.title}": expected array, received ${typeof e.relatedNetworks}` + `Invalid type for field "relatedNetworks" in entry "${ + e.title + }": expected array, received ${typeof e.relatedNetworks}` ) return false } @@ -52,7 +54,9 @@ function isValidNetwork(entry: unknown): entry is ChangelogEntry { for (const network of e.relatedNetworks) { if (!(network in chainNames)) { console.error( - `Invalid relatedNetwork "${network}" in entry "${e.title}". Must be one of: ${Object.keys(chainNames).join(", ")}` + `Invalid relatedNetwork "${network}" in entry "${e.title}". Must be one of: ${Object.keys(chainNames).join( + ", " + )}` ) return false } diff --git a/src/config/data/ccip/v1_2_0/mainnet/chains.json b/src/config/data/ccip/v1_2_0/mainnet/chains.json index 88d50cc6057..7ffd01391b9 100644 --- a/src/config/data/ccip/v1_2_0/mainnet/chains.json +++ b/src/config/data/ccip/v1_2_0/mainnet/chains.json @@ -19,6 +19,26 @@ "version": "1.5.0" } }, + "berachain-mainnet": { + "armProxy": { + "address": "0x25943b8C30C47F4eF09CcF2BAE315EbaF591881d", + "version": "1.5.0" + }, + "chainSelector": "1294465214383781161", + "feeTokens": ["LINK", "WBERA"], + "registryModule": { + "address": "0x452b8543fdF4Da91FE914CC92c3B79632730cFC7", + "version": "1.5.0" + }, + "router": { + "address": "0x71a275704c283486fBa26dad3dd0DB78804426eF", + "version": "1.2.0" + }, + "tokenAdminRegistry": { + "address": "0x0944C3Fb1dB7D165336569221995B31cBE6c8A55", + "version": "1.5.0" + } + }, "bitcoin-mainnet-bitlayer-1": { "armProxy": { "address": "0xcaa6131cEe85ba2F140cBa05F6825aC60B6CEA56", @@ -79,6 +99,26 @@ "version": "1.5.0" } }, + "bitcoin-merlin-mainnet": { + "armProxy": { + "address": "0x225c0187d88e5E42455c4B46078D15283551930B", + "version": "1.5.0" + }, + "chainSelector": "241851231317828981", + "feeTokens": ["LINK", "WBTC"], + "registryModule": { + "address": "0xB3e5f1F4aeF00402091605b96D0440657c8B9978", + "version": "1.5.0" + }, + "router": { + "address": "0x8Be462D21b05eEeF81a3AA384b7C6CF18597232A", + "version": "1.2.0" + }, + "tokenAdminRegistry": { + "address": "0xA51Cdb9154bB0c9Bc3CE25dBf7DE3331B3A1C8E7", + "version": "1.5.0" + } + }, "bsc-mainnet": { "armProxy": { "address": "0x9e09697842194f77d315E0907F1Bda77922e8f84", @@ -119,6 +159,26 @@ "version": "1.5.0" } }, + "core-mainnet": { + "armProxy": { + "address": "0x1e9B034c67B6eA4cB819aA8BE4E84cff2d5417fb", + "version": "1.5.0" + }, + "chainSelector": "1224752112135636129", + "feeTokens": ["LINK", "WCORE"], + "registryModule": { + "address": "0x6d10fF9a987d3C05e373cCbcb17f38287318c50e", + "version": "1.5.0" + }, + "router": { + "address": "0xF7Cc8b0B5263A74AFBb1a2ac87FfF1CF7E62152f", + "version": "1.2.0" + }, + "tokenAdminRegistry": { + "address": "0x4D2B43c60f3e476Ee94637C4e3be844FC9a70012", + "version": "1.5.0" + } + }, "corn-mainnet": { "armProxy": { "address": "0x91ca2Aa7429e5F702f1F750b317AB604d5a6a16e", @@ -399,6 +459,26 @@ "version": "1.5.0" } }, + "ethereum-mainnet-unichain-1": { + "armProxy": { + "address": "0x2c8De9677b07Cc256228069109D9842f0cB96291", + "version": "1.5.0" + }, + "chainSelector": "1923510103922296319", + "feeTokens": ["LINK", "WETH"], + "registryModule": { + "address": "0x4fFb05FE51682c331D3778dc6C0A1122e68773EB", + "version": "1.5.0" + }, + "router": { + "address": "0x68891f5F96695ECd7dEdBE2289D1b73426ae7864", + "version": "1.2.0" + }, + "tokenAdminRegistry": { + "address": "0xAB3Ee2e897cf23c10e76d26aB4674fEFA376bc0d", + "version": "1.5.0" + } + }, "ethereum-mainnet-worldchain-1": { "armProxy": { "address": "0x7DE7Ef73cF001ff15b3aA558855D7eeC439d43ab", @@ -479,6 +559,26 @@ "version": "1.5.0" } }, + "fraxtal-mainnet": { + "armProxy": { + "address": "0x889b5Ada2Ce451ED68C5e1b40B8236C3448ff681", + "version": "1.5.0" + }, + "chainSelector": "1462016016387883143", + "feeTokens": ["LINK", "WFRXETH"], + "registryModule": { + "address": "0xAa7257D6E68A3CBb356AcA9845C33102bEB9a54c", + "version": "1.5.0" + }, + "router": { + "address": "0x4bdF20477744Ec5F9DE738b5cC9ACd01763905ee", + "version": "1.2.0" + }, + "tokenAdminRegistry": { + "address": "0x6724621d8A560A84E4B6012c4bAA0eA6fF47B9DF", + "version": "1.5.0" + } + }, "mainnet": { "armProxy": { "address": "0x411dE17f12D1A34ecC7F45f49844626267c75e81", diff --git a/src/config/data/ccip/v1_2_0/mainnet/lanes.json b/src/config/data/ccip/v1_2_0/mainnet/lanes.json index 5a3a9adbe92..629a8ff0541 100644 --- a/src/config/data/ccip/v1_2_0/mainnet/lanes.json +++ b/src/config/data/ccip/v1_2_0/mainnet/lanes.json @@ -559,6 +559,20 @@ "rmnPermeable": false } }, + "berachain-mainnet": { + "mainnet": { + "offRamp": { + "address": "0x133e59ACf07728755440B0b0A7DC282EBcE04e31", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x2c99dC698745B655d4D0741eF5Ef8623578c45c0", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + } + }, "bitcoin-mainnet-bitlayer-1": { "mainnet": { "offRamp": { @@ -570,7 +584,23 @@ "enforceOutOfOrder": false, "version": "1.5.0" }, - "rmnPermeable": false + "rmnPermeable": false, + "supportedTokens": { + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + } + } + } + } } }, "bitcoin-mainnet-bob-1": { @@ -584,7 +614,23 @@ "enforceOutOfOrder": false, "version": "1.5.0" }, - "rmnPermeable": false + "rmnPermeable": false, + "supportedTokens": { + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + } + } + } + } } }, "bitcoin-mainnet-bsquared-1": { @@ -598,6 +644,36 @@ "enforceOutOfOrder": false, "version": "1.5.0" }, + "rmnPermeable": false, + "supportedTokens": { + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + } + } + } + } + } + }, + "bitcoin-merlin-mainnet": { + "mainnet": { + "offRamp": { + "address": "0x894C22E2A9f243ee4788643642CdED439Cc868C2", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x3D25ff4cBaf29373B9Ec1784Bb5C8DC5e15347D8", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, "rmnPermeable": false } }, @@ -824,6 +900,20 @@ } } }, + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + } + } + }, "USDFI": { "rateLimiterConfig": { "in": { @@ -1340,6 +1430,20 @@ } } }, + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + } + } + }, "UNIO": { "rateLimiterConfig": { "in": { @@ -1534,7 +1638,37 @@ "enforceOutOfOrder": false, "version": "1.5.0" }, - "rmnPermeable": false + "rmnPermeable": false, + "supportedTokens": { + "SolvBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + }, + "out": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + } + } + }, + "SolvBTC.BBN": { + "rateLimiterConfig": { + "in": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + }, + "out": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + } + } + } + } }, "sonic-mainnet": { "offRamp": { @@ -1606,6 +1740,102 @@ } }, "celo-mainnet": { + "ethereum-mainnet-arbitrum-1": { + "offRamp": { + "address": "0x3980b6e3d2f23AF4D700d12C42af1B92AB8ea933", + "version": "1.5.0" + }, + "onRamp": { + "address": "0xf27b5D3205fEa8aD6Ce8Fbe3b6178867428E5732", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, + "ethereum-mainnet-base-1": { + "offRamp": { + "address": "0xF1470F8944f5aA02892Bd621d8bD42F160CB96fd", + "version": "1.5.0" + }, + "onRamp": { + "address": "0xD5cCB283797A708125C807C63a6E944a99EEd288", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, + "ethereum-mainnet-ink-1": { + "offRamp": { + "address": "0x8B6657F323f5dC8cDB896d08074eA7D31b794609", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x1b531048F438571d3CF6806e55957C361C0b2d75", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, + "ethereum-mainnet-mode-1": { + "offRamp": { + "address": "0xa39CFCB09Ca613ee9f6Fc03c8E0a79566a07b2eB", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x5dA58BF4a86b5B43f302D1Fea8A2DaaCe871A99A", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, + "ethereum-mainnet-optimism-1": { + "offRamp": { + "address": "0xe21C99e57aF6C2B4768442c69445bD181aFCfee5", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x5Cc4b917DfD93E9833cC33BaA38A8B0091d5ade0", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, + "ethereum-mainnet-unichain-1": { + "offRamp": { + "address": "0x56D7a82869CBA0b3B4e2c7a18b54C705bd9aa0b1", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x6cAa43a0D82614a95F8e7D30C358268f464D0B3c", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, + "ethereum-mainnet-worldchain-1": { + "offRamp": { + "address": "0x60dcBAC7CF502bC58524e81f6b558Dc514517f67", + "version": "1.5.0" + }, + "onRamp": { + "address": "0xa841C3aD09133d1d2148b259fe1ceA3bbacbeed8", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, + "ethereum-mainnet-zksync-1": { + "offRamp": { + "address": "0x27f7Af25Ac7482d75207179B42906866A89C6787", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x7171AeF438a34427D255BF323C13416B6a1848F0", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, "mainnet": { "offRamp": { "address": "0x1B12D218280DD1767304A00070101a91f7A61470", @@ -1675,6 +1905,44 @@ } } } + }, + "matic-mainnet": { + "offRamp": { + "address": "0xd04aF6aB899900D32299e2970457b90Ce8767759", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x42504890DD261Bf17Aa05Dca6C293a6c6225f961", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, + "soneium-mainnet": { + "offRamp": { + "address": "0x695aAbE79d26FdC309CcFBE594B15094b82CcFd6", + "version": "1.5.0" + }, + "onRamp": { + "address": "0xB3C5D43d6114B99E5Bc79cC340C563DC44A4B2B2", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + } + }, + "core-mainnet": { + "mainnet": { + "offRamp": { + "address": "0xF0fC17a0cb867c9879d1f4Ea4C23E65D5f4fb890", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x00348860Cb152Aa20617a1265343D1989C976575", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false } }, "corn-mainnet": { @@ -1688,7 +1956,23 @@ "enforceOutOfOrder": false, "version": "1.5.0" }, - "rmnPermeable": false + "rmnPermeable": false, + "supportedTokens": { + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + } + } + } + } } }, "ethereum-mainnet-andromeda-1": { @@ -2084,6 +2368,20 @@ } } }, + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + } + } + }, "USDFI": { "rateLimiterConfig": { "in": { @@ -2156,6 +2454,18 @@ } } }, + "celo-mainnet": { + "offRamp": { + "address": "0x0eA1070B08757Da69a0762ae38D037cdd08C5e98", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x68647D235262873Be5a30fceaA6CAA318a750773", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, "ethereum-mainnet-andromeda-1": { "offRamp": { "address": "0xF1A4DE22FF792b0457306C39f4CB5822Ab47bdAE", @@ -3426,6 +3736,20 @@ } } }, + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + } + } + }, "USD+": { "rateLimiterConfig": { "in": { @@ -4030,6 +4354,18 @@ } } }, + "celo-mainnet": { + "offRamp": { + "address": "0x73A600F80061627dcC68ABc4f33063eB51aA6e96", + "version": "1.5.0" + }, + "onRamp": { + "address": "0xf2Bf69d4A687d2c38DE865eABD611648dAccad93", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, "ethereum-mainnet-arbitrum-1": { "offRamp": { "address": "0x7D38c6363d5E4DFD500a691Bc34878b383F58d93", @@ -5612,6 +5948,18 @@ } }, "ethereum-mainnet-ink-1": { + "celo-mainnet": { + "offRamp": { + "address": "0x92329665dD07F897fe1cc38d20e1a86FD6394f23", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x6314dFcF1430aF590e388Cb77D963c23406553f6", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, "mainnet": { "offRamp": { "address": "0x809E132A7C3A689a7026971be32697B6cD507f63", @@ -6001,6 +6349,20 @@ "rate": "0" } } + }, + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + } + } } } } @@ -6034,6 +6396,18 @@ } } }, + "celo-mainnet": { + "offRamp": { + "address": "0xB8A51Bff88c09Aa1a66A7874110FDe970e6cA9A5", + "version": "1.5.0" + }, + "onRamp": { + "address": "0xf81c7385064bBB58a01004E1eEC4D9B0785AECa7", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, "ethereum-mainnet-arbitrum-1": { "offRamp": { "address": "0x0Cb870C12013c2d5743585F85b298e129cE57203", @@ -6130,6 +6504,20 @@ }, "rmnPermeable": false, "supportedTokens": { + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + } + } + }, "wUSDx": { "rateLimiterConfig": { "in": { @@ -6330,6 +6718,18 @@ } } }, + "celo-mainnet": { + "offRamp": { + "address": "0xa6ed91b1708fA53895f9b0d7C1435625f1B3C440", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x746ddB61Af7B1516B819F6d81AcD729e4C867a55", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, "ethereum-mainnet-arbitrum-1": { "offRamp": { "address": "0xEB3d6956BCf7b1E29634C8cd182fC9FA740Bce34", @@ -6664,6 +7064,20 @@ }, "rmnPermeable": false, "supportedTokens": { + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + } + } + }, "wUSDx": { "rateLimiterConfig": { "in": { @@ -6832,6 +7246,20 @@ } } }, + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + } + } + }, "USDC": { "rateLimiterConfig": { "in": { @@ -7127,7 +7555,45 @@ } } }, + "ethereum-mainnet-unichain-1": { + "celo-mainnet": { + "offRamp": { + "address": "0x06D1A3C7dA103AaD2bbDDC4C34643932b549Bee4", + "version": "1.5.0" + }, + "onRamp": { + "address": "0xc4F901dDF548c689C3D072F0507EAAb763AB5589", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, + "mainnet": { + "offRamp": { + "address": "0x240D14E6550f1ac8F518C2AEd886c905207bAA9B", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x139839036FF1Df22f47427740f40fE300184Fb8a", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + } + }, "ethereum-mainnet-worldchain-1": { + "celo-mainnet": { + "offRamp": { + "address": "0x97D60eF016feaF3253E2f43262fe638a3060cA9a", + "version": "1.5.0" + }, + "onRamp": { + "address": "0xEc5069dBA6d83E5FD683eeB3b5de06F43893e1a6", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, "mainnet": { "offRamp": { "address": "0x6E514bBa9f3bA098d907Ac10D577b2FB7C9F0ac3", @@ -7228,6 +7694,18 @@ } }, "ethereum-mainnet-zksync-1": { + "celo-mainnet": { + "offRamp": { + "address": "0x9ff0f85AF7BE9526dC99b6ee91f5BCe5b391808A", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x366CE743c19E8cb2966C3DDe2Ae1216EF9A76d6D", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, "ethereum-mainnet-arbitrum-1": { "offRamp": { "address": "0xd448c815C421fFBd770C2d3B9a9cBa4E33E3885c", @@ -7453,6 +7931,20 @@ } } }, + "fraxtal-mainnet": { + "mainnet": { + "offRamp": { + "address": "0x1BE8714ce5E35B38Cd977eadaC1307B9B77Efd0d", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x00D0E4e85ccCaF37F1a10d7738ACFC59803B21fD", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + } + }, "mainnet": { "avalanche-mainnet": { "offRamp": { @@ -7594,6 +8086,18 @@ } } }, + "berachain-mainnet": { + "offRamp": { + "address": "0xA627F208c5c32e5638c64147d0aC98bb40F758f0", + "version": "1.5.0" + }, + "onRamp": { + "address": "0xBeFfEF56Cd6FA063d2e04E126cF1b93269886c42", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": true + }, "bitcoin-mainnet-bitlayer-1": { "offRamp": { "address": "0x3B45dd27E0cF84F1af98DEaBDc8f96303475ef58", @@ -7604,7 +8108,23 @@ "enforceOutOfOrder": false, "version": "1.5.0" }, - "rmnPermeable": true + "rmnPermeable": true, + "supportedTokens": { + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + } + } + } + } }, "bitcoin-mainnet-bob-1": { "offRamp": { @@ -7616,7 +8136,23 @@ "enforceOutOfOrder": false, "version": "1.5.0" }, - "rmnPermeable": true + "rmnPermeable": true, + "supportedTokens": { + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + } + } + } + } }, "bitcoin-mainnet-bsquared-1": { "offRamp": { @@ -7628,6 +8164,34 @@ "enforceOutOfOrder": false, "version": "1.5.0" }, + "rmnPermeable": true, + "supportedTokens": { + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + } + } + } + } + }, + "bitcoin-merlin-mainnet": { + "offRamp": { + "address": "0x5B6D2998EEF5cBBa7e8345B08Dd41AecEC5EACA5", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x20fD5ab74D519df395f41c958D982BecB6b64432", + "enforceOutOfOrder": true, + "version": "1.5.0" + }, "rmnPermeable": true }, "bsc-mainnet": { @@ -7838,6 +8402,20 @@ } } }, + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + } + } + }, "UNIO": { "rateLimiterConfig": { "in": { @@ -7994,6 +8572,18 @@ } } }, + "core-mainnet": { + "offRamp": { + "address": "0xdE66080eABE390198b8918cb3F61e1869dbC8079", + "version": "1.5.0" + }, + "onRamp": { + "address": "0xa6D806e4EB8726542cf536518fC47f39d68cCb48", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": true + }, "corn-mainnet": { "offRamp": { "address": "0xb0F5b6DB1157719795eCCd9C6023C66bB2ec414F", @@ -8004,7 +8594,23 @@ "enforceOutOfOrder": false, "version": "1.5.0" }, - "rmnPermeable": true + "rmnPermeable": true, + "supportedTokens": { + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + } + } + } + } }, "ethereum-mainnet-andromeda-1": { "offRamp": { @@ -8620,6 +9226,20 @@ } } }, + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "2315" + } + } + }, "USD+": { "rateLimiterConfig": { "in": { @@ -9595,6 +10215,20 @@ "rate": "0" } } + }, + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + } + } } } }, @@ -9820,6 +10454,20 @@ } } }, + "uniBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + }, + "out": { + "capacity": "200000000", + "isEnabled": true, + "rate": "11574" + } + } + }, "USDC": { "rateLimiterConfig": { "in": { @@ -9988,6 +10636,18 @@ } } }, + "ethereum-mainnet-unichain-1": { + "offRamp": { + "address": "0xaA0DA3e06F43a5227abB0eA7D6DF3d1037B1769B", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x5E7397CA539C94185BBD950706F0Dd8628587E04", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": true + }, "ethereum-mainnet-worldchain-1": { "offRamp": { "address": "0x5EDa6801dBD2bBdbF0401d34c730fa2C3A97C3F4", @@ -10194,6 +10854,18 @@ } } }, + "fraxtal-mainnet": { + "offRamp": { + "address": "0x559c3233aE9A0EcD45a6c45ee3B8c2c6DBa5F48D", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x31ee106a4585a796caacC645172B9F7e9c2f8D37", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": true + }, "matic-mainnet": { "offRamp": { "address": "0x718672076D6d51E4c76142B37bC99E4945d704a3", @@ -10565,6 +11237,34 @@ "rate": "4630000000000000000" } } + }, + "SolvBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + }, + "out": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + } + } + }, + "SolvBTC.BBN": { + "rateLimiterConfig": { + "in": { + "capacity": "0", + "isEnabled": false, + "rate": "0" + }, + "out": { + "capacity": "0", + "isEnabled": false, + "rate": "0" + } + } } } }, @@ -10960,6 +11660,18 @@ } } }, + "celo-mainnet": { + "offRamp": { + "address": "0xDf1F2a04c0e572D68E3E0D14d6ed3864921FE3f3", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x608e3993854607dE4FC8f7926ab6b7c5AB3cA8Fc", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, + "rmnPermeable": false + }, "ethereum-mainnet-arbitrum-1": { "offRamp": { "address": "0x60f2788225CeE4a94f8E7589931d5A14Cbc4367d", @@ -11704,6 +12416,48 @@ "enforceOutOfOrder": false, "version": "1.5.0" }, + "rmnPermeable": false, + "supportedTokens": { + "SolvBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + }, + "out": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + } + } + }, + "SolvBTC.BBN": { + "rateLimiterConfig": { + "in": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + }, + "out": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + } + } + } + } + }, + "celo-mainnet": { + "offRamp": { + "address": "0x2048413F78F6BF7b3499b28321e7B55a3aD95e56", + "version": "1.5.0" + }, + "onRamp": { + "address": "0x4DFe6A7bd2A7B365EC93135221F2e7305A180bb9", + "enforceOutOfOrder": false, + "version": "1.5.0" + }, "rmnPermeable": false }, "mainnet": { @@ -11731,6 +12485,34 @@ "rate": "4630000000000000000" } } + }, + "SolvBTC": { + "rateLimiterConfig": { + "in": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + }, + "out": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + } + } + }, + "SolvBTC.BBN": { + "rateLimiterConfig": { + "in": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + }, + "out": { + "capacity": "60000000000000000000", + "isEnabled": true, + "rate": "694440000000000" + } + } } } }, diff --git a/src/config/data/ccip/v1_2_0/mainnet/tokens.json b/src/config/data/ccip/v1_2_0/mainnet/tokens.json index 59d749785bc..bb546496e1d 100644 --- a/src/config/data/ccip/v1_2_0/mainnet/tokens.json +++ b/src/config/data/ccip/v1_2_0/mainnet/tokens.json @@ -326,16 +326,6 @@ "tokenAddress": "0x13af0Fe9eB35e91758B467f95cbc78e16FdD8B6b" } }, - "CELO": { - "celo-mainnet": { - "allowListEnabled": false, - "decimals": 18, - "name": "Celo native asset", - "poolType": "feeTokenOnly", - "symbol": "CELO", - "tokenAddress": "0x471EcE3750Da237f93B8E339c536989b8978a438" - } - }, "CKP": { "bsc-mainnet": { "allowListEnabled": false, @@ -949,11 +939,18 @@ "allowListEnabled": false, "decimals": 18, "name": "Chainlink Token", - "poolAddress": "0x8A3e8D8614189d7ad0CF3f1a0D787Da79eBCEc17", - "poolType": "lockRelease", + "poolType": "feeTokenOnly", "symbol": "LINK.e", "tokenAddress": "0x5947BB275c521040051D82396192181b413227A3" }, + "berachain-mainnet": { + "allowListEnabled": false, + "decimals": 18, + "name": "ChainLink Token", + "poolType": "feeTokenOnly", + "symbol": "LINK", + "tokenAddress": "0x71052BAe71C25C78E37fD12E5ff1101A71d9018F" + }, "bitcoin-mainnet-bitlayer-1": { "allowListEnabled": false, "decimals": 18, @@ -978,6 +975,14 @@ "symbol": "LINK", "tokenAddress": "0x709229D9587886a1eDFeE6b5cE636E1D70d1cE39" }, + "bitcoin-merlin-mainnet": { + "allowListEnabled": false, + "decimals": 18, + "name": "ChainLink Token", + "poolType": "feeTokenOnly", + "symbol": "LINK", + "tokenAddress": "0x71052BAe71C25C78E37fD12E5ff1101A71d9018F" + }, "bsc-mainnet": { "allowListEnabled": false, "decimals": 18, @@ -995,6 +1000,14 @@ "symbol": "LINK", "tokenAddress": "0xd07294e6E917e07dfDcee882dd1e2565085C2ae0" }, + "core-mainnet": { + "allowListEnabled": false, + "decimals": 18, + "name": "ChainLink Token", + "poolType": "feeTokenOnly", + "symbol": "LINK", + "tokenAddress": "0x3902228D6A3d2Dc44731fD9d45FeE6a61c722D0b" + }, "corn-mainnet": { "allowListEnabled": false, "decimals": 18, @@ -1092,8 +1105,7 @@ "allowListEnabled": false, "decimals": 18, "name": "ChainLink Token", - "poolAddress": "0x841b32B5309ba30cFbf4534667fC3D99EdF05B7A", - "poolType": "lockRelease", + "poolType": "feeTokenOnly", "symbol": "LINK", "tokenAddress": "0x350a791Bfc2C21F9Ed5d10980Dad2e2638ffa7f6" }, @@ -1113,6 +1125,14 @@ "symbol": "LINK", "tokenAddress": "0x548C6944cba02B9D1C0570102c89de64D258d3Ac" }, + "ethereum-mainnet-unichain-1": { + "allowListEnabled": false, + "decimals": 18, + "name": "ChainLink Token", + "poolType": "feeTokenOnly", + "symbol": "LINK", + "tokenAddress": "0xEF66491eab4bbB582c57b14778afd8dFb70D8A1A" + }, "ethereum-mainnet-worldchain-1": { "allowListEnabled": false, "decimals": 18, @@ -1146,6 +1166,14 @@ "symbol": "LINK", "tokenAddress": "0x52869bae3E091e36b0915941577F2D47d8d8B534" }, + "fraxtal-mainnet": { + "allowListEnabled": false, + "decimals": 18, + "name": "ChainLink Token", + "poolType": "feeTokenOnly", + "symbol": "LINK", + "tokenAddress": "0xd6A6ba37fAaC229B9665E86739ca501401f5a940" + }, "mainnet": { "allowListEnabled": false, "decimals": 18, @@ -1159,8 +1187,7 @@ "allowListEnabled": false, "decimals": 18, "name": "ChainLink Token", - "poolAddress": "0x086892015567fb8764d02c6845C85C25C8FcA389", - "poolType": "lockRelease", + "poolType": "feeTokenOnly", "symbol": "LINK", "tokenAddress": "0xb0897686c545045aFc77CF20eC7A532E3120E0F1" }, @@ -1319,16 +1346,6 @@ "tokenAddress": "0xA544b3F0c46c15F0B2b00ba3D67b56C250287905" } }, - "METIS": { - "ethereum-mainnet-andromeda-1": { - "allowListEnabled": false, - "decimals": 18, - "name": "Metis Token", - "poolType": "feeTokenOnly", - "symbol": "Metis", - "tokenAddress": "0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000" - } - }, "METO": { "bsc-mainnet": { "allowListEnabled": false, @@ -2016,6 +2033,15 @@ "symbol": "SolvBTC", "tokenAddress": "0x7A56E1C57C7475CCf742a1832B028F0456652F97" }, + "soneium-mainnet": { + "allowListEnabled": false, + "decimals": 18, + "name": "Solv BTC", + "poolAddress": "0x3539F2E214d8BC7E611056383323aC6D1b01943c", + "poolType": "burnMint", + "symbol": "SolvBTC", + "tokenAddress": "0x541FD749419CA806a8bc7da8ac23D346f2dF8B77" + }, "sonic-mainnet": { "allowListEnabled": false, "decimals": 18, @@ -2090,6 +2116,15 @@ "symbol": "SolvBTC.BBN", "tokenAddress": "0xd9D920AA40f578ab794426F5C90F6C731D159DEf" }, + "soneium-mainnet": { + "allowListEnabled": false, + "decimals": 18, + "name": "SolvBTC Babylon", + "poolAddress": "0x0a12ec21c43ab2b4f69693Da1b0149e7652689c0", + "poolType": "burnMint", + "symbol": "SolvBTC.BBN", + "tokenAddress": "0xCC0966D8418d412c599A6421b760a847eB169A8c" + }, "sonic-mainnet": { "allowListEnabled": false, "decimals": 18, @@ -2437,6 +2472,98 @@ "tokenAddress": "0xF500208d9aB68FeA3cc41bd107811e809C0B6B83" } }, + "uniBTC": { + "bitcoin-mainnet-bitlayer-1": { + "allowListEnabled": false, + "decimals": 8, + "name": "uniBTC", + "poolAddress": "0x04c5046A1f4E3fFf094c26dFCAA75eF293932f18", + "poolType": "burnMint", + "symbol": "uniBTC", + "tokenAddress": "0x93919784C523f39CACaa98Ee0a9d96c3F32b593e" + }, + "bitcoin-mainnet-bob-1": { + "allowListEnabled": false, + "decimals": 8, + "name": "uniBTC", + "poolAddress": "0xF549af21578Cfe2385FFD3488B3039fd9e52f006", + "poolType": "burnMint", + "symbol": "uniBTC", + "tokenAddress": "0x236f8c0a61dA474dB21B693fB2ea7AAB0c803894" + }, + "bitcoin-mainnet-bsquared-1": { + "allowListEnabled": false, + "decimals": 8, + "name": "uniBTC", + "poolAddress": "0xF549af21578Cfe2385FFD3488B3039fd9e52f006", + "poolType": "burnMint", + "symbol": "uniBTC", + "tokenAddress": "0x93919784C523f39CACaa98Ee0a9d96c3F32b593e" + }, + "bsc-mainnet": { + "allowListEnabled": false, + "decimals": 8, + "name": "uniBTC", + "poolAddress": "0x30b4481A6E51216Db57fC9439eC23B3aBa5e0450", + "poolType": "burnMint", + "symbol": "uniBTC", + "tokenAddress": "0x6B2a01A5f79dEb4c2f3c0eDa7b01DF456FbD726a" + }, + "corn-mainnet": { + "allowListEnabled": false, + "decimals": 8, + "name": "uniBTC", + "poolAddress": "0xc2e3A3C18ccb634622B57fF119a1C8C7f12e8C0c", + "poolType": "burnMint", + "symbol": "uniBTC", + "tokenAddress": "0x93919784C523f39CACaa98Ee0a9d96c3F32b593e" + }, + "ethereum-mainnet-arbitrum-1": { + "allowListEnabled": false, + "decimals": 8, + "name": "uniBTC", + "poolAddress": "0x79863856C920Ae564b4cdFB113C3d6B4E87A8c69", + "poolType": "burnMint", + "symbol": "uniBTC", + "tokenAddress": "0x6B2a01A5f79dEb4c2f3c0eDa7b01DF456FbD726a" + }, + "ethereum-mainnet-mantle-1": { + "allowListEnabled": false, + "decimals": 8, + "name": "uniBTC", + "poolAddress": "0xb0112a2723D9D6CB5194580701A93B1eb67846D2", + "poolType": "burnMint", + "symbol": "uniBTC", + "tokenAddress": "0x93919784C523f39CACaa98Ee0a9d96c3F32b593e" + }, + "ethereum-mainnet-mode-1": { + "allowListEnabled": false, + "decimals": 8, + "name": "uniBTC", + "poolAddress": "0x85D7BB518a32A755c7768687837Cf4c301e83b03", + "poolType": "burnMint", + "symbol": "uniBTC", + "tokenAddress": "0x6B2a01A5f79dEb4c2f3c0eDa7b01DF456FbD726a" + }, + "ethereum-mainnet-optimism-1": { + "allowListEnabled": false, + "decimals": 8, + "name": "uniBTC", + "poolAddress": "0xF7e8fE6B8548c388b818d27AC2e2A72207D2E117", + "poolType": "burnMint", + "symbol": "uniBTC", + "tokenAddress": "0x93919784C523f39CACaa98Ee0a9d96c3F32b593e" + }, + "mainnet": { + "allowListEnabled": false, + "decimals": 8, + "name": "uniBTC", + "poolAddress": "0xDE71a07e0619EEaDd7e6A3aeCf4E57E5d5e86f12", + "poolType": "burnMint", + "symbol": "uniBTC", + "tokenAddress": "0x004E9C3EF86bc1ca1f0bB5C7662861Ee93350568" + } + }, "UNIO": { "bsc-mainnet": { "allowListEnabled": false, @@ -2680,12 +2807,21 @@ "allowListEnabled": false, "decimals": 18, "name": "Wrapped AVAX", - "poolAddress": "0x8CB50A8C8D009aCeFC8685999D989B552909ebEb", - "poolType": "lockRelease", + "poolType": "feeTokenOnly", "symbol": "WAVAX", "tokenAddress": "0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7" } }, + "WBERA": { + "berachain-mainnet": { + "allowListEnabled": false, + "decimals": 18, + "name": "Wrapped Bera", + "poolType": "feeTokenOnly", + "symbol": "WBERA", + "tokenAddress": "0x6969696969696969696969696969696969696969" + } + }, "WBNB": { "bsc-mainnet": { "allowListEnabled": false, @@ -2722,6 +2858,14 @@ "poolType": "feeTokenOnly", "symbol": "WBTC", "tokenAddress": "0x4200000000000000000000000000000000000006" + }, + "bitcoin-merlin-mainnet": { + "allowListEnabled": false, + "decimals": 18, + "name": "Wrapped BTC", + "poolType": "feeTokenOnly", + "symbol": "WBTC", + "tokenAddress": "0xF6D226f9Dc15d9bB51182815b320D3fBE324e1bA" } }, "WBTCN": { @@ -2744,6 +2888,16 @@ "tokenAddress": "0x2021B12D8138e2D63cF0895eccABC0DFc92416c6" } }, + "WCORE": { + "core-mainnet": { + "allowListEnabled": false, + "decimals": 18, + "name": "Wrapped CORE", + "poolType": "feeTokenOnly", + "symbol": "WCORE", + "tokenAddress": "0x40375C92d9FAf44d2f9db9Bd9ba41a3317a2404f" + } + }, "WECO": { "bsc-mainnet": { "allowListEnabled": false, @@ -2874,6 +3028,14 @@ "symbol": "WETH", "tokenAddress": "0x5300000000000000000000000000000000000004" }, + "ethereum-mainnet-unichain-1": { + "allowListEnabled": false, + "decimals": 18, + "name": "Wrapped Ether", + "poolType": "feeTokenOnly", + "symbol": "WETH", + "tokenAddress": "0x4200000000000000000000000000000000000006" + }, "ethereum-mainnet-worldchain-1": { "allowListEnabled": false, "decimals": 18, @@ -2916,6 +3078,16 @@ "tokenAddress": "0x4200000000000000000000000000000000000006" } }, + "WFRXETH": { + "fraxtal-mainnet": { + "allowListEnabled": false, + "decimals": 18, + "name": "Wrapped Frax Ether", + "poolType": "feeTokenOnly", + "symbol": "wfrxETH", + "tokenAddress": "0xFC00000000000000000000000000000000000006" + } + }, "WHSK": { "ethereum-mainnet-hashkey-1": { "allowListEnabled": false, @@ -2941,8 +3113,7 @@ "allowListEnabled": false, "decimals": 18, "name": "Wrapped Polygon Ecosystem Token", - "poolAddress": "0x3ea1AaCeE48171d48a7982db5C66b1B282338F33", - "poolType": "lockRelease", + "poolType": "feeTokenOnly", "symbol": "WPOL", "tokenAddress": "0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270" } diff --git a/src/content/resources/link-token-contracts.mdx b/src/content/resources/link-token-contracts.mdx index e844f299baa..927b912da50 100644 --- a/src/content/resources/link-token-contracts.mdx +++ b/src/content/resources/link-token-contracts.mdx @@ -104,6 +104,16 @@ Testnet LINK is available at [faucets.chain.link/astar-shibuya](https://faucets. ## Berachain +### Berachain Mainnet + +| Parameter | Value | +| :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Chain ID | `80094` | +| Address |
| +| Name | Chainlink Token | +| Symbol | LINK | +| Decimals | 18 | + ### Berachain Bartio Testnet | Parameter | Value | @@ -606,6 +616,18 @@ Testnet LINK is available at [faucets.chain.link/celo-alfajores-testnet](https:/ | Decimals | 18 | | Network status | [explorer.celo.org/alfajores](https://explorer.celo.org/alfajores/) | +## Core + +### Core Mainnet + +| Parameter | Value | +| :-------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Chain ID | `1116` | +| Address |
| +| Name | Chainlink Token | +| Symbol | LINK | +| Decimals | 18 | + ## Corn ### Corn Mainnet @@ -730,6 +752,16 @@ Testnet ETH is used to pay for transactions on Linea Sepolia. Testnet ETH and LI ## Merlin +### Merlin Mainnet + +| Parameter | Value | +| :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Chain ID | `4200` | +| Address |
| +| Name | Chainlink Token | +| Symbol | LINK | +| Decimals | 18 | + ### Merlin Testnet | Parameter | Value | @@ -1199,6 +1231,16 @@ Testnet ETH is used to pay for transactions on World Chain Sepolia. ## Unichain +### Unichain Mainnet + +| Parameter | Value | +| :-------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Chain ID | `130` | +| Address |
| +| Name | Chainlink Token | +| Symbol | LINK | +| Decimals | 18 | + ### Unichain Sepolia testnet | Parameter | Value | diff --git a/src/features/feeds/components/Tables.tsx b/src/features/feeds/components/Tables.tsx index cbb42adf454..59795bf981d 100644 --- a/src/features/feeds/components/Tables.tsx +++ b/src/features/feeds/components/Tables.tsx @@ -7,6 +7,7 @@ import tableStyles from "./Tables.module.css" import button from "@chainlink/design-system/button.module.css" import { CheckHeartbeat } from "./pause-notice/CheckHeartbeat.tsx" import { monitoredFeeds, FeedDataItem } from "~/features/data/index.ts" +import { StreamsNetworksData, type NetworkData } from "../data/StreamsNetworksData.ts" const feedItems = monitoredFeeds.mainnet const feedCategories = { @@ -255,7 +256,7 @@ const SmartDataTr = ({ network, proxy, showExtraDetails }) => ( return "" })}
- {feedCategories[proxy.docs.feedCategory] || ""} + {feedCategories[proxy.feedCategory] || ""} {proxy.name}
{proxy.docs.shutdownDate && ( @@ -348,320 +349,6 @@ const SmartDataTr = ({ network, proxy, showExtraDetails }) => ( ) -const StreamsNetworksData = [ - { - network: "Arbitrum", - logoUrl: "/assets/chains/arbitrum.svg", - networkStatus: "https://arbiscan.freshstatus.io/", - mainnet: { - label: "Arbitrum Mainnet", - verifierProxy: "0x478Aa2aC9F6D65F84e09D9185d126c3a17c2a93C", - explorerUrl: "https://arbiscan.io/address/%s", - }, - testnet: { - label: "Arbitrum Sepolia", - verifierProxy: "0x2ff010DEbC1297f19579B4246cad07bd24F2488A", - explorerUrl: "https://sepolia.arbiscan.io/address/%s", - }, - }, - { - network: "Avalanche", - logoUrl: "/assets/chains/avalanche.svg", - networkStatus: "https://status.avax.network/", - mainnet: { - label: "Avalanche Mainnet", - verifierProxy: "0x79BAa65505C6682F16F9b2C7F8afEBb1821BE3f6", - explorerUrl: "https://snowtrace.io/address/%s", - }, - testnet: { - label: "Avalanche Fuji Testnet", - verifierProxy: "0x2bf612C65f5a4d388E687948bb2CF842FFb8aBB3", - explorerUrl: "https://testnet.snowtrace.io/address/%s", - }, - }, - { - network: "Base", - logoUrl: "/assets/chains/base.svg", - networkStatus: "https://basescan.statuspage.io/", - mainnet: { - label: "Base Mainnet", - verifierProxy: "0xDE1A28D87Afd0f546505B28AB50410A5c3a7387a", - explorerUrl: "https://basescan.org/address/%s", - }, - testnet: { - label: "Base Sepolia", - verifierProxy: "0x8Ac491b7c118a0cdcF048e0f707247fD8C9575f9", - explorerUrl: "https://sepolia.basescan.org/address/%s", - }, - }, - { - network: "Berachain", - logoUrl: "/assets/chains/berachain.svg", - networkStatus: "https://status.berachain.com/", - mainnet: { - label: "Berachain Mainnet", - verifierProxy: "0xC539169910DE08D237Df0d73BcDa9074c787A4a1", - explorerUrl: "https://berascan.com/address/%s", - }, - testnet: { - label: "Berachain bArtio Testnet", - verifierProxy: "0x5A1634A86e9b7BfEf33F0f3f3EA3b1aBBc4CC85F", - explorerUrl: "https://bartio.beratrail.io/address/%s", - }, - }, - { - network: "Blast", - logoUrl: "/assets/chains/blast.svg", - networkStatus: "https://status.blast.io/", - mainnet: { - label: "Blast Mainnet", - verifierProxy: "0xaB93491064aEE774BE4b8a1cFFe4421F5B124F4e", - explorerUrl: "https://blastscan.io/address/%s", - }, - testnet: { - label: "Blast Sepolia Testnet", - verifierProxy: "0x141f4278A5D71070Dc09CA276b72809b80F20eF0", - explorerUrl: "https://sepolia.blastscan.io/address/%s", - }, - }, - { - network: "Botanix", - logoUrl: "/assets/chains/botanix.svg", - testnet: { - label: "Botanix Testnet", - verifierProxy: "0xfBFff08fE4169853F7B1b5Ac67eC10dc8806801d", - explorerUrl: "https://testnet.botanixscan.io/address/%s", - }, - }, - { - network: "Ethereum", - logoUrl: "/assets/chains/ethereum.svg", - mainnet: { - label: "Ethereum Mainnet", - verifierProxy: "0x5A1634A86e9b7BfEf33F0f3f3EA3b1aBBc4CC85F", - explorerUrl: "https://etherscan.io/address/%s", - }, - testnet: { - label: "Sepolia Testnet", - verifierProxy: "0x4e9935be37302B9C97Ff4ae6868F1b566ade26d2", - explorerUrl: "https://sepolia.etherscan.io/address/%s", - }, - }, - { - network: "HashKey Chain", - logoUrl: "/assets/chains/hashkey.svg", - mainnet: { - label: "HashKey Chain Mainnet", - verifierProxy: "0x3278e7a582B94d82487d4B99b31A511CbAe2Cd54", - explorerUrl: "https://hashkey.blockscout.com/address/%s", - }, - }, - { - network: "Ink", - logoUrl: "/assets/chains/ink.svg", - networkStatus: "https://status.inkonchain.com/", - mainnet: { - label: "Ink Mainnet", - verifierProxy: "0x60fAa7faC949aF392DFc858F5d97E3EEfa07E9EB", - explorerUrl: "https://explorer.inkonchain.com/address/%s", - }, - testnet: { - label: "Ink Sepolia Testnet", - verifierProxy: "0x1f27392cC2394d54fFBA83B89C881200b5d5632C", - explorerUrl: "https://explorer-sepolia.inkonchain.com/address/%s", - }, - }, - { - network: "Mantle", - logoUrl: "/assets/chains/mantle.svg", - networkStatus: "https://0xmantle.instatus.com", - mainnet: { - label: "Mantle Mainnet", - verifierProxy: "0x223752Eb475098e79d10937480DF93864D7EfB83", - explorerUrl: "https://mantlescan.xyz/address/%s", - }, - testnet: { - label: "Mantle Sepolia Testnet", - verifierProxy: "0xdc458847982C496E1a5E25D005A332D5a838302B", - explorerUrl: "https://sepolia.mantlescan.xyz/address/%s", - }, - }, - { - network: "Monad", - logoUrl: "/assets/chains/monad.svg", - testnet: { - label: "Monad Testnet", - verifierProxy: "0xC539169910DE08D237Df0d73BcDa9074c787A4a1", - explorerUrl: "https://testnet.monadexplorer.com/address/%s", - }, - }, - { - network: "opBNB", - logoUrl: "/assets/chains/opbnb.svg", - networkStatus: "https://opbnb-status.bnbchain.org/", - mainnet: { - label: "opBNB Mainnet", - verifierProxy: "0x7D543D1a715ED544f7e3Ae9e3b1777BCdA56bF8e", - explorerUrl: "https://opbnb.bscscan.com/address/%s", - }, - testnet: { - label: "opBNB Testnet", - verifierProxy: "0x001225Aca0efe49Dbb48233aB83a9b4d177b581A", - explorerUrl: "https://opbnb-testnet.bscscan.com/address/%s", - }, - }, - { - network: "OP", - logoUrl: "/assets/chains/optimism.svg", - networkStatus: "https://status.optimism.io/", - mainnet: { - label: "OP Mainnet", - verifierProxy: "0xEBA4789A88C89C18f4657ffBF47B13A3abC7EB8D", - explorerUrl: "https://optimistic.etherscan.io/address/%s", - }, - testnet: { - label: "OP Sepolia", - verifierProxy: "0x5f64394a2Ab3AcE9eCC071568Fc552489a8de7AF", - explorerUrl: "https://sepolia-optimism.etherscan.io/address/%s", - }, - }, - { - network: "Ronin", - logoUrl: "/assets/chains/ronin.svg", - mainnet: { - label: "Ronin Mainnet", - verifierProxy: "0x499Ce6718a50e154B0C69905eEE8D307e5B003cc", - explorerUrl: "https://app.roninchain.com/address/%s", - }, - testnet: { - label: "Ronin Saigon Testnet", - verifierProxy: "0xE02A72Be64DA496797821f1c4BB500851C286C6c", - explorerUrl: "https://saigon-app.roninchain.com/address/%s", - }, - }, - { - network: "Scroll", - logoUrl: "/assets/chains/scroll.svg", - mainnet: { - label: "Scroll Mainnet", - verifierProxy: "0x37e550C9b35DB56F9c943126F1c2642fcbDF7B51", - explorerUrl: "https://scrollscan.com/address/%s", - }, - testnet: { - label: "Scroll Sepolia Testnet", - verifierProxy: "0xE17A7C6A7c2eF0Cb859578aa1605f8Bc2434A365", - explorerUrl: "https://sepolia.scrollscan.com/address/%s", - }, - }, - { - network: "Shibarium", - logoUrl: "/assets/chains/shibarium.svg", - mainnet: { - label: "Shibarium Mainnet", - verifierProxy: "0xBE9f07f73de2412A9d0Ed64C42De7d9A10C9F28C", - explorerUrl: "https://www.shibariumscan.io/address/%s", - }, - testnet: { - label: "Shibarium Puppynet", - verifierProxy: "0xc44eb6c00A0F89D044279cD91Bdfd5f62f752Da3", - explorerUrl: "https://puppyscan.shib.io/address/%s", - }, - }, - { - network: "Soneium", - logoUrl: "/assets/chains/soneium.svg", - mainnet: { - label: "Soneium Mainnet", - verifierProxy: "0x8760535A80Ac5908096B57A094266866f4aA1A8c", - explorerUrl: "https://soneium.blockscout.com/address/%s", - }, - testnet: { - label: "Soneium Minato Testnet", - verifierProxy: "0x26603bAC5CE09DAE5604700B384658AcA13AD6ae", - explorerUrl: "https://soneium-minato.blockscout.com/address/%s", - }, - }, - { - network: "Sonic", - logoUrl: "/assets/chains/sonic.svg", - mainnet: { - label: "Sonic Mainnet", - verifierProxy: "0xfBFff08fE4169853F7B1b5Ac67eC10dc8806801d", - explorerUrl: "https://sonicscan.org/address/%s", - }, - testnet: { - label: "Sonic Blaze Testnet", - verifierProxy: "0xfBFff08fE4169853F7B1b5Ac67eC10dc8806801d", - explorerUrl: "https://testnet.sonicscan.org/address/%s", - }, - }, - { - network: "Solana", - logoUrl: "/assets/chains/solana.svg", - networkStatus: "https://status.solana.com/", - isSolana: true, - mainnet: { - label: "Solana Mainnet", - verifierProgramId: "Gt9S41PtjR58CbG9JhJ3J6vxesqrNAswbWYbLNTMZA3c", - accessController: "7mSn5MoBjyRLKoJShgkep8J17ueGG8rYioVAiSg5YWMF", - explorerUrl: "https://explorer.solana.com/address/%s", - }, - testnet: { - label: "Solana Devnet", - verifierProgramId: "Gt9S41PtjR58CbG9JhJ3J6vxesqrNAswbWYbLNTMZA3c", - accessController: "2k3DsgwBoqrnvXKVvd7jX7aptNxdcRBdcd5HkYsGgbrb", - explorerUrl: "https://explorer.solana.com/address/%s?cluster=devnet", - }, - }, - { - network: "World Chain", - logoUrl: "/assets/chains/worldchain.svg", - mainnet: { - label: "World Chain Mainnet", - verifierProxy: "0x65eaE24251C5707D5aCBF7461A49fe87CB1bE4c7", - explorerUrl: "https://worldscan.org/address/%s", - }, - testnet: { - label: "World Chain Sepolia Testnet", - verifierProxy: "0x2482A390bE58b3cBB6Df72dB2e950Db20256e55E", - explorerUrl: "https://sepolia.worldscan.org/address/%s", - }, - }, - { - network: "ZKSync", - logoUrl: "/assets/chains/zksync.svg", - networkStatus: "https://uptime.com/statuspage/zkSync", - mainnet: { - label: "ZKSync Era Mainnet", - verifierProxy: "0xcA64d9D1a9AE4C10E94D0D45af9E878fc64dc207", - explorerUrl: "https://explorer.zksync.io/address/%s", - }, - testnet: { - label: "ZKSync Sepolia Testnet", - verifierProxy: "0xDf37875775d1E777bB413f27de093A62CFF4264b", - explorerUrl: "https://sepolia.explorer.zksync.io/address/%s", - }, - }, -] - -type NetworkDetails = { - verifierProxy?: string - verifierProgramId?: string - accessController?: string - explorerUrl: string - label: string -} - -type NetworkData = { - network: string - logoUrl: string - networkStatus?: string - mainnet?: NetworkDetails - testnet?: NetworkDetails - message?: string - isSolana?: boolean -} - export const StreamsNetworkAddressesTable = () => { const [activeNetwork, setActiveNetwork] = useState(null) diff --git a/src/features/feeds/data/StreamsNetworksData.ts b/src/features/feeds/data/StreamsNetworksData.ts new file mode 100644 index 00000000000..b7d4353517f --- /dev/null +++ b/src/features/feeds/data/StreamsNetworksData.ts @@ -0,0 +1,361 @@ +export type NetworkDetails = { + verifierProxy?: string + verifierProgramId?: string + accessController?: string + explorerUrl: string + label: string +} + +export type NetworkData = { + network: string + logoUrl: string + networkStatus?: string + mainnet?: NetworkDetails + testnet?: NetworkDetails + message?: string + isSolana?: boolean +} + +export const StreamsNetworksData: NetworkData[] = [ + { + network: "Arbitrum", + logoUrl: "/assets/chains/arbitrum.svg", + networkStatus: "https://arbiscan.freshstatus.io/", + mainnet: { + label: "Arbitrum Mainnet", + verifierProxy: "0x478Aa2aC9F6D65F84e09D9185d126c3a17c2a93C", + explorerUrl: "https://arbiscan.io/address/%s", + }, + testnet: { + label: "Arbitrum Sepolia", + verifierProxy: "0x2ff010DEbC1297f19579B4246cad07bd24F2488A", + explorerUrl: "https://sepolia.arbiscan.io/address/%s", + }, + }, + { + network: "Avalanche", + logoUrl: "/assets/chains/avalanche.svg", + networkStatus: "https://status.avax.network/", + mainnet: { + label: "Avalanche Mainnet", + verifierProxy: "0x79BAa65505C6682F16F9b2C7F8afEBb1821BE3f6", + explorerUrl: "https://snowtrace.io/address/%s", + }, + testnet: { + label: "Avalanche Fuji Testnet", + verifierProxy: "0x2bf612C65f5a4d388E687948bb2CF842FFb8aBB3", + explorerUrl: "https://testnet.snowtrace.io/address/%s", + }, + }, + { + network: "Base", + logoUrl: "/assets/chains/base.svg", + networkStatus: "https://basescan.statuspage.io/", + mainnet: { + label: "Base Mainnet", + verifierProxy: "0xDE1A28D87Afd0f546505B28AB50410A5c3a7387a", + explorerUrl: "https://basescan.org/address/%s", + }, + testnet: { + label: "Base Sepolia", + verifierProxy: "0x8Ac491b7c118a0cdcF048e0f707247fD8C9575f9", + explorerUrl: "https://sepolia.basescan.org/address/%s", + }, + }, + { + network: "Berachain", + logoUrl: "/assets/chains/berachain.svg", + networkStatus: "https://status.berachain.com/", + mainnet: { + label: "Berachain Mainnet", + verifierProxy: "0xC539169910DE08D237Df0d73BcDa9074c787A4a1", + explorerUrl: "https://berascan.com/address/%s", + }, + testnet: { + label: "Berachain bArtio Testnet", + verifierProxy: "0x5A1634A86e9b7BfEf33F0f3f3EA3b1aBBc4CC85F", + explorerUrl: "https://bartio.beratrail.io/address/%s", + }, + }, + { + network: "Blast", + logoUrl: "/assets/chains/blast.svg", + networkStatus: "https://status.blast.io/", + mainnet: { + label: "Blast Mainnet", + verifierProxy: "0xaB93491064aEE774BE4b8a1cFFe4421F5B124F4e", + explorerUrl: "https://blastscan.io/address/%s", + }, + testnet: { + label: "Blast Sepolia Testnet", + verifierProxy: "0x141f4278A5D71070Dc09CA276b72809b80F20eF0", + explorerUrl: "https://sepolia.blastscan.io/address/%s", + }, + }, + { + network: "Bob", + logoUrl: "/assets/chains/bob.svg", + mainnet: { + label: "Bob Mainnet", + verifierProxy: "0xF45D6dba93d0dB2C849C280F45e60D6e11b3C4DD", + explorerUrl: "https://explorer.gobob.xyz/address/%s", + }, + testnet: { + label: "Bob Sepolia Testnet", + verifierProxy: "0x60fAa7faC949aF392DFc858F5d97E3EEfa07E9EB", + explorerUrl: "https://bob-sepolia.explorer.gobob.xyz/address/%s", + }, + }, + { + network: "Botanix", + logoUrl: "/assets/chains/botanix.svg", + testnet: { + label: "Botanix Testnet", + verifierProxy: "0xfBFff08fE4169853F7B1b5Ac67eC10dc8806801d", + explorerUrl: "https://testnet.botanixscan.io/address/%s", + }, + }, + { + network: "Ethereum", + logoUrl: "/assets/chains/ethereum.svg", + mainnet: { + label: "Ethereum Mainnet", + verifierProxy: "0x5A1634A86e9b7BfEf33F0f3f3EA3b1aBBc4CC85F", + explorerUrl: "https://etherscan.io/address/%s", + }, + testnet: { + label: "Sepolia Testnet", + verifierProxy: "0x4e9935be37302B9C97Ff4ae6868F1b566ade26d2", + explorerUrl: "https://sepolia.etherscan.io/address/%s", + }, + }, + { + network: "HashKey Chain", + logoUrl: "/assets/chains/hashkey.svg", + mainnet: { + label: "HashKey Chain Mainnet", + verifierProxy: "0x3278e7a582B94d82487d4B99b31A511CbAe2Cd54", + explorerUrl: "https://hashkey.blockscout.com/address/%s", + }, + testnet: { + label: "HashKey Chain Testnet", + verifierProxy: "0xE02A72Be64DA496797821f1c4BB500851C286C6c", + explorerUrl: "https://hashkeychain-testnet-explorer.alt.technology/address/%s", + }, + }, + { + network: "Ink", + logoUrl: "/assets/chains/ink.svg", + networkStatus: "https://status.inkonchain.com/", + mainnet: { + label: "Ink Mainnet", + verifierProxy: "0x60fAa7faC949aF392DFc858F5d97E3EEfa07E9EB", + explorerUrl: "https://explorer.inkonchain.com/address/%s", + }, + testnet: { + label: "Ink Sepolia Testnet", + verifierProxy: "0x1f27392cC2394d54fFBA83B89C881200b5d5632C", + explorerUrl: "https://explorer-sepolia.inkonchain.com/address/%s", + }, + }, + { + network: "Linea", + logoUrl: "/assets/chains/linea.svg", + networkStatus: "https://linea.statuspage.io/", + mainnet: { + label: "Linea Mainnet", + verifierProxy: "0x60fAa7faC949aF392DFc858F5d97E3EEfa07E9EB", + explorerUrl: "https://lineascan.build/address/%s", + }, + testnet: { + label: "Linea Sepolia Testnet", + verifierProxy: "0x60fAa7faC949aF392DFc858F5d97E3EEfa07E9EB", + explorerUrl: "https://sepolia.lineascan.build/address/%s", + }, + }, + { + network: "Mantle", + logoUrl: "/assets/chains/mantle.svg", + networkStatus: "https://0xmantle.instatus.com", + mainnet: { + label: "Mantle Mainnet", + verifierProxy: "0x223752Eb475098e79d10937480DF93864D7EfB83", + explorerUrl: "https://mantlescan.xyz/address/%s", + }, + testnet: { + label: "Mantle Sepolia Testnet", + verifierProxy: "0xdc458847982C496E1a5E25D005A332D5a838302B", + explorerUrl: "https://sepolia.mantlescan.xyz/address/%s", + }, + }, + { + network: "Monad", + logoUrl: "/assets/chains/monad.svg", + testnet: { + label: "Monad Testnet", + verifierProxy: "0xC539169910DE08D237Df0d73BcDa9074c787A4a1", + explorerUrl: "https://testnet.monadexplorer.com/address/%s", + }, + }, + { + network: "opBNB", + logoUrl: "/assets/chains/opbnb.svg", + networkStatus: "https://opbnb-status.bnbchain.org/", + mainnet: { + label: "opBNB Mainnet", + verifierProxy: "0x7D543D1a715ED544f7e3Ae9e3b1777BCdA56bF8e", + explorerUrl: "https://opbnb.bscscan.com/address/%s", + }, + testnet: { + label: "opBNB Testnet", + verifierProxy: "0x001225Aca0efe49Dbb48233aB83a9b4d177b581A", + explorerUrl: "https://opbnb-testnet.bscscan.com/address/%s", + }, + }, + { + network: "OP", + logoUrl: "/assets/chains/optimism.svg", + networkStatus: "https://status.optimism.io/", + mainnet: { + label: "OP Mainnet", + verifierProxy: "0xEBA4789A88C89C18f4657ffBF47B13A3abC7EB8D", + explorerUrl: "https://optimistic.etherscan.io/address/%s", + }, + testnet: { + label: "OP Sepolia", + verifierProxy: "0x5f64394a2Ab3AcE9eCC071568Fc552489a8de7AF", + explorerUrl: "https://sepolia-optimism.etherscan.io/address/%s", + }, + }, + { + network: "Ronin", + logoUrl: "/assets/chains/ronin.svg", + mainnet: { + label: "Ronin Mainnet", + verifierProxy: "0x499Ce6718a50e154B0C69905eEE8D307e5B003cc", + explorerUrl: "https://app.roninchain.com/address/%s", + }, + testnet: { + label: "Ronin Saigon Testnet", + verifierProxy: "0xE02A72Be64DA496797821f1c4BB500851C286C6c", + explorerUrl: "https://saigon-app.roninchain.com/address/%s", + }, + }, + { + network: "Scroll", + logoUrl: "/assets/chains/scroll.svg", + mainnet: { + label: "Scroll Mainnet", + verifierProxy: "0x37e550C9b35DB56F9c943126F1c2642fcbDF7B51", + explorerUrl: "https://scrollscan.com/address/%s", + }, + testnet: { + label: "Scroll Sepolia Testnet", + verifierProxy: "0xE17A7C6A7c2eF0Cb859578aa1605f8Bc2434A365", + explorerUrl: "https://sepolia.scrollscan.com/address/%s", + }, + }, + { + network: "Shibarium", + logoUrl: "/assets/chains/shibarium.svg", + mainnet: { + label: "Shibarium Mainnet", + verifierProxy: "0xBE9f07f73de2412A9d0Ed64C42De7d9A10C9F28C", + explorerUrl: "https://www.shibariumscan.io/address/%s", + }, + testnet: { + label: "Shibarium Puppynet", + verifierProxy: "0xc44eb6c00A0F89D044279cD91Bdfd5f62f752Da3", + explorerUrl: "https://puppyscan.shib.io/address/%s", + }, + }, + { + network: "Soneium", + logoUrl: "/assets/chains/soneium.svg", + mainnet: { + label: "Soneium Mainnet", + verifierProxy: "0x8760535A80Ac5908096B57A094266866f4aA1A8c", + explorerUrl: "https://soneium.blockscout.com/address/%s", + }, + testnet: { + label: "Soneium Minato Testnet", + verifierProxy: "0x26603bAC5CE09DAE5604700B384658AcA13AD6ae", + explorerUrl: "https://soneium-minato.blockscout.com/address/%s", + }, + }, + { + network: "Sonic", + logoUrl: "/assets/chains/sonic.svg", + mainnet: { + label: "Sonic Mainnet", + verifierProxy: "0xfBFff08fE4169853F7B1b5Ac67eC10dc8806801d", + explorerUrl: "https://sonicscan.org/address/%s", + }, + testnet: { + label: "Sonic Blaze Testnet", + verifierProxy: "0xfBFff08fE4169853F7B1b5Ac67eC10dc8806801d", + explorerUrl: "https://testnet.sonicscan.org/address/%s", + }, + }, + { + network: "Solana", + logoUrl: "/assets/chains/solana.svg", + networkStatus: "https://status.solana.com/", + isSolana: true, + mainnet: { + label: "Solana Mainnet", + verifierProgramId: "Gt9S41PtjR58CbG9JhJ3J6vxesqrNAswbWYbLNTMZA3c", + accessController: "7mSn5MoBjyRLKoJShgkep8J17ueGG8rYioVAiSg5YWMF", + explorerUrl: "https://explorer.solana.com/address/%s", + }, + testnet: { + label: "Solana Devnet", + verifierProgramId: "Gt9S41PtjR58CbG9JhJ3J6vxesqrNAswbWYbLNTMZA3c", + accessController: "2k3DsgwBoqrnvXKVvd7jX7aptNxdcRBdcd5HkYsGgbrb", + explorerUrl: "https://explorer.solana.com/address/%s?cluster=devnet", + }, + }, + { + network: "Unichain", + logoUrl: "/assets/chains/unichain.svg", + mainnet: { + label: "Unichain Mainnet", + verifierProxy: "0x60fAa7faC949aF392DFc858F5d97E3EEfa07E9EB", + explorerUrl: "https://uniscan.xyz/address/%s", + }, + testnet: { + label: "Unichain Sepolia Testnet", + verifierProxy: "0x60fAa7faC949aF392DFc858F5d97E3EEfa07E9EB", + explorerUrl: "https://sepolia.uniscan.xyz/address/%s", + }, + }, + { + network: "World Chain", + logoUrl: "/assets/chains/worldchain.svg", + mainnet: { + label: "World Chain Mainnet", + verifierProxy: "0x65eaE24251C5707D5aCBF7461A49fe87CB1bE4c7", + explorerUrl: "https://worldscan.org/address/%s", + }, + testnet: { + label: "World Chain Sepolia Testnet", + verifierProxy: "0x2482A390bE58b3cBB6Df72dB2e950Db20256e55E", + explorerUrl: "https://sepolia.worldscan.org/address/%s", + }, + }, + { + network: "ZKSync", + logoUrl: "/assets/chains/zksync.svg", + networkStatus: "https://uptime.com/statuspage/zkSync", + mainnet: { + label: "ZKSync Era Mainnet", + verifierProxy: "0xcA64d9D1a9AE4C10E94D0D45af9E878fc64dc207", + explorerUrl: "https://explorer.zksync.io/address/%s", + }, + testnet: { + label: "ZKSync Sepolia Testnet", + verifierProxy: "0xDf37875775d1E777bB413f27de093A62CFF4264b", + explorerUrl: "https://sepolia.explorer.zksync.io/address/%s", + }, + }, +] diff --git a/src/scripts/fix-remix-urls.ts b/src/scripts/fix-remix-urls.ts index d04fc52765f..8c6745f98b1 100644 --- a/src/scripts/fix-remix-urls.ts +++ b/src/scripts/fix-remix-urls.ts @@ -1,13 +1,42 @@ /** Fixes deployment URLs when on a preview URL */ document.addEventListener("DOMContentLoaded", () => { - const host = window.location.hostname - if (host !== "docs.chain.link") { + const currentHost = window.location.hostname + if (currentHost !== "docs.chain.link") { // Rewrite Remix URLs with current hostname // eg https://remix.ethereum.org/#url=https://docs.chain.link/samples/VRF/VRFD20.sol + // Allowed Remix hosts + const ALLOWED_REMIX_HOST = "remix.ethereum.org" + for (const item of Array.from(document.links)) { - if (item.href.startsWith("https://remix.ethereum.org")) { - item.setAttribute("href", item.href.replace("docs.chain.link", host)) + try { + // Parse URL first before any checks + const remixUrl = new URL(item.href) + + // Validate the Remix URL host explicitly + if (remixUrl.hostname === ALLOWED_REMIX_HOST) { + // Extract the embedded URL from the hash segment (#url=...) + const urlParam = remixUrl.hash.split("=")[1] + + if (urlParam) { + // Parse the embedded URL + const embeddedUrl = new URL(urlParam) + + // Only proceed if the hostname exactly matches docs.chain.link + if (embeddedUrl.hostname === "docs.chain.link") { + // Update the embedded URL to use the current preview host + embeddedUrl.hostname = currentHost + + // Overwrite the hash portion with the updated embedded URL + remixUrl.hash = `url=${embeddedUrl.toString()}` + + // Finally, set the link’s href to the rebuilt Remix URL + item.href = remixUrl.toString() + } + } + } + } catch (error) { + console.warn("Failed to process URL:", item.href, error) } } } From 343c218fc837a8f268d430d6e1a548a5bdeee8d1 Mon Sep 17 00:00:00 2001 From: Karim <98668332+khadni@users.noreply.github.com> Date: Thu, 20 Feb 2025 11:45:06 -0500 Subject: [PATCH 3/4] changelog entry --- public/changelog.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/public/changelog.json b/public/changelog.json index 42dd6ef56b2..eea849e224a 100644 --- a/public/changelog.json +++ b/public/changelog.json @@ -1,4 +1,16 @@ [ + { + "category": "integration", + "changes": [], + "date": "2025-02-20", + "description": "Chainlink Data Feeds expands support to new blockchains:\n\n- Ink Mainnet\n- Ink Sepolia testnet\n- Mantle testnet\n- Ronin Saigon testnet\n- Sonic Blaze testnet\n\nView the available price feed information on the [Price Feed Addresses](https://docs.chain.link/data-feeds/price-feeds/addresses?network=ink&page=1) page.", + "relatedNetworks": ["ink", "mantle", "ronin", "sonic"], + "relatedTokens": [], + "title": "Data Feeds Expands to New Blockchains", + "topic": "data", + "subTopic": "data-feeds", + "urls": [] + }, { "category": "integration", "changes": [], From f1f551d286753bee12841cd057f7067b2a9b313d Mon Sep 17 00:00:00 2001 From: Karim <98668332+khadni@users.noreply.github.com> Date: Thu, 20 Feb 2025 11:52:40 -0500 Subject: [PATCH 4/4] ink mainnet --- src/features/data/chains.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/features/data/chains.ts b/src/features/data/chains.ts index 56421fa73de..8cb1adea34a 100644 --- a/src/features/data/chains.ts +++ b/src/features/data/chains.ts @@ -708,6 +708,13 @@ export const CHAINS: Chain[] = [ tags: ["default"], supportedFeatures: ["feeds"], networks: [ + { + name: "Ink Mainnet", + explorerUrl: "https://explorer.inkonchain.com/address/%s", + networkType: "mainnet", + rddUrl: "https://reference-data-directory.vercel.app/feeds-ethereum-mainnet-ink-1.json", + queryString: "ink-mainnet", + }, { name: "Ink Sepolia testnet", explorerUrl: "https://explorer-sepolia.inkonchain.com/address/%s",