Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop to main #194

Merged
merged 10 commits into from
Feb 6, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,10 @@ jobs:
run: yarn build
env:
RPC_PROVIDER_URL_1: ${{ vars.RPC_PROVIDER_URL_1 }}
RPC_PROVIDER_URL_5: ${{ vars.RPC_PROVIDER_URL_5 }}
RPC_PROVIDER_URL_17000: ${{ vars.RPC_PROVIDER_URL_17000 }}
RPC_PROVIDER_URL_11155111: ${{ vars.RPC_PROVIDER_URL_11155111 }}
RPC_PROVIDER_URL_11155420: ${{ vars.RPC_PROVIDER_URL_11155420 }}
RPC_PROVIDER_URL_1946: ${{ vars.RPC_PROVIDER_URL_1946 }}
WALLETCONNECT_PROJECT_ID: ${{ vars.WALLETCONNECT_PROJECT_ID }}
SUPPORTED_CHAINS: ${{ vars.SUPPORTED_CHAINS }}
DEFAULT_CHAIN: ${{ vars.DEFAULT_CHAIN }}
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/deploy-pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,10 @@ jobs:
run: yarn build
env:
RPC_PROVIDER_URL_1: ${{ vars.RPC_PROVIDER_URL_1 }}
RPC_PROVIDER_URL_5: ${{ vars.RPC_PROVIDER_URL_5 }}
RPC_PROVIDER_URL_17000: ${{ vars.RPC_PROVIDER_URL_17000 }}
RPC_PROVIDER_URL_11155111: ${{ vars.RPC_PROVIDER_URL_11155111 }}
RPC_PROVIDER_URL_11155420: ${{ vars.RPC_PROVIDER_URL_11155420 }}
RPC_PROVIDER_URL_1946: ${{ vars.RPC_PROVIDER_URL_1946 }}
WALLETCONNECT_PROJECT_ID: ${{ vars.WALLETCONNECT_PROJECT_ID }}
SUPPORTED_CHAINS: ${{ vars.SUPPORTED_CHAINS }}
DEFAULT_CHAIN: ${{ vars.DEFAULT_CHAIN }}
Expand Down
12 changes: 6 additions & 6 deletions docs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,19 +15,19 @@
"typecheck": "tsc"
},
"dependencies": {
"@docusaurus/core": "3.4.0",
"@docusaurus/preset-classic": "3.4.0",
"@docusaurus/theme-mermaid": "^3.4.0",
"@docusaurus/core": "^3.7.0",
"@docusaurus/preset-classic": "^3.7.0",
"@docusaurus/theme-mermaid": "^3.7.0",
"@mdx-js/react": "^3.0.0",
"clsx": "^2.0.0",
"prism-react-renderer": "^2.3.0",
"react": "^18.3.1",
"react-dom": "^18.3.1"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.4.0",
"@docusaurus/tsconfig": "3.4.0",
"@docusaurus/types": "3.4.0",
"@docusaurus/module-type-aliases": "^3.7.0",
"@docusaurus/tsconfig": "^3.7.0",
"@docusaurus/types": "^3.7.0",
"typescript": "~5.2.2"
},
"browserslist": {
Expand Down
8 changes: 5 additions & 3 deletions docs/sdk/modules/l2.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,12 @@ Modules exposes Lido MultiChain deployments. [See full info here](https://lido.f
This is core module for all L2 functionality. It will throw error if used on with chains that are not currently supported.

| **Chain** | **wsETH** | **stETH+(un)Wrap** |
| ---------------- | --------- | ------------------ |
|------------------| --------- | ------------------ |
| Optimism Sepolia | ✅ | ✅ |
| Optmism | ✅ | ✅ |
| 🔜 | | |
| Optimism | ✅ | ✅ |
| Soneium Minato | ✅ | ✅ |
| Soneium | ✅ | ✅ |
| more 🔜 | | |

Use this helper to understand which contracts are supported on chain:

Expand Down
2 changes: 1 addition & 1 deletion examples/erlang-bridge/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@
},
"dependencies": {
"@lidofinance/lido-ethereum-sdk": "workspace:*",
"viem": "^2.21.9"
"viem": "^2.22.11"
}
}
2 changes: 1 addition & 1 deletion examples/rewards/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
},
"dependencies": {
"@lidofinance/lido-ethereum-sdk": "workspace:*",
"viem": "^2.21.9"
"viem": "^2.22.11"
},
"devDependencies": {
"rimraf": "^5.0.5",
Expand Down
2 changes: 1 addition & 1 deletion packages/lido-pulse/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@
"fastify": "^4.28.1",
"fastify-plugin": "^4.5.1",
"reflect-metadata": "^0.2.2",
"viem": "^2.21.9"
"viem": "^2.22.11"
},
"devDependencies": {
"@types/node": "^20.14.10",
Expand Down
16 changes: 16 additions & 0 deletions packages/sdk/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
# 4.2.0

## SDK

### Added

- `Soneium` and `SoneiumMinato` chains are added as separate L2 chains
- `Goerli` chain is removed
- `viem` version up to `^2.22.11`

## Playground

- `Soneium` and `SoneiumMinato` chains are added as separate L2 chains
- `Goerli` chain is removed
- `viem` version up to `^2.22.11`

# 4.1.0

## SDK
Expand Down
2 changes: 1 addition & 1 deletion packages/sdk/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@
"graphql-request": "^6.1.0"
},
"peerDependencies": {
"viem": "^2.21"
"viem": "^2.22"
},
"devDependencies": {
"@jest/globals": "^29.7.0",
Expand Down
24 changes: 16 additions & 8 deletions packages/sdk/src/common/constants.ts
Original file line number Diff line number Diff line change
@@ -1,31 +1,34 @@
import { type Address, type Chain } from 'viem';
import {
goerli,
mainnet,
holesky,
sepolia,
optimismSepolia,
optimism,
soneiumMinato,
soneium,
} from 'viem/chains';

export enum CHAINS {
Goerli = 5,
Mainnet = 1,
Holesky = 17000,
Sepolia = 11155111,
Optimism = 10,
OptimismSepolia = 11155420,
Soneium = 1868,
SoneiumMinato = 1946,
}

export const APPROX_BLOCKS_BY_DAY = 7600n;
export const APPROX_SECONDS_PER_BLOCK = 12n;
export const SUPPORTED_CHAINS: CHAINS[] = [
CHAINS.Goerli,
CHAINS.Mainnet,
CHAINS.Holesky,
CHAINS.Sepolia,
CHAINS.Optimism,
CHAINS.OptimismSepolia,
CHAINS.Soneium,
CHAINS.SoneiumMinato,
];

export const SUBMIT_EXTRA_GAS_TRANSACTION_RATIO = 1.05;
Expand All @@ -35,7 +38,6 @@ export const LIDO_LOCATOR_BY_CHAIN: {
[key in CHAINS]?: Address;
} = {
[CHAINS.Mainnet]: '0xC1d0b3DE6792Bf6b4b37EccdcC24e45978Cfd2Eb',
[CHAINS.Goerli]: '0x1eDf09b5023DC86737b59dE68a8130De878984f5',
[CHAINS.Holesky]: '0x28FAB2059C713A7F9D8c86Db49f9bb0e96Af1ef8',
[CHAINS.Sepolia]: '0x8f6254332f69557A72b0DA2D5F0Bc07d4CA991E7',
};
Expand All @@ -44,14 +46,12 @@ export const SUBRGRAPH_ID_BY_CHAIN: {
[key in CHAINS]?: string;
} = {
[CHAINS.Mainnet]: 'Sxx812XgeKyzQPaBpR5YZWmGV5fZuBaPdh7DFhzSwiQ',
[CHAINS.Goerli]: 'QmeDfGTuNbSoZ71zi3Ch4WNRbzALfiFPnJMYUFPinLiFNa',
};

export const EARLIEST_TOKEN_REBASED_EVENT: {
[key in CHAINS]?: bigint;
} = {
[CHAINS.Mainnet]: 17272708n,
[CHAINS.Goerli]: 8712039n,
[CHAINS.Holesky]: 52174n,
[CHAINS.Sepolia]: 5434668n,
} as const;
Expand Down Expand Up @@ -97,6 +97,14 @@ export const LIDO_L2_CONTRACT_ADDRESSES: {
wsteth: '0x1F32b1c2345538c0c6f582fCB022739c4A194Ebb',
steth: '0x76A50b8c7349cCDDb7578c6627e79b5d99D24138',
},
[CHAINS.Soneium]: {
wsteth: '0xaA9BD8c957D803466FA92504BDd728cC140f8941',
steth: '0x0Ce031AEd457C870D74914eCAA7971dd3176cDAF',
},
[CHAINS.SoneiumMinato]: {
wsteth: '0xf7489b8d220DCf33bAe6b594C070061E4da9fDa9',
steth: '0x4e55E2d4c83df2E0083f1D616AFf007ac420b110',
},
};

export const CONTRACTS_BY_TOKENS = {
Expand Down Expand Up @@ -133,15 +141,15 @@ export const PERMIT_MESSAGE_TYPES = {

export const VIEM_CHAINS: { [key in CHAINS]: Chain } = {
[CHAINS.Mainnet]: mainnet,
[CHAINS.Goerli]: goerli,
[CHAINS.Holesky]: holesky,
[CHAINS.Sepolia]: sepolia,
[CHAINS.Optimism]: optimism,
[CHAINS.OptimismSepolia]: optimismSepolia,
[CHAINS.Soneium]: soneium,
[CHAINS.SoneiumMinato]: soneiumMinato,
};

export const WQ_API_URLS: { [key in CHAINS]?: string } = {
[CHAINS.Mainnet]: 'https://wq-api.lido.fi',
[CHAINS.Goerli]: 'https://wq-api.testnet.fi',
[CHAINS.Holesky]: 'https://wq-api-holesky.testnet.fi',
};
3 changes: 1 addition & 2 deletions playground/.env.example
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@

# Public rpc urls
RPC_PROVIDER_URL_1 = https://rpc.ankr.com/eth
RPC_PROVIDER_URL_5 = https://rpc.ankr.com/eth_goerli
RPC_PROVIDER_URL_17000 =
RPC_PROVIDER_URL_11155111 =

# supported networks for connecting wallet
SUPPORTED_CHAINS=1,5,17000
SUPPORTED_CHAINS=1,17000,11155111

# this chain uses when a wallet is not connected
DEFAULT_CHAIN=17000
Expand Down
9 changes: 7 additions & 2 deletions playground/env-dynamics.mjs
Original file line number Diff line number Diff line change
@@ -1,14 +1,19 @@
/** @type Record<number,string> */
export const rpcProviderUrls = {
1: process.env[`RPC_PROVIDER_URL_1`],
5: process.env[`RPC_PROVIDER_URL_5`],
17000: process.env[`RPC_PROVIDER_URL_17000`],
11155111: process.env[`RPC_PROVIDER_URL_11155111`],
// Optimism
10: process.env[`RPC_PROVIDER_URL_10`],
// OP sepolia
11155420: process.env[`RPC_PROVIDER_URL_11155420`],
// Soneium Minato
1946: process.env[`RPC_PROVIDER_URL_1946`],
};
/** @type number */
export const defaultChain = parseInt(process.env.DEFAULT_CHAIN, 10) || 17000;
/** @type number[] */
export const supportedChains = process.env?.SUPPORTED_CHAINS?.split(',').map(
(chainId) => parseInt(chainId, 10),
) ?? [1, 5, 17000, 11155111];
) ?? [17000, 11155111];
export const walletconnectProjectId = process.env.WALLETCONNECT_PROJECT_ID;
2 changes: 1 addition & 1 deletion playground/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
"styled-components": "^5.3.5",
"swr": "^1.3.0",
"tiny-invariant": "^1.3.1",
"viem": "^2.21.9",
"viem": "^2.22.11",
"wagmi": "2.12.12"
},
"devDependencies": {
Expand Down
9 changes: 5 additions & 4 deletions playground/providers/web3.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@ import {
import { createConfig, http, WagmiProvider } from 'wagmi';
import * as wagmiChains from 'wagmi/chains';
import invariant from 'tiny-invariant';
import { CHAINS } from '@lido-sdk/constants';
import { CHAINS } from '@lidofinance/lido-ethereum-sdk';
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
import { useThemeToggle } from '@lidofinance/lido-ui';

type ChainsList = [wagmiChains.Chain, ...wagmiChains.Chain[]];

export const L2_CHAINS = [10, 11155420];
export const L2_CHAINS = [10, 11155420, 1946];

const wagmiChainsArray = Object.values(wagmiChains) as any as ChainsList;

Expand Down Expand Up @@ -62,11 +62,12 @@ const Web3Provider: FC<PropsWithChildren> = ({ children }) => {
customRpc[chain] ?? dynamics.rpcProviderUrls[chain];
return {
[CHAINS.Mainnet]: getRpc(CHAINS.Mainnet),
[CHAINS.Goerli]: getRpc(CHAINS.Goerli),
[CHAINS.Holesky]: getRpc(CHAINS.Holesky),
[CHAINS.Sepolia]: getRpc(CHAINS.Sepolia),
// OP sepolia
[11155420]: getRpc(11155420),
[CHAINS.OptimismSepolia]: getRpc(CHAINS.OptimismSepolia),
// Soneium Minato
[CHAINS.SoneiumMinato]: getRpc(CHAINS.SoneiumMinato),
};
}, [customRpc]);

Expand Down
Loading