@lombard.finance/sdk 3.7.1 → 3.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +106 -98
- package/README.md +164 -160
- package/dist/api-functions/generateDepositBtcAddress/generateDepositBtcAddress.d.ts.map +1 -1
- package/dist/api-functions/get-badges-by-address/get-badges-by-address.d.ts +1 -1
- package/dist/api-functions/get-badges-by-address/get-badges-by-address.d.ts.map +1 -1
- package/dist/api-functions/getDepositBtcAddress/getDepositBtcAddress.d.ts +1 -1
- package/dist/api-functions/getDepositBtcAddress/getDepositBtcAddress.d.ts.map +1 -1
- package/dist/api-functions/getDepositBtcAddress/make-request.d.ts.map +1 -1
- package/dist/api-functions/getDepositsByAddress/getDepositsByAddress.d.ts.map +1 -1
- package/dist/api-functions/getLBTCExchangeRate/get-exchange-ratio.d.ts.map +1 -1
- package/dist/api-functions/getLBTCExchangeRate/getLBTCExchangeRate.d.ts.map +1 -1
- package/dist/api-functions/getLBTCExchangeRate/index.d.ts +1 -1
- package/dist/api-functions/getLBTCExchangeRate/index.d.ts.map +1 -1
- package/dist/api-functions/getPointsByAddress/getPointsByAddress.d.ts.map +1 -1
- package/dist/api-functions/getUnstakesByAddress/getUnstakesByAddress.d.ts +3 -1
- package/dist/api-functions/getUnstakesByAddress/getUnstakesByAddress.d.ts.map +1 -1
- package/dist/api-functions/getUserStakeAndBakeSignature/getUserStakeAndBakeSignature.d.ts.map +1 -1
- package/dist/api-functions/setReferral/setReferral.d.ts.map +1 -1
- package/dist/api-functions/storeNetworkFeeSignature/storeNetworkFeeSignature.d.ts.map +1 -1
- package/dist/api-functions/storeStakeAndBakeSignature/storeStakeAndBakeSignature.d.ts.map +1 -1
- package/dist/bridge/index.d.ts +2 -2
- package/dist/bridge/index.d.ts.map +1 -1
- package/dist/bridge/lib/bridge.d.ts.map +1 -1
- package/dist/bridge/lib/ccip-bridge.d.ts.map +1 -1
- package/dist/bridge/lib/ccip-config.d.ts +1 -1
- package/dist/bridge/lib/ccip-config.d.ts.map +1 -1
- package/dist/bridge/lib/config.d.ts.map +1 -1
- package/dist/bridge/lib/oft-bridge.d.ts.map +1 -1
- package/dist/clients/evm-signer-adapter.d.ts.map +1 -1
- package/dist/clients/public-client.d.ts.map +1 -1
- package/dist/clients/rpc-url-config.d.ts.map +1 -1
- package/dist/clients/wallet-client.d.ts.map +1 -1
- package/dist/common/blockchain-identifier.d.ts +4 -0
- package/dist/common/blockchain-identifier.d.ts.map +1 -1
- package/dist/common/chains.d.ts +191 -97
- package/dist/common/chains.d.ts.map +1 -1
- package/dist/common/chains.stories.d.ts.map +1 -1
- package/dist/common/contract-info.d.ts.map +1 -1
- package/dist/common/parameters.d.ts.map +1 -1
- package/dist/contract-functions/approveLBTC/approveLBTC.d.ts.map +1 -1
- package/dist/contract-functions/approveToken/approveToken.d.ts +1 -1
- package/dist/contract-functions/approveToken/approveToken.d.ts.map +1 -1
- package/dist/contract-functions/claimLBTC/claimLBTC.d.ts.map +1 -1
- package/dist/contract-functions/claimUnstakeRedeem/claimUnstakeRedeem.d.ts.map +1 -1
- package/dist/contract-functions/deposit/depositToken.d.ts.map +1 -1
- package/dist/contract-functions/getBasculeDepositStatus/getBasculeDepositStatus.d.ts.map +1 -1
- package/dist/contract-functions/getBasculeDepositStatus/getBasculeDepositStatus.stories.d.ts.map +1 -1
- package/dist/contract-functions/getBasculeDepositStatus/index.d.ts +1 -1
- package/dist/contract-functions/getBasculeDepositStatus/index.d.ts.map +1 -1
- package/dist/contract-functions/getLBTCMintingFee/getLBTCMintingFee.d.ts.map +1 -1
- package/dist/contract-functions/getLBTCMintingFee/getLBTCMintingFee.stories.d.ts.map +1 -1
- package/dist/contract-functions/getLBTCTotalSupply/getLBTCTotalSupply.d.ts.map +1 -1
- package/dist/contract-functions/getPermitNonce/getPermitNonce.d.ts.map +1 -1
- package/dist/contract-functions/getShareValue/getShareValue.d.ts.map +1 -1
- package/dist/contract-functions/getSharesByAddress/getSharesByAddress.d.ts.map +1 -1
- package/dist/contract-functions/getStakeAndBakeFee/getStakeAndBakeFee.d.ts.map +1 -1
- package/dist/contract-functions/index.d.ts +2 -2
- package/dist/contract-functions/index.d.ts.map +1 -1
- package/dist/contract-functions/signNetworkFee/signNetworkFee.d.ts.map +1 -1
- package/dist/contract-functions/signStakeAndBake/handleApprove.d.ts.map +1 -1
- package/dist/contract-functions/signStakeAndBake/signStakeAndBake.d.ts.map +1 -1
- package/dist/contract-functions/signStakeAndBake/typed-data-builder.d.ts.map +1 -1
- package/dist/contract-functions/signStakeAndBake/utils.d.ts.map +1 -1
- package/dist/contract-functions/signStakeAndBake/validation.d.ts.map +1 -1
- package/dist/contract-functions/unstakeLBTC/unstakeLBTC.d.ts.map +1 -1
- package/dist/debug-api/btc-script-to-address.d.ts.map +1 -1
- package/dist/debug-api/btc-tx-info.d.ts.map +1 -1
- package/dist/debug-api/evm-by-btc-address.d.ts.map +1 -1
- package/dist/defi/defi-registry.d.ts +1 -1
- package/dist/defi/defi-registry.d.ts.map +1 -1
- package/dist/defi/defi-registry.stories.d.ts.map +1 -1
- package/dist/defi/index.d.ts +1 -1
- package/dist/defi/index.d.ts.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +7 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +51 -49
- package/dist/index2.cjs +54 -54
- package/dist/index2.js +14557 -11391
- package/dist/metrics/get-additional-rewards.d.ts +1 -1
- package/dist/metrics/get-additional-rewards.d.ts.map +1 -1
- package/dist/metrics/get-lbtc-apy.d.ts +1 -1
- package/dist/metrics/get-lbtc-apy.d.ts.map +1 -1
- package/dist/metrics/get-lbtc-stats.d.ts.map +1 -1
- package/dist/metrics/get-lbtc-stats.stories.d.ts.map +1 -1
- package/dist/metrics/get-positions-summary.d.ts.map +1 -1
- package/dist/metrics/get-positions-summary.stories.d.ts.map +1 -1
- package/dist/stories/arg-types.d.ts.map +1 -1
- package/dist/tokens/lbtc-addresses.d.ts.map +1 -1
- package/dist/tokens/token-addresses.d.ts +1 -1
- package/dist/tokens/token-addresses.d.ts.map +1 -1
- package/dist/tokens/tokens.d.ts +5 -5
- package/dist/tokens/tokens.d.ts.map +1 -1
- package/dist/utils/block.d.ts.map +1 -1
- package/dist/utils/env.d.ts.map +1 -1
- package/dist/utils/err.d.ts +2 -2
- package/dist/utils/err.d.ts.map +1 -1
- package/dist/utils/transaction-executor.d.ts.map +1 -1
- package/dist/vaults/index.d.ts +5 -5
- package/dist/vaults/index.d.ts.map +1 -1
- package/dist/vaults/lib/config.d.ts.map +1 -1
- package/dist/vaults/lib/metrics/get-vault-apy.d.ts.map +1 -1
- package/dist/vaults/lib/metrics/get-vault-points.d.ts.map +1 -1
- package/dist/vaults/lib/metrics/get-vault-tvl.d.ts.map +1 -1
- package/dist/vaults/lib/ops/deposit.d.ts.map +1 -1
- package/dist/vaults/lib/ops/get-vault-deposits.d.ts.map +1 -1
- package/dist/vaults/lib/ops/get-vault-withdrawals.d.ts.map +1 -1
- package/dist/vaults/lib/ops/withdraw.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/api-functions/generateDepositBtcAddress/generateDepositBtcAddress.ts +4 -3
- package/src/api-functions/get-badges-by-address/get-badges-by-address.ts +2 -1
- package/src/api-functions/getDepositBtcAddress/getDepositBtcAddress.test.ts +3 -2
- package/src/api-functions/getDepositBtcAddress/getDepositBtcAddress.ts +3 -2
- package/src/api-functions/getDepositBtcAddress/make-request.ts +2 -1
- package/src/api-functions/getDepositsByAddress/getDepositsByAddress.ts +4 -3
- package/src/api-functions/getLBTCExchangeRate/get-exchange-ratio.ts +2 -1
- package/src/api-functions/getLBTCExchangeRate/getLBTCExchangeRate.ts +1 -0
- package/src/api-functions/getLBTCExchangeRate/index.ts +1 -1
- package/src/api-functions/getPointsByAddress/getPointsByAddress.ts +1 -0
- package/src/api-functions/getUnstakesByAddress/getUnstakesByAddress.ts +20 -7
- package/src/api-functions/getUserStakeAndBakeSignature/getUserStakeAndBakeSignature.ts +1 -0
- package/src/api-functions/setReferral/setReferral.ts +1 -0
- package/src/api-functions/storeNetworkFeeSignature/storeNetworkFeeSignature.ts +1 -0
- package/src/api-functions/storeStakeAndBakeSignature/storeStakeAndBakeSignature.ts +1 -0
- package/src/bridge/index.ts +2 -3
- package/src/bridge/lib/bridge.ts +3 -2
- package/src/bridge/lib/ccip-bridge.ts +5 -4
- package/src/bridge/lib/ccip-config.ts +2 -1
- package/src/bridge/lib/config.ts +1 -0
- package/src/bridge/lib/oft-bridge.ts +3 -2
- package/src/clients/evm-signer-adapter.ts +4 -3
- package/src/clients/public-client.ts +1 -0
- package/src/clients/rpc-url-config.ts +4 -1
- package/src/clients/wallet-client.ts +3 -2
- package/src/common/blockchain-identifier.ts +17 -2
- package/src/common/chains.stories.tsx +2 -2
- package/src/common/chains.ts +54 -10
- package/src/common/contract-info.ts +1 -0
- package/src/common/parameters.ts +1 -0
- package/src/contract-functions/approveLBTC/approveLBTC.ts +1 -0
- package/src/contract-functions/approveToken/approveToken.ts +3 -2
- package/src/contract-functions/approveToken/index.ts +0 -1
- package/src/contract-functions/claimLBTC/claimLBTC.ts +1 -0
- package/src/contract-functions/claimUnstakeRedeem/claimUnstakeRedeem.ts +6 -5
- package/src/contract-functions/claimUnstakeRedeem/index.ts +0 -1
- package/src/contract-functions/deposit/depositToken.ts +7 -6
- package/src/contract-functions/getBasculeDepositStatus/getBasculeDepositStatus.stories.tsx +6 -6
- package/src/contract-functions/getBasculeDepositStatus/getBasculeDepositStatus.ts +14 -9
- package/src/contract-functions/getBasculeDepositStatus/index.ts +1 -1
- package/src/contract-functions/getLBTCMintingFee/getLBTCMintingFee.stories.tsx +1 -1
- package/src/contract-functions/getLBTCMintingFee/getLBTCMintingFee.ts +1 -0
- package/src/contract-functions/getLBTCTotalSupply/getLBTCTotalSupply.ts +1 -0
- package/src/contract-functions/getPermitNonce/getPermitNonce.ts +1 -0
- package/src/contract-functions/getShareValue/getShareValue.ts +2 -1
- package/src/contract-functions/getSharesByAddress/getSharesByAddress.ts +2 -1
- package/src/contract-functions/getStakeAndBakeFee/__tests__/getStakeAndBakeFee.test.ts +8 -4
- package/src/contract-functions/getStakeAndBakeFee/getStakeAndBakeFee.tsx +1 -0
- package/src/contract-functions/index.ts +2 -2
- package/src/contract-functions/signNetworkFee/signNetworkFee.ts +1 -0
- package/src/contract-functions/signStakeAndBake/__tests__/signStakeAndBake.test.ts +5 -4
- package/src/contract-functions/signStakeAndBake/handleApprove.ts +1 -0
- package/src/contract-functions/signStakeAndBake/index.ts +0 -1
- package/src/contract-functions/signStakeAndBake/signStakeAndBake.ts +15 -17
- package/src/contract-functions/signStakeAndBake/typed-data-builder.ts +6 -6
- package/src/contract-functions/signStakeAndBake/utils.ts +2 -1
- package/src/contract-functions/signStakeAndBake/validation.ts +5 -4
- package/src/contract-functions/unstakeLBTC/unstakeLBTC.ts +2 -1
- package/src/debug-api/btc-script-to-address.ts +1 -0
- package/src/debug-api/btc-tx-info.ts +2 -1
- package/src/debug-api/evm-by-btc-address.ts +1 -0
- package/src/defi/README.md +62 -33
- package/src/defi/defi-registry.stories.tsx +3 -1
- package/src/defi/defi-registry.ts +2 -1
- package/src/defi/index.ts +1 -2
- package/src/index.ts +34 -32
- package/src/metrics/get-additional-rewards.ts +3 -2
- package/src/metrics/get-lbtc-apy.ts +2 -1
- package/src/metrics/get-lbtc-stats.stories.tsx +2 -2
- package/src/metrics/get-lbtc-stats.ts +1 -0
- package/src/metrics/get-positions-summary.stories.tsx +4 -4
- package/src/metrics/get-positions-summary.ts +2 -1
- package/src/stories/arg-types.ts +1 -1
- package/src/tokens/abi/ASSET_ROUTER_ABI.ts +1 -1
- package/src/tokens/cross-chain-addresses.stories.tsx +16 -17
- package/src/tokens/denomination-utils.stories.tsx +6 -7
- package/src/tokens/getLbtcContractAddresses.stories.tsx +7 -8
- package/src/tokens/getTokenByAddress.stories.tsx +6 -7
- package/src/tokens/getTokenContractInfo.stories.tsx +9 -10
- package/src/tokens/isUpgradedContract.stories.tsx +4 -5
- package/src/tokens/lbtc-addresses.ts +1 -0
- package/src/tokens/token-addresses.ts +72 -49
- package/src/tokens/tokens.ts +8 -7
- package/src/utils/block.ts +1 -0
- package/src/utils/env.ts +1 -0
- package/src/utils/err.ts +3 -2
- package/src/utils/transaction-executor.ts +2 -1
- package/src/vaults/index.ts +14 -21
- package/src/vaults/lib/config.ts +1 -0
- package/src/vaults/lib/metrics/get-vault-apy.ts +2 -1
- package/src/vaults/lib/metrics/get-vault-points.ts +2 -1
- package/src/vaults/lib/metrics/get-vault-tvl.ts +3 -2
- package/src/vaults/lib/ops/deposit.ts +2 -1
- package/src/vaults/lib/ops/get-vault-deposits.ts +6 -5
- package/src/vaults/lib/ops/get-vault-withdrawals.ts +6 -5
- package/src/vaults/lib/ops/withdraw.ts +2 -1
|
@@ -1,28 +1,29 @@
|
|
|
1
1
|
import { DEFAULT_ENV, Env } from '@lombard.finance/sdk-common';
|
|
2
2
|
import { Address } from 'viem';
|
|
3
|
+
|
|
3
4
|
import {
|
|
4
5
|
ChainId,
|
|
6
|
+
isSolanaChain,
|
|
7
|
+
isStarknetChainId,
|
|
8
|
+
isSuiChain,
|
|
9
|
+
isValidChain,
|
|
5
10
|
SOLANA_DEVNET_CHAIN,
|
|
6
11
|
SOLANA_MAINNET_CHAIN,
|
|
7
12
|
SOLANA_TESTNET_CHAIN,
|
|
13
|
+
SolanaChain,
|
|
8
14
|
STARKNET_MAINNET_CHAIN,
|
|
9
15
|
STARKNET_SEPOLIA_CHAIN,
|
|
16
|
+
StarknetChainId,
|
|
10
17
|
SUI_MAINNET_CHAIN,
|
|
11
18
|
SUI_TESTNET_CHAIN,
|
|
12
|
-
SolanaChain,
|
|
13
|
-
StarknetChainId,
|
|
14
19
|
SuiChain,
|
|
15
|
-
isSolanaChain,
|
|
16
|
-
isStarknetChainId,
|
|
17
|
-
isSuiChain,
|
|
18
|
-
isValidChain,
|
|
19
20
|
} from '../common/chains';
|
|
20
21
|
import { featureConfig } from '../common/feature-config';
|
|
21
22
|
import { AddressKind, BridgeTokenAddresses } from './types';
|
|
22
23
|
|
|
23
24
|
// Re-export for backward compatibility
|
|
24
|
-
export { AddressKind } from './types';
|
|
25
25
|
export type { BridgeTokenAddresses } from './types';
|
|
26
|
+
export { AddressKind } from './types';
|
|
26
27
|
|
|
27
28
|
export enum Token {
|
|
28
29
|
// Lombard tokens:
|
|
@@ -111,32 +112,41 @@ type TokenAddresses<
|
|
|
111
112
|
const EVM_BTCB_ADDRESSES: TokenAddressesPerEnv<Token.BTCb, ChainId> = {
|
|
112
113
|
[Env.prod]: {
|
|
113
114
|
[ChainId.katana]: '0xB0F70C0bD6FD87dbEb7C10dC692a2a6106817072',
|
|
114
|
-
...(featureConfig.isAvalancheEnabled
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
115
|
+
...(featureConfig.isAvalancheEnabled
|
|
116
|
+
? {
|
|
117
|
+
[ChainId.avalanche]: {
|
|
118
|
+
token: '0x152b9d0FdC40C096757F570A51E494bd4b943E50',
|
|
119
|
+
adapter: '0x85D1D52e11290F174444d21C2a167bEDBE36e4d2',
|
|
120
|
+
},
|
|
121
|
+
}
|
|
122
|
+
: {}),
|
|
123
|
+
...(featureConfig.isMonadEnabled
|
|
124
|
+
? {
|
|
125
|
+
[ChainId.monad]: '0xB0F70C0bD6FD87dbEb7C10dC692a2a6106817072',
|
|
126
|
+
}
|
|
127
|
+
: {}),
|
|
123
128
|
[ChainId.megaeth]: '0xB0F70C0bD6FD87dbEb7C10dC692a2a6106817072',
|
|
129
|
+
[ChainId.stable]: '0xB0F70C0bD6FD87dbEb7C10dC692a2a6106817072',
|
|
124
130
|
},
|
|
125
131
|
[Env.ibc]: {
|
|
126
|
-
...(featureConfig.isAvalancheEnabled
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
+
...(featureConfig.isAvalancheEnabled
|
|
133
|
+
? {
|
|
134
|
+
[ChainId.avalancheFuji]: {
|
|
135
|
+
adapter: '0x1391f9AC408cf13214DDB71d359002658eaF9ebb',
|
|
136
|
+
token: '0x71ba2b8dc58e7ca1b6d81a60729e31aefa37ae02',
|
|
137
|
+
},
|
|
138
|
+
}
|
|
139
|
+
: {}),
|
|
132
140
|
},
|
|
133
141
|
[Env.dev]: {
|
|
134
|
-
...(featureConfig.isAvalancheEnabled
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
142
|
+
...(featureConfig.isAvalancheEnabled
|
|
143
|
+
? {
|
|
144
|
+
[ChainId.avalancheFuji]: {
|
|
145
|
+
adapter: '0x0A65C37d07c32E5eA8ea40495b7f249cdE26935e',
|
|
146
|
+
token: '0x7FbdC44BfEBDe80C970ba622B678daB36cee31f6',
|
|
147
|
+
},
|
|
148
|
+
}
|
|
149
|
+
: {}),
|
|
140
150
|
[ChainId.binanceSmartChainTestnet]:
|
|
141
151
|
'0xea3F66E5f2928dB9673103BfA01a2153A57a8050',
|
|
142
152
|
[ChainId.sepolia]: '0x195219A262423d209E126BD21cf4F4F9AA796927',
|
|
@@ -147,12 +157,14 @@ const EVM_BTCB_ADDRESSES: TokenAddressesPerEnv<Token.BTCb, ChainId> = {
|
|
|
147
157
|
[ChainId.katanaTatara]: '0x600e4006278EB11FA1691cA0FE6C5fcfC4992d58',
|
|
148
158
|
},
|
|
149
159
|
[Env.testnet]: {
|
|
150
|
-
...(featureConfig.isAvalancheEnabled
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
160
|
+
...(featureConfig.isAvalancheEnabled
|
|
161
|
+
? {
|
|
162
|
+
[ChainId.avalancheFuji]: {
|
|
163
|
+
adapter: '0x41BCd71e7C92b1c8dDe53037F9b2c4AA2058b1cB',
|
|
164
|
+
token: '0xB14f240714Bd23Bda103A7189D512A90326E4D01',
|
|
165
|
+
},
|
|
166
|
+
}
|
|
167
|
+
: {}),
|
|
156
168
|
[ChainId.sepolia]: '0x20eA7b8ABb4B583788F1DFC738C709a2d9675681',
|
|
157
169
|
[ChainId.katanaTatara]: '0x20eA7b8ABb4B583788F1DFC738C709a2d9675681',
|
|
158
170
|
},
|
|
@@ -161,9 +173,11 @@ const EVM_BTCB_ADDRESSES: TokenAddressesPerEnv<Token.BTCb, ChainId> = {
|
|
|
161
173
|
export const EVM_LBTC_ADDRESSES: TokenAddressesPerEnv<Token.LBTC, ChainId> = {
|
|
162
174
|
[Env.prod]: {
|
|
163
175
|
[ChainId.ethereum]: '0x8236a87084f8b84306f72007f36f2618a5634494',
|
|
164
|
-
...(featureConfig.isAvalancheEnabled
|
|
165
|
-
|
|
166
|
-
|
|
176
|
+
...(featureConfig.isAvalancheEnabled
|
|
177
|
+
? {
|
|
178
|
+
[ChainId.avalanche]: undefined,
|
|
179
|
+
}
|
|
180
|
+
: {}),
|
|
167
181
|
[ChainId.base]: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
|
|
168
182
|
[ChainId.berachain]: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
|
|
169
183
|
[ChainId.binanceSmartChain]: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
|
|
@@ -172,18 +186,23 @@ export const EVM_LBTC_ADDRESSES: TokenAddressesPerEnv<Token.LBTC, ChainId> = {
|
|
|
172
186
|
[ChainId.katana]: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
|
|
173
187
|
[ChainId.morph]: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
|
|
174
188
|
[ChainId.sonic]: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
|
|
189
|
+
[ChainId.stable]: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
|
|
175
190
|
[ChainId.swell]: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
|
|
176
191
|
[ChainId.tac]: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
|
|
177
192
|
[ChainId.bob]: '0xA45d4121b3D47719FF57a947A9d961539Ba33204',
|
|
178
|
-
...(featureConfig.isMonadEnabled
|
|
179
|
-
|
|
180
|
-
|
|
193
|
+
...(featureConfig.isMonadEnabled
|
|
194
|
+
? {
|
|
195
|
+
[ChainId.monad]: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
|
|
196
|
+
}
|
|
197
|
+
: {}),
|
|
181
198
|
[ChainId.megaeth]: '0xecAc9C5F704e954931349Da37F60E39f515c11c1',
|
|
182
199
|
},
|
|
183
200
|
[Env.stage]: {
|
|
184
|
-
...(featureConfig.isAvalancheEnabled
|
|
185
|
-
|
|
186
|
-
|
|
201
|
+
...(featureConfig.isAvalancheEnabled
|
|
202
|
+
? {
|
|
203
|
+
[ChainId.avalancheFuji]: undefined,
|
|
204
|
+
}
|
|
205
|
+
: {}),
|
|
187
206
|
[ChainId.baseSepoliaTestnet]: '0x731eFa688F3679688cf60A3993b8658138953ED6',
|
|
188
207
|
[ChainId.berachainBartioTestnet]:
|
|
189
208
|
'0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30',
|
|
@@ -195,9 +214,11 @@ export const EVM_LBTC_ADDRESSES: TokenAddressesPerEnv<Token.LBTC, ChainId> = {
|
|
|
195
214
|
[ChainId.sonicBlazeTestnet]: '0x731eFa688F3679688cf60A3993b8658138953ED6',
|
|
196
215
|
},
|
|
197
216
|
[Env.testnet]: {
|
|
198
|
-
...(featureConfig.isAvalancheEnabled
|
|
199
|
-
|
|
200
|
-
|
|
217
|
+
...(featureConfig.isAvalancheEnabled
|
|
218
|
+
? {
|
|
219
|
+
[ChainId.avalancheFuji]: '0x107Fc7d90484534704dD2A9e24c7BD45DB4dD1B5',
|
|
220
|
+
}
|
|
221
|
+
: {}),
|
|
201
222
|
[ChainId.berachainBartioTestnet]:
|
|
202
223
|
'0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30',
|
|
203
224
|
[ChainId.binanceSmartChainTestnet]:
|
|
@@ -209,9 +230,11 @@ export const EVM_LBTC_ADDRESSES: TokenAddressesPerEnv<Token.LBTC, ChainId> = {
|
|
|
209
230
|
[ChainId.baseSepoliaTestnet]: '0x107Fc7d90484534704dD2A9e24c7BD45DB4dD1B5',
|
|
210
231
|
},
|
|
211
232
|
[Env.dev]: {
|
|
212
|
-
...(featureConfig.isAvalancheEnabled
|
|
213
|
-
|
|
214
|
-
|
|
233
|
+
...(featureConfig.isAvalancheEnabled
|
|
234
|
+
? {
|
|
235
|
+
[ChainId.avalancheFuji]: '0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30',
|
|
236
|
+
}
|
|
237
|
+
: {}),
|
|
215
238
|
[ChainId.sepolia]: '0x93283b6B889C591893dB0dc93baD71656D5d8923',
|
|
216
239
|
[ChainId.baseSepoliaTestnet]: '0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30',
|
|
217
240
|
[ChainId.berachainBartioTestnet]:
|
package/src/tokens/tokens.ts
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { DEFAULT_ENV, Env } from '@lombard.finance/sdk-common';
|
|
2
2
|
import BigNumber from 'bignumber.js';
|
|
3
3
|
import { type Abi, Address, erc20Abi, PublicClient, zeroAddress } from 'viem';
|
|
4
|
-
|
|
5
|
-
import {
|
|
4
|
+
|
|
5
|
+
import { makePublicClient } from '../clients/public-client';
|
|
6
|
+
import { ChainId } from '../common/chains';
|
|
6
7
|
import { TokenContractAddressNotFoundError } from '../utils/err';
|
|
8
|
+
import BRIDGE_TOKEN_ADAPTER_ABI from './abi/BRIDGE_TOKEN_ADAPTER_ABI';
|
|
7
9
|
import BTCK_ABI from './abi/BTCK_ABI';
|
|
8
|
-
import
|
|
10
|
+
import { LBTC_ABI } from './abi/LBTC_ABI';
|
|
9
11
|
import NATIVE_LBTC_ABI from './abi/NATIVE_LBTC_ABI';
|
|
10
|
-
import
|
|
11
|
-
import {
|
|
12
|
-
import BRIDGE_TOKEN_ADAPTER_ABI from './abi/BRIDGE_TOKEN_ADAPTER_ABI';
|
|
12
|
+
import STLBTC_ABI from './abi/STLBTC_ABI';
|
|
13
|
+
import { AddressKind, Token, TOKEN_ADDRESSES } from './token-addresses';
|
|
13
14
|
|
|
14
15
|
export type TokenInfo = {
|
|
15
16
|
address: Address;
|
|
@@ -50,7 +51,7 @@ export async function isUpgradedContract(
|
|
|
50
51
|
functionName: UPGRADED_CONTRACT_POINTER,
|
|
51
52
|
});
|
|
52
53
|
return assetRouter !== zeroAddress;
|
|
53
|
-
} catch
|
|
54
|
+
} catch {
|
|
54
55
|
return false;
|
|
55
56
|
}
|
|
56
57
|
}
|
package/src/utils/block.ts
CHANGED
package/src/utils/env.ts
CHANGED
package/src/utils/err.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { Env } from '@lombard.finance/sdk-common';
|
|
1
2
|
import { AxiosError } from 'axios';
|
|
2
|
-
|
|
3
|
+
|
|
3
4
|
import { ChainId } from '../common/chains';
|
|
4
|
-
import {
|
|
5
|
+
import { Token } from '../tokens/token-addresses';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* Retrieves the error message from the given error object.
|
package/src/vaults/index.ts
CHANGED
|
@@ -4,50 +4,43 @@ export { Vault } from './lib/config';
|
|
|
4
4
|
|
|
5
5
|
// Ops - Deposit:
|
|
6
6
|
|
|
7
|
-
export {
|
|
8
|
-
deposit,
|
|
9
|
-
type DepositParameters,
|
|
10
|
-
} from './lib/ops/deposit';
|
|
11
|
-
|
|
7
|
+
export { deposit, type DepositParameters } from './lib/ops/deposit';
|
|
12
8
|
export {
|
|
13
9
|
getVaultDeposits,
|
|
14
|
-
type GetVaultDepositsParameters,
|
|
15
10
|
getVaultDepositsAllChains,
|
|
16
11
|
type GetVaultDepositsAllChainsParameters,
|
|
12
|
+
type GetVaultDepositsParameters,
|
|
17
13
|
type VaultDeposit,
|
|
18
14
|
} from './lib/ops/get-vault-deposits';
|
|
19
15
|
|
|
20
16
|
// Ops - Withdraw:
|
|
21
17
|
|
|
22
|
-
export {
|
|
23
|
-
queueWithdraw,
|
|
24
|
-
type QueueWithdrawParameters,
|
|
25
|
-
cancelWithdraw,
|
|
26
|
-
type CancelWithdrawParameters,
|
|
27
|
-
} from './lib/ops/withdraw';
|
|
28
|
-
|
|
29
18
|
export {
|
|
30
19
|
getVaultWithdrawals,
|
|
31
|
-
type GetVaultWithdrawalsParameters,
|
|
32
20
|
getVaultWithdrawalsAllChains,
|
|
33
21
|
type GetVaultWithdrawalsAllChainsParameters,
|
|
34
|
-
type
|
|
22
|
+
type GetVaultWithdrawalsParameters,
|
|
35
23
|
type VaultWithdrawal,
|
|
24
|
+
type VaultWithdrawals,
|
|
36
25
|
} from './lib/ops/get-vault-withdrawals';
|
|
26
|
+
export {
|
|
27
|
+
cancelWithdraw,
|
|
28
|
+
type CancelWithdrawParameters,
|
|
29
|
+
queueWithdraw,
|
|
30
|
+
type QueueWithdrawParameters,
|
|
31
|
+
} from './lib/ops/withdraw';
|
|
37
32
|
|
|
38
33
|
// Metrics - Vault points:
|
|
39
34
|
|
|
35
|
+
export {
|
|
36
|
+
getVaultApy,
|
|
37
|
+
type GetVaultApyParameters,
|
|
38
|
+
} from './lib/metrics/get-vault-apy';
|
|
40
39
|
export {
|
|
41
40
|
getVaultPoints,
|
|
42
41
|
type GetVaultPointsParameters,
|
|
43
42
|
} from './lib/metrics/get-vault-points';
|
|
44
|
-
|
|
45
43
|
export {
|
|
46
44
|
getVaultTVL,
|
|
47
45
|
type GetVaultTVLParameters,
|
|
48
46
|
} from './lib/metrics/get-vault-tvl';
|
|
49
|
-
|
|
50
|
-
export {
|
|
51
|
-
getVaultApy,
|
|
52
|
-
type GetVaultApyParameters,
|
|
53
|
-
} from './lib/metrics/get-vault-apy';
|
package/src/vaults/lib/config.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import BigNumber from 'bignumber.js';
|
|
3
|
+
|
|
3
4
|
import { getApiConfig } from '../../../common/api-config';
|
|
4
5
|
import { ChainId } from '../../../common/chains';
|
|
5
6
|
import { IEnvParam } from '../../../common/parameters';
|
|
6
7
|
import { orderBy } from '../../../utils/array';
|
|
7
|
-
import {
|
|
8
|
+
import { isVedaVaultChain, Vault, VAULTS, VedaVaultChain } from '../config';
|
|
8
9
|
|
|
9
10
|
type PerformanceEntry = {
|
|
10
11
|
aggregation_period: string;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import BigNumber from 'bignumber.js';
|
|
3
|
-
import {
|
|
3
|
+
import { extractChain, PublicClient } from 'viem';
|
|
4
4
|
import * as chains from 'viem/chains';
|
|
5
|
+
|
|
5
6
|
import { makePublicClient } from '../../../clients/public-client';
|
|
6
7
|
import { getApiConfig } from '../../../common/api-config';
|
|
7
8
|
import { IEnvParam } from '../../../common/parameters';
|
|
@@ -11,7 +12,7 @@ import {
|
|
|
11
12
|
getTokenContractInfo,
|
|
12
13
|
retrieveTokenProperties,
|
|
13
14
|
} from '../../../tokens/tokens';
|
|
14
|
-
import {
|
|
15
|
+
import { Vault, VAULTS, VedaVaultChain } from '../config';
|
|
15
16
|
|
|
16
17
|
export type GetVaultBtcHolding = {
|
|
17
18
|
vaultKey?: Vault;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import BigNumber from 'bignumber.js';
|
|
2
|
+
|
|
2
3
|
import { makePublicClient } from '../../../clients/public-client';
|
|
3
4
|
import { makeWalletClient } from '../../../clients/wallet-client';
|
|
4
5
|
import { CHAIN_ID_TO_VIEM_CHAIN_MAP } from '../../../common/chains';
|
|
@@ -11,7 +12,7 @@ import {
|
|
|
11
12
|
} from '../../../tokens/tokens';
|
|
12
13
|
import { getErrorMessage } from '../../../utils/err';
|
|
13
14
|
import toBigInt from '../../../utils/numbers';
|
|
14
|
-
import {
|
|
15
|
+
import { isVedaVaultChain, Vault, VAULTS } from '../config';
|
|
15
16
|
|
|
16
17
|
export type DepositParameters = {
|
|
17
18
|
/** The amount to be deposited into the DeFi vault. */
|
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import BigNumber from 'bignumber.js';
|
|
3
3
|
import { Address, Hash } from 'viem';
|
|
4
|
+
|
|
4
5
|
import { getApiConfig } from '../../../common/api-config';
|
|
5
6
|
import { ChainId } from '../../../common/chains';
|
|
6
7
|
import { IEnvParam } from '../../../common/parameters';
|
|
7
8
|
import {
|
|
8
|
-
TokenInfo,
|
|
9
9
|
fromBaseDenomination,
|
|
10
10
|
getAssetInfo,
|
|
11
|
+
TokenInfo,
|
|
11
12
|
} from '../../../tokens/tokens';
|
|
12
13
|
import { orderBy, unique } from '../../../utils/array';
|
|
13
14
|
import { ensureHex } from '../../../utils/hex';
|
|
14
15
|
import {
|
|
16
|
+
isVedaVaultChain,
|
|
15
17
|
NETWORK_TO_VEDA_VAULT_CHAIN_MAP,
|
|
18
|
+
Vault,
|
|
16
19
|
VAULTS,
|
|
17
20
|
VEDA_VAULT_CHAIN_TO_NETWORK_MAP,
|
|
18
|
-
Vault,
|
|
19
21
|
VedaVaultChain,
|
|
20
|
-
isVedaVaultChain,
|
|
21
22
|
} from '../config';
|
|
22
23
|
|
|
23
24
|
type SevenSeasDepositEntry = {
|
|
@@ -174,7 +175,7 @@ export type GetVaultDepositsAllChainsParameters = {
|
|
|
174
175
|
/**
|
|
175
176
|
* Retrieves the deposits made by specified address across all supported chains for a vault.
|
|
176
177
|
* This is useful for getting a complete view of all deposits regardless of the currently connected chain.
|
|
177
|
-
*
|
|
178
|
+
*
|
|
178
179
|
* @param parameters - The parameters.
|
|
179
180
|
* @param parameters.account - The account address.
|
|
180
181
|
* @param parameters.vaultKey - The optional vault identifier (defaults to Veda).
|
|
@@ -201,7 +202,7 @@ export async function getVaultDepositsAllChains({
|
|
|
201
202
|
);
|
|
202
203
|
|
|
203
204
|
const depositsArrays = await Promise.all(depositsPromises);
|
|
204
|
-
|
|
205
|
+
|
|
205
206
|
// Flatten and sort all deposits by block number (newest first)
|
|
206
207
|
const allDeposits = depositsArrays.flat();
|
|
207
208
|
return orderBy(allDeposits, d => d.blockNumber, 'desc');
|
|
@@ -1,22 +1,23 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import BigNumber from 'bignumber.js';
|
|
3
3
|
import { Address, Hash } from 'viem';
|
|
4
|
+
|
|
4
5
|
import { getApiConfig } from '../../../common/api-config';
|
|
5
6
|
import { ChainId } from '../../../common/chains';
|
|
6
7
|
import { IEnvParam } from '../../../common/parameters';
|
|
7
8
|
import {
|
|
8
|
-
TokenInfo,
|
|
9
9
|
fromBaseDenomination,
|
|
10
10
|
getAssetInfo,
|
|
11
|
+
TokenInfo,
|
|
11
12
|
} from '../../../tokens/tokens';
|
|
12
13
|
import { orderBy, unique } from '../../../utils/array';
|
|
13
14
|
import { ensureHex } from '../../../utils/hex';
|
|
14
15
|
import {
|
|
16
|
+
isVedaVaultChain,
|
|
17
|
+
Vault,
|
|
15
18
|
VAULTS,
|
|
16
19
|
VEDA_VAULT_CHAIN_TO_NETWORK_MAP,
|
|
17
|
-
Vault,
|
|
18
20
|
VedaVaultChain,
|
|
19
|
-
isVedaVaultChain,
|
|
20
21
|
} from '../config';
|
|
21
22
|
|
|
22
23
|
export type GetVaultWithdrawalsParameters = IEnvParam & {
|
|
@@ -288,7 +289,7 @@ export type GetVaultWithdrawalsAllChainsParameters = {
|
|
|
288
289
|
/**
|
|
289
290
|
* Retrieves the withdrawals made by specified address across all supported chains for a vault.
|
|
290
291
|
* This is useful for getting a complete view of all withdrawals regardless of the currently connected chain.
|
|
291
|
-
*
|
|
292
|
+
*
|
|
292
293
|
* @param parameters - The parameters.
|
|
293
294
|
* @param parameters.account - The account address.
|
|
294
295
|
* @param parameters.vaultKey - The optional vault identifier (defaults to Veda).
|
|
@@ -320,7 +321,7 @@ export async function getVaultWithdrawalsAllChains({
|
|
|
320
321
|
);
|
|
321
322
|
|
|
322
323
|
const withdrawalsArrays = await Promise.all(withdrawalsPromises);
|
|
323
|
-
|
|
324
|
+
|
|
324
325
|
// Combine all withdrawals from all chains
|
|
325
326
|
const allCancelled: VaultWithdrawal[] = [];
|
|
326
327
|
const allExpired: VaultWithdrawal[] = [];
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import BigNumber from 'bignumber.js';
|
|
2
|
+
|
|
2
3
|
import { makePublicClient } from '../../../clients/public-client';
|
|
3
4
|
import { makeWalletClient } from '../../../clients/wallet-client';
|
|
4
5
|
import { CHAIN_ID_TO_VIEM_CHAIN_MAP } from '../../../common/chains';
|
|
@@ -12,7 +13,7 @@ import {
|
|
|
12
13
|
import { getErrorMessage } from '../../../utils/err';
|
|
13
14
|
import toBigInt from '../../../utils/numbers';
|
|
14
15
|
import { DAY } from '../../../utils/time';
|
|
15
|
-
import {
|
|
16
|
+
import { isVedaVaultChain, Vault, VAULTS } from '../config';
|
|
16
17
|
|
|
17
18
|
export type QueueWithdrawParameters = {
|
|
18
19
|
/** The amount to be withdrawn from the DeFi vault. */
|