Soneium
andSoneiumMinato
chains are added as separate L2 chainsGoerli
chain is removedviem
version up to^2.22.11
Soneium
andSoneiumMinato
chains are added as separate L2 chainsGoerli
chain is removedviem
version up to^2.22.11
TransactionCallback
can be async and are now awaitedTransactionCallbackStage.SIGN
stage in callback can now return custom gas limit that overrides estimated oneestimateTransfer
andestimateApprove
for all (w)stETH instancesLidoSDKL2
now hasapproveWstethForWrapEstimateGas
,wrapWstethToStethEstimateGas
,unwrapStethEstimateGas
helpersLidoSDKStake
now hasstakeEthEstimateGas
helperLidoSDKWrap
now haswrapStethEstimateGas
,approveStethForWrapEstimateGas
andunwrapEstimateGas
helpersLidoSDKWithdraw.claim
now hasclaimRequestsEstimateGas
helperLidoSDKWithdraw.request
now hasrequestWithdrawalEstimateGas
,requestWithdrawalWithPermitEstimateGas
helpersLidoSDKWithdraw.request.requestWithdrawalWithPermit
now accepts customdeadline
prop for permit signature
LIDO_CONTRACT_NAMES
,LIDO_L2_CONTRACT_NAMES
,LIDO_L2_CONTRACT_NAMES
can now be used directly as non-const enumsLidoLocatorAbi
is now exported fromcore
PopulatedTransaction
that is returned frompopulateTX
helpers now only has relevant fieldsLidoSDKWrap.wrapEthEstimateGas
now applies correct gas limit
LidoSDKRewards
now filter outs edgecases with self-transfers
viem
is no longer an internal dependency and is listed as peer dependency
LidoSDKL2
module is added to support Lido on L2 networks functionalityOptimism
andOptimism-sepolia
chains are added as separate L2 chainscore.getL2ContractAddress
andLIDO_L2_CONTRACT_NAMES enum
are added to support l2 contracts- ABIs are exported from corresponding modules to support custom functionality and direct viem access
multicall
is used only if supported by client
- L2 and updated reef-knot support
apr
ingetRewardsFromChain
andgetRewardsFromSubgraph
is now in percents e.g 3.14 and not 0.314- package is build with ts@5.4.5 with changes in bundle
LidoSDKApr.calculateAprFromRebaseEvent
has increased precision
- updated version of
reef-knot
package withwagmi@2
No changes
- fixed edge-case in
withdraw.views.findCheckpointHints
where last finalized request would fail assertion withCannot find hints for unfinalized request...
- subsequently fixed same error in
withdraw.request-info
,withdraw.claim
modules
- fixed edge-cases in
getRewardsFromChain
andgetRewardsFromSubgraph
sometimes causing transfer events to be wronged and leading to negative balance
Sepolia
testnet- New method
getWithdrawalWaitingTimeByAmount
for fetching withdrawal waiting time for amount of eth - New method
getWithdrawalWaitingTimeByRequestIds
for fetching withdrawal waiting time for earlier created requests by their ids
- Support for
Sepolia
testnet - Added blocks with new methods
getWithdrawalWaitingTimeByAmount
andgetWithdrawalWaitingTimeByRequestIds
- Mainnet subgraph ID now points to updated, L2 based subgraph
viem
version up to2.0.6
- Account hoisting support: methods no longer require address/account if it's hoisted to
walletClient
or available viaeth_requestAccounts
- Stake, Wrap, Withdraw Request & Claim transaction methods now return parsed transaction result
waitForTransactionReceiptParameters
optional config added to all transaction methods props
- better multisig behavior for transactions
- Simulate methods now have correct return types
stakeEthPopulateTx
not does not calculategasLimit
which prevented usage when stake limit is reached
- Upped
next
andviem
versions
- modules constructors types did not allow
rpcProvider
passage - increased default timeout on transaction confirmation
- account hoisting in
LidoSDKSteth
andLidoSDKWSteth
forsignPermit
andpopulatePermit
LidoSDKRewards
:getRewardsFromSubgraph
now returns APR in correct units(not in percent)getRewardsFromSubgraph
now allows object to be returned fromgetSubgraphUrl
LidoSDKStatitstics
now has helper typesLidoSDKWithdraw
:- now has more exported types
approveSimulateTx
,requestWithdrawalSimulateTx
,requestWithdrawalWithPermitSimulateTx
fixed account hoistinggetClaimableRequestsETHByAccount
now returns only claimable requests
- Playground now has custom RPC input
- All modules are covered by unit tests