@lombard.finance/sdk 4.0.0 → 4.1.0
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 +6 -0
- package/dist/common/feature-config.d.ts.map +1 -1
- package/dist/index2.cjs +6 -6
- package/dist/index2.js +762 -754
- package/package.json +7 -8
- package/src/__tests__/AssetNamespace.spec.ts +0 -234
- package/src/__tests__/helpers/createTestConfig.ts +0 -90
- package/src/__tests__/integration/automint-fee.integration.test.ts +0 -74
- package/src/__tests__/integration/btc-deposit.integration.test.ts +0 -109
- package/src/__tests__/integration/btc-stake-and-deploy.integration.test.ts +0 -96
- package/src/__tests__/integration/btc-stake.integration.test.ts +0 -466
- package/src/__tests__/integration/evm-actions.integration.test.ts +0 -932
- package/src/__tests__/integration/evm-deploy.integration.test.ts +0 -122
- package/src/__tests__/integration/evm-redeem.integration.test.ts +0 -157
- package/src/__tests__/integration/faq-patterns.integration.test.ts +0 -465
- package/src/__tests__/integration/getLBTCMintingFee.integration.test.ts +0 -195
- package/src/__tests__/real-wallet/btc/btc-stake.real.test.ts +0 -70
- package/src/__tests__/real-wallet/evm/evm-stake.real.test.ts +0 -47
- package/src/__tests__/real-wallet/evm/evm-unstake.real.test.ts +0 -49
- package/src/__tests__/real-wallet/non-evm/solana-unstake.real.test.ts +0 -19
- package/src/__tests__/real-wallet/non-evm/starknet-unstake.real.test.ts +0 -19
- package/src/__tests__/real-wallet/non-evm/sui-unstake.real.test.ts +0 -19
- package/src/__tests__/services/ApiService.test.ts +0 -62
- package/src/__tests__/services/BtcService.test.ts +0 -30
- package/src/__tests__/services/EvmService.test.ts +0 -39
- package/src/__tests__/setup.ts +0 -16
- package/src/__tests__/test-utils/eip1193-adapter.ts +0 -48
- package/src/__tests__/test-utils/evm-wallet.ts +0 -38
- package/src/__tests__/test-utils/solana-wallet.ts +0 -22
- package/src/__tests__/test-utils/starknet-wallet.ts +0 -9
- package/src/__tests__/test-utils/sui-wallet.ts +0 -14
- package/src/__tests__/test-utils/test-constraints.ts +0 -110
- package/src/__tests__/unit/btc/BtcDeposit.test.ts +0 -253
- package/src/__tests__/unit/btc/BtcDepositAndDeploy.test.ts +0 -174
- package/src/__tests__/unit/btc/BtcDepositConfig.test.ts +0 -143
- package/src/__tests__/unit/btc/BtcDepositStatusTransition.test.ts +0 -221
- package/src/__tests__/unit/btc/BtcStakeAndDeploy.test.ts +0 -194
- package/src/__tests__/unit/btc/ExistingSignatureHandling.test.ts +0 -301
- package/src/__tests__/unit/btc/StakeAndBakeRatioConversion.test.ts +0 -200
- package/src/__tests__/unit/btc/StakeAndBakeSignatureRestore.test.ts +0 -216
- package/src/__tests__/unit/btc/TokenParameterConsistency.test.ts +0 -184
- package/src/__tests__/unit/btc/btc-deposit-token.test.ts +0 -191
- package/src/__tests__/unit/catalog/AssetCatalog.test.ts +0 -293
- package/src/__tests__/unit/config/ChainConfig.test.ts +0 -47
- package/src/__tests__/unit/config/FeeAuthConfig.test.ts +0 -76
- package/src/__tests__/unit/contract-functions/getLBTCMintingFee.test.ts +0 -128
- package/src/__tests__/unit/core/chain-parsing.test.ts +0 -257
- package/src/__tests__/unit/defi/AvailableProtocols.test.ts +0 -100
- package/src/__tests__/unit/defi/DefiRegistry.test.ts +0 -25
- package/src/__tests__/unit/evm/EvmDeploy.test.ts +0 -224
- package/src/__tests__/unit/evm/EvmRedeem.test.ts +0 -207
- package/src/__tests__/unit/evm/EvmRedeemFeeAuth.test.ts +0 -93
- package/src/__tests__/unit/evm/EvmStake.test.ts +0 -207
- package/src/__tests__/unit/evm/EvmStakeFeeAuth.test.ts +0 -193
- package/src/__tests__/unit/evm/EvmUnstakeAllowance.test.ts +0 -69
- package/src/__tests__/unit/evm/EvmUnstakeConfig.test.ts +0 -203
- package/src/__tests__/unit/fee-signature-expiration.test.ts +0 -76
- package/src/__tests__/unit/modules/CapabilityRegistry.test.ts +0 -55
- package/src/__tests__/unit/shared/BaseAction.test.ts +0 -122
- package/src/__tests__/unit/shared/BaseBtcAction.test.ts +0 -114
- package/src/__tests__/unit/solana/SolanaUnstake.test.ts +0 -314
- package/src/__tests__/unit/starknet/StarknetUnstake.test.ts +0 -318
- package/src/__tests__/unit/sui/SuiUnstake.test.ts +0 -310
- package/src/__tests__/unit/utils/satoshi.test.ts +0 -27
- package/src/__tests__/unit/validation/address-validation.test.ts +0 -350
- package/src/api-functions/generateDepositBtcAddress/generateDepositBtcAddress.stories.tsx +0 -71
- package/src/api-functions/generateDepositBtcAddress/generateDepositBtcAddress.ts +0 -235
- package/src/api-functions/generateDepositBtcAddress/index.ts +0 -1
- package/src/api-functions/get-badges-by-address/get-badges-by-address.ts +0 -13
- package/src/api-functions/get-badges-by-address/index.ts +0 -1
- package/src/api-functions/getDepositAddressReferrer/getDepositAddressReferrer.ts +0 -38
- package/src/api-functions/getDepositAddressReferrer/index.ts +0 -1
- package/src/api-functions/getDepositBtcAddress/getDepositBtcAddress.stories.tsx +0 -59
- package/src/api-functions/getDepositBtcAddress/getDepositBtcAddress.test.ts +0 -265
- package/src/api-functions/getDepositBtcAddress/getDepositBtcAddress.ts +0 -167
- package/src/api-functions/getDepositBtcAddress/getDepositBtcAddresses.stories.tsx +0 -58
- package/src/api-functions/getDepositBtcAddress/index.ts +0 -1
- package/src/api-functions/getDepositBtcAddress/make-request.ts +0 -59
- package/src/api-functions/getDepositBtcAddress/types.ts +0 -106
- package/src/api-functions/getDepositsByAddress/getDepositsByAddress.stories.tsx +0 -51
- package/src/api-functions/getDepositsByAddress/getDepositsByAddress.ts +0 -502
- package/src/api-functions/getDepositsByAddress/index.ts +0 -1
- package/src/api-functions/getLBTCExchangeRate/get-exchange-ratio.stories.tsx +0 -48
- package/src/api-functions/getLBTCExchangeRate/get-exchange-ratio.ts +0 -59
- package/src/api-functions/getLBTCExchangeRate/getLBTCExchangeRate.stories.tsx +0 -55
- package/src/api-functions/getLBTCExchangeRate/getLBTCExchangeRate.ts +0 -75
- package/src/api-functions/getLBTCExchangeRate/index.ts +0 -2
- package/src/api-functions/getNetworkFeeSignature/getNetworkFeeSignature.stories.tsx +0 -59
- package/src/api-functions/getNetworkFeeSignature/getNetworkFeeSignature.ts +0 -116
- package/src/api-functions/getNetworkFeeSignature/index.ts +0 -1
- package/src/api-functions/getPointsByAddress/getPointsByAddress.stories.tsx +0 -51
- package/src/api-functions/getPointsByAddress/getPointsByAddress.ts +0 -304
- package/src/api-functions/getPointsByAddress/index.ts +0 -1
- package/src/api-functions/getUnstakesByAddress/getUnstakesByAddress.stories.tsx +0 -51
- package/src/api-functions/getUnstakesByAddress/getUnstakesByAddress.ts +0 -368
- package/src/api-functions/getUnstakesByAddress/index.ts +0 -1
- package/src/api-functions/getUserStakeAndBakeSignature/getUserStakeAndBakeSignature.stories.tsx +0 -70
- package/src/api-functions/getUserStakeAndBakeSignature/getUserStakeAndBakeSignature.ts +0 -91
- package/src/api-functions/getUserStakeAndBakeSignature/index.ts +0 -1
- package/src/api-functions/index.ts +0 -11
- package/src/api-functions/setReferral/index.ts +0 -1
- package/src/api-functions/setReferral/setReferral.ts +0 -67
- package/src/api-functions/storeNetworkFeeSignature/index.ts +0 -1
- package/src/api-functions/storeNetworkFeeSignature/storeNetworkFeeSignature.stories.tsx +0 -57
- package/src/api-functions/storeNetworkFeeSignature/storeNetworkFeeSignature.ts +0 -75
- package/src/api-functions/storeStakeAndBakeSignature/index.ts +0 -1
- package/src/api-functions/storeStakeAndBakeSignature/storeStakeAndBakeSignature.stories.tsx +0 -57
- package/src/api-functions/storeStakeAndBakeSignature/storeStakeAndBakeSignature.ts +0 -61
- package/src/bridge/abi/CCIP_BRIDGE_ADAPTER_ABI.json +0 -704
- package/src/bridge/abi/CCIP_ROUTER_ABI.json +0 -702
- package/src/bridge/abi/OFT_BRIDGE_ADAPTER_ABI.json +0 -912
- package/src/bridge/index.ts +0 -16
- package/src/bridge/lib/bridge.stories.tsx +0 -90
- package/src/bridge/lib/bridge.ts +0 -115
- package/src/bridge/lib/ccip-bridge.stories.tsx +0 -91
- package/src/bridge/lib/ccip-bridge.ts +0 -214
- package/src/bridge/lib/ccip-config.ts +0 -54
- package/src/bridge/lib/config.ts +0 -384
- package/src/bridge/lib/oft-bridge.stories.tsx +0 -90
- package/src/bridge/lib/oft-bridge.ts +0 -217
- package/src/chains/btc/BtcActions.ts +0 -192
- package/src/chains/btc/actions/deposit/BtcDeposit.ts +0 -388
- package/src/chains/btc/actions/deposit/config/evm.ts +0 -197
- package/src/chains/btc/actions/deposit/config/index.ts +0 -53
- package/src/chains/btc/actions/deposit/config/types.ts +0 -108
- package/src/chains/btc/actions/deposit/factory.ts +0 -53
- package/src/chains/btc/actions/deposit/index.ts +0 -23
- package/src/chains/btc/actions/deposit/types.ts +0 -120
- package/src/chains/btc/actions/depositAndDeploy/BtcDepositAndDeploy.ts +0 -366
- package/src/chains/btc/actions/depositAndDeploy/config/evm.ts +0 -105
- package/src/chains/btc/actions/depositAndDeploy/config/index.ts +0 -111
- package/src/chains/btc/actions/depositAndDeploy/config/types.ts +0 -67
- package/src/chains/btc/actions/depositAndDeploy/factory.ts +0 -38
- package/src/chains/btc/actions/depositAndDeploy/index.ts +0 -24
- package/src/chains/btc/actions/depositAndDeploy/types.ts +0 -120
- package/src/chains/btc/actions/index.ts +0 -14
- package/src/chains/btc/actions/shared/BaseBtcAction.ts +0 -495
- package/src/chains/btc/actions/shared/index.ts +0 -28
- package/src/chains/btc/actions/shared/tokenUtils.ts +0 -68
- package/src/chains/btc/actions/shared/validation.ts +0 -180
- package/src/chains/btc/actions/stake/BtcStake.ts +0 -433
- package/src/chains/btc/actions/stake/__tests__/BtcStake.test.ts +0 -247
- package/src/chains/btc/actions/stake/config/evm.ts +0 -183
- package/src/chains/btc/actions/stake/config/index.ts +0 -122
- package/src/chains/btc/actions/stake/config/solana.ts +0 -96
- package/src/chains/btc/actions/stake/config/starknet.ts +0 -66
- package/src/chains/btc/actions/stake/config/sui.ts +0 -61
- package/src/chains/btc/actions/stake/config/types.ts +0 -165
- package/src/chains/btc/actions/stake/factory.ts +0 -53
- package/src/chains/btc/actions/stake/index.ts +0 -22
- package/src/chains/btc/actions/stake/types.ts +0 -175
- package/src/chains/btc/actions/stakeAndDeploy/BtcStakeAndDeploy.ts +0 -415
- package/src/chains/btc/actions/stakeAndDeploy/config/evm.ts +0 -135
- package/src/chains/btc/actions/stakeAndDeploy/config/index.ts +0 -119
- package/src/chains/btc/actions/stakeAndDeploy/config/types.ts +0 -93
- package/src/chains/btc/actions/stakeAndDeploy/factory.ts +0 -54
- package/src/chains/btc/actions/stakeAndDeploy/index.ts +0 -26
- package/src/chains/btc/actions/stakeAndDeploy/types.ts +0 -118
- package/src/chains/btc/client/getCurrentBlockHeight.ts +0 -28
- package/src/chains/btc/client/mempool/error.ts +0 -24
- package/src/chains/btc/client/mempool/mempool.ts +0 -23
- package/src/chains/btc/index.ts +0 -71
- package/src/chains/evm/EvmActions.ts +0 -185
- package/src/chains/evm/actions/deploy/EvmDeploy.ts +0 -256
- package/src/chains/evm/actions/deploy/config/evm.ts +0 -80
- package/src/chains/evm/actions/deploy/config/index.ts +0 -8
- package/src/chains/evm/actions/deploy/config/types.ts +0 -43
- package/src/chains/evm/actions/deploy/factory.ts +0 -44
- package/src/chains/evm/actions/deploy/index.ts +0 -17
- package/src/chains/evm/actions/deploy/types.ts +0 -74
- package/src/chains/evm/actions/deposit/EvmDeposit.ts +0 -159
- package/src/chains/evm/actions/deposit/config/evm.ts +0 -100
- package/src/chains/evm/actions/deposit/config/index.ts +0 -8
- package/src/chains/evm/actions/deposit/config/types.ts +0 -39
- package/src/chains/evm/actions/deposit/factory.ts +0 -44
- package/src/chains/evm/actions/deposit/index.ts +0 -17
- package/src/chains/evm/actions/deposit/types.ts +0 -87
- package/src/chains/evm/actions/index.ts +0 -67
- package/src/chains/evm/actions/redeem/EvmRedeem.ts +0 -263
- package/src/chains/evm/actions/redeem/config/evm.ts +0 -85
- package/src/chains/evm/actions/redeem/config/index.ts +0 -8
- package/src/chains/evm/actions/redeem/config/types.ts +0 -39
- package/src/chains/evm/actions/redeem/factory.ts +0 -43
- package/src/chains/evm/actions/redeem/index.ts +0 -17
- package/src/chains/evm/actions/redeem/types.ts +0 -93
- package/src/chains/evm/actions/stake/EvmStake.ts +0 -339
- package/src/chains/evm/actions/stake/config/evm.ts +0 -89
- package/src/chains/evm/actions/stake/config/index.ts +0 -8
- package/src/chains/evm/actions/stake/config/types.ts +0 -89
- package/src/chains/evm/actions/stake/factory.ts +0 -52
- package/src/chains/evm/actions/stake/index.ts +0 -30
- package/src/chains/evm/actions/stake/types.ts +0 -104
- package/src/chains/evm/actions/unstake/EvmUnstake.ts +0 -258
- package/src/chains/evm/actions/unstake/config/evm.ts +0 -123
- package/src/chains/evm/actions/unstake/config/index.ts +0 -13
- package/src/chains/evm/actions/unstake/config/types.ts +0 -37
- package/src/chains/evm/actions/unstake/factory.ts +0 -44
- package/src/chains/evm/actions/unstake/index.ts +0 -22
- package/src/chains/evm/actions/unstake/types.ts +0 -87
- package/src/chains/evm/index.ts +0 -16
- package/src/chains/evm/shared/feeAuth.ts +0 -198
- package/src/chains/evm/shared/index.ts +0 -7
- package/src/chains/solana/SolanaActions.ts +0 -85
- package/src/chains/solana/actions/index.ts +0 -7
- package/src/chains/solana/actions/unstake/SolanaUnstake.ts +0 -151
- package/src/chains/solana/actions/unstake/config/btc.ts +0 -47
- package/src/chains/solana/actions/unstake/config/index.ts +0 -8
- package/src/chains/solana/actions/unstake/config/solana.ts +0 -47
- package/src/chains/solana/actions/unstake/config/types.ts +0 -35
- package/src/chains/solana/actions/unstake/factory.ts +0 -34
- package/src/chains/solana/actions/unstake/index.ts +0 -14
- package/src/chains/solana/actions/unstake/types.ts +0 -58
- package/src/chains/solana/index.ts +0 -8
- package/src/chains/starknet/StarknetActions.ts +0 -85
- package/src/chains/starknet/actions/index.ts +0 -7
- package/src/chains/starknet/actions/unstake/StarknetUnstake.ts +0 -128
- package/src/chains/starknet/actions/unstake/config/btc.ts +0 -43
- package/src/chains/starknet/actions/unstake/config/index.ts +0 -8
- package/src/chains/starknet/actions/unstake/config/starknet.ts +0 -43
- package/src/chains/starknet/actions/unstake/config/types.ts +0 -27
- package/src/chains/starknet/actions/unstake/factory.ts +0 -32
- package/src/chains/starknet/actions/unstake/index.ts +0 -14
- package/src/chains/starknet/actions/unstake/types.ts +0 -57
- package/src/chains/starknet/index.ts +0 -8
- package/src/chains/sui/SuiActions.ts +0 -82
- package/src/chains/sui/actions/index.ts +0 -7
- package/src/chains/sui/actions/unstake/SuiUnstake.ts +0 -146
- package/src/chains/sui/actions/unstake/config/btc.ts +0 -43
- package/src/chains/sui/actions/unstake/config/index.ts +0 -8
- package/src/chains/sui/actions/unstake/config/sui.ts +0 -43
- package/src/chains/sui/actions/unstake/config/types.ts +0 -27
- package/src/chains/sui/actions/unstake/factory.ts +0 -32
- package/src/chains/sui/actions/unstake/index.ts +0 -14
- package/src/chains/sui/actions/unstake/types.ts +0 -57
- package/src/chains/sui/index.ts +0 -8
- package/src/client/ApiNamespace.ts +0 -302
- package/src/client/AssetNamespace.ts +0 -112
- package/src/client/LombardSDK.ts +0 -212
- package/src/client/PartnerConfiguration.ts +0 -50
- package/src/client/createConfig.ts +0 -90
- package/src/client/createLombardSDK.ts +0 -130
- package/src/clients/evm-signer-adapter.ts +0 -313
- package/src/clients/public-client.ts +0 -49
- package/src/clients/rpc-url-config.ts +0 -64
- package/src/clients/wallet-client.ts +0 -34
- package/src/common/api-config.ts +0 -48
- package/src/common/blockchain-identifier.ts +0 -217
- package/src/common/chains.stories.tsx +0 -68
- package/src/common/chains.ts +0 -449
- package/src/common/constants.ts +0 -1
- package/src/common/contract-info.ts +0 -9
- package/src/common/feature-config.ts +0 -79
- package/src/common/fee-requirements.ts +0 -34
- package/src/common/parameters.ts +0 -89
- package/src/config/defaults.ts +0 -49
- package/src/config/index.ts +0 -12
- package/src/config/providers.ts +0 -81
- package/src/config/types.ts +0 -216
- package/src/config/validation.ts +0 -69
- package/src/contract-functions/approveLBTC/approveLBTC.stories.tsx +0 -79
- package/src/contract-functions/approveLBTC/approveLBTC.ts +0 -66
- package/src/contract-functions/approveLBTC/index.ts +0 -1
- package/src/contract-functions/approveToken/approveToken.ts +0 -126
- package/src/contract-functions/approveToken/index.ts +0 -1
- package/src/contract-functions/claimLBTC/claimLBTC.stories.tsx +0 -82
- package/src/contract-functions/claimLBTC/claimLBTC.ts +0 -159
- package/src/contract-functions/claimLBTC/index.ts +0 -1
- package/src/contract-functions/claimUnstakeRedeem/claimUnstakeRedeem.ts +0 -95
- package/src/contract-functions/claimUnstakeRedeem/index.ts +0 -1
- package/src/contract-functions/deposit/depositToken.stories.tsx +0 -83
- package/src/contract-functions/deposit/depositToken.ts +0 -214
- package/src/contract-functions/deposit/index.ts +0 -1
- package/src/contract-functions/getBasculeDepositStatus/decodeBasculeDepositStatus.ts +0 -170
- package/src/contract-functions/getBasculeDepositStatus/getBasculeDepositStatus.stories.tsx +0 -62
- package/src/contract-functions/getBasculeDepositStatus/getBasculeDepositStatus.ts +0 -211
- package/src/contract-functions/getBasculeDepositStatus/index.ts +0 -2
- package/src/contract-functions/getLBTCMintingFee/getLBTCMintingFee.stories.tsx +0 -61
- package/src/contract-functions/getLBTCMintingFee/getLBTCMintingFee.ts +0 -193
- package/src/contract-functions/getLBTCMintingFee/index.ts +0 -1
- package/src/contract-functions/getLBTCTotalSupply/getLBTCTotalSupply.stories.tsx +0 -51
- package/src/contract-functions/getLBTCTotalSupply/getLBTCTotalSupply.ts +0 -40
- package/src/contract-functions/getLBTCTotalSupply/index.ts +0 -1
- package/src/contract-functions/getPermitNonce/getPermitNonce.stories.tsx +0 -56
- package/src/contract-functions/getPermitNonce/getPermitNonce.ts +0 -50
- package/src/contract-functions/getPermitNonce/index.ts +0 -1
- package/src/contract-functions/getShareValue/getShareValue.stories.tsx +0 -58
- package/src/contract-functions/getShareValue/getShareValue.ts +0 -59
- package/src/contract-functions/getShareValue/index.ts +0 -1
- package/src/contract-functions/getSharesByAddress/getSharesByAddress.stories.tsx +0 -65
- package/src/contract-functions/getSharesByAddress/getSharesByAddress.ts +0 -86
- package/src/contract-functions/getSharesByAddress/index.ts +0 -4
- package/src/contract-functions/getStakeAndBakeFee/__tests__/getStakeAndBakeFee.test.ts +0 -167
- package/src/contract-functions/getStakeAndBakeFee/getStakeAndBakeFee.stories.tsx +0 -180
- package/src/contract-functions/getStakeAndBakeFee/getStakeAndBakeFee.tsx +0 -101
- package/src/contract-functions/getStakeAndBakeFee/index.ts +0 -1
- package/src/contract-functions/index.ts +0 -21
- package/src/contract-functions/signLbtcDestionationAddr/index.ts +0 -1
- package/src/contract-functions/signLbtcDestionationAddr/signLbtcDestinationAddr.ts +0 -32
- package/src/contract-functions/signLbtcDestionationAddr/signLbtcDestionationAddr.stories.tsx +0 -64
- package/src/contract-functions/signNetworkFee/getTypedData.ts +0 -41
- package/src/contract-functions/signNetworkFee/index.ts +0 -1
- package/src/contract-functions/signNetworkFee/signNetworkFee.stories.tsx +0 -94
- package/src/contract-functions/signNetworkFee/signNetworkFee.ts +0 -106
- package/src/contract-functions/signStakeAndBake/__tests__/signStakeAndBake.test.ts +0 -888
- package/src/contract-functions/signStakeAndBake/handleApprove.ts +0 -81
- package/src/contract-functions/signStakeAndBake/handlePermit.ts +0 -28
- package/src/contract-functions/signStakeAndBake/index.ts +0 -2
- package/src/contract-functions/signStakeAndBake/signStakeAndBake.stories.tsx +0 -202
- package/src/contract-functions/signStakeAndBake/signStakeAndBake.ts +0 -160
- package/src/contract-functions/signStakeAndBake/typed-data-builder.ts +0 -137
- package/src/contract-functions/signStakeAndBake/utils.ts +0 -61
- package/src/contract-functions/signStakeAndBake/validation.ts +0 -124
- package/src/contract-functions/unstakeLBTC/index.ts +0 -1
- package/src/contract-functions/unstakeLBTC/unstakeLBTC.stories.tsx +0 -92
- package/src/contract-functions/unstakeLBTC/unstakeLBTC.ts +0 -396
- package/src/contracts/abis/index.ts +0 -29
- package/src/contracts/index.ts +0 -63
- package/src/contracts/types.ts +0 -143
- package/src/contracts/utils.ts +0 -288
- package/src/core/assets/catalog.ts +0 -343
- package/src/core/assets/index.ts +0 -40
- package/src/core/assets/types.ts +0 -142
- package/src/core/assets/utils.ts +0 -287
- package/src/core/chains/catalog.ts +0 -396
- package/src/core/chains/index.ts +0 -39
- package/src/core/chains/types.ts +0 -193
- package/src/core/chains/utils.ts +0 -245
- package/src/core/index.ts +0 -72
- package/src/core/types.ts +0 -126
- package/src/debug-api/btc-script-to-address.ts +0 -20
- package/src/debug-api/btc-tx-info.ts +0 -32
- package/src/debug-api/evm-by-btc-address.ts +0 -26
- package/src/debug-api/index.ts +0 -3
- package/src/defi/README.md +0 -517
- package/src/defi/defi-registry.stories.tsx +0 -527
- package/src/defi/defi-registry.ts +0 -295
- package/src/defi/index.ts +0 -17
- package/src/index.ts +0 -336
- package/src/metrics/get-additional-rewards.ts +0 -69
- package/src/metrics/get-lbtc-apy.ts +0 -74
- package/src/metrics/get-lbtc-stats.stories.tsx +0 -57
- package/src/metrics/get-lbtc-stats.ts +0 -59
- package/src/metrics/get-positions-summary.stories.tsx +0 -58
- package/src/metrics/get-positions-summary.ts +0 -132
- package/src/modules/CapabilityRegistry.ts +0 -125
- package/src/modules/apiModule.ts +0 -51
- package/src/modules/btcModule.ts +0 -43
- package/src/modules/evmModule.ts +0 -48
- package/src/modules/index.ts +0 -60
- package/src/referrals/ReferralsClient.ts +0 -34
- package/src/referrals/index.ts +0 -1
- package/src/services/ApiService.ts +0 -152
- package/src/services/BtcService.ts +0 -29
- package/src/services/EvmService.ts +0 -127
- package/src/services/index.ts +0 -43
- package/src/shared/__tests__/errors.test.ts +0 -185
- package/src/shared/__tests__/events.test.ts +0 -120
- package/src/shared/__tests__/types.test.ts +0 -155
- package/src/shared/actions/BaseAction.ts +0 -497
- package/src/shared/actions/__tests__/BaseAction.test.ts +0 -292
- package/src/shared/actions/index.ts +0 -9
- package/src/shared/constants/statusConstants.ts +0 -108
- package/src/shared/context/ContextBuilder.ts +0 -149
- package/src/shared/context/index.ts +0 -8
- package/src/shared/context/types.ts +0 -156
- package/src/shared/deposits/depositStatus.ts +0 -402
- package/src/shared/deposits/index.ts +0 -29
- package/src/shared/errors.ts +0 -405
- package/src/shared/events.ts +0 -260
- package/src/shared/evm/switchChain.ts +0 -109
- package/src/shared/index.ts +0 -54
- package/src/shared/monitoring/__tests__/createEventEmitter.test.ts +0 -150
- package/src/shared/monitoring/createEventEmitter.ts +0 -160
- package/src/shared/monitoring/createProgressEmitter.ts +0 -46
- package/src/shared/monitoring/depositMonitor.ts +0 -211
- package/src/shared/monitoring/index.ts +0 -25
- package/src/shared/validation/index.ts +0 -411
- package/src/stories/arg-types.ts +0 -38
- package/src/stories/components/Badge.tsx +0 -27
- package/src/stories/components/Button/Button.css +0 -10
- package/src/stories/components/Button/Button.tsx +0 -52
- package/src/stories/components/Button/index.ts +0 -1
- package/src/stories/components/Card.tsx +0 -18
- package/src/stories/components/CodeBlock/CodeBlock.tsx +0 -27
- package/src/stories/components/CodeBlock/CodeBlockStyles.css +0 -3
- package/src/stories/components/CodeBlock/index.ts +0 -1
- package/src/stories/components/ConnectButton/connect-button.tsx +0 -248
- package/src/stories/components/ConnectButton/index.ts +0 -1
- package/src/stories/components/JsonPreview.tsx +0 -84
- package/src/stories/components/Spinner/Spinner.tsx +0 -27
- package/src/stories/components/Spinner/index.ts +0 -1
- package/src/stories/components/StatsCard.tsx +0 -30
- package/src/stories/components/StatusIndicator.tsx +0 -37
- package/src/stories/components/TreeNode.tsx +0 -47
- package/src/stories/components/decorators/function-type.tsx +0 -63
- package/src/stories/components/decorators/index.ts +0 -2
- package/src/stories/components/decorators/wagmi-decorator.tsx +0 -92
- package/src/stories/components/error-block.tsx +0 -21
- package/src/stories/components/index.ts +0 -11
- package/src/stories/constants.ts +0 -3
- package/src/stories/hooks/useConnection.ts +0 -63
- package/src/stories/hooks/useQuery.ts +0 -57
- package/src/tokens/__tests__/token-addresses.test.ts +0 -551
- package/src/tokens/abi/ASSET_ROUTER_ABI.ts +0 -1966
- package/src/tokens/abi/BRIDGE_TOKEN_ADAPTER_ABI.ts +0 -1405
- package/src/tokens/abi/BTCK_ABI.ts +0 -1092
- package/src/tokens/abi/KATANA_BASCULE_ABI.ts +0 -653
- package/src/tokens/abi/LBTC_ABI.json +0 -1761
- package/src/tokens/abi/LBTC_ABI.ts +0 -1761
- package/src/tokens/abi/LBTC_BASCULE_ABI.json +0 -850
- package/src/tokens/abi/NATIVE_LBTC_ABI.ts +0 -1147
- package/src/tokens/abi/STLBTC_ABI.ts +0 -1062
- package/src/tokens/cross-chain-addresses.stories.tsx +0 -236
- package/src/tokens/denomination-utils.stories.tsx +0 -176
- package/src/tokens/getLbtcContractAddresses.stories.tsx +0 -158
- package/src/tokens/getTokenByAddress.stories.tsx +0 -172
- package/src/tokens/getTokenContractInfo.stories.tsx +0 -148
- package/src/tokens/getTokenInfo.stories.tsx +0 -133
- package/src/tokens/isUpgradedContract.stories.tsx +0 -124
- package/src/tokens/lbtc-addresses.ts +0 -18
- package/src/tokens/token-addresses.ts +0 -477
- package/src/tokens/tokens.ts +0 -249
- package/src/tokens/types.ts +0 -80
- package/src/utils/array.ts +0 -31
- package/src/utils/block.ts +0 -23
- package/src/utils/chain.ts +0 -152
- package/src/utils/consoleLogger.ts +0 -140
- package/src/utils/ensureNotSanctionedAddress.ts +0 -11
- package/src/utils/env.ts +0 -20
- package/src/utils/err.ts +0 -83
- package/src/utils/evmAccount.ts +0 -47
- package/src/utils/gas.ts +0 -36
- package/src/utils/hex.ts +0 -9
- package/src/utils/http.ts +0 -224
- package/src/utils/numbers.ts +0 -37
- package/src/utils/pagination.ts +0 -70
- package/src/utils/satoshi.ts +0 -41
- package/src/utils/time.ts +0 -12
- package/src/utils/transaction-executor.ts +0 -299
- package/src/vaults/abi/SILO_VAULT_SPENDER_ABI.json +0 -793
- package/src/vaults/abi/VEDA_VAULT_ABI.json +0 -452
- package/src/vaults/abi/VEDA_VAULT_ACCOUNTANT_ABI.json +0 -591
- package/src/vaults/abi/VEDA_VAULT_BASE_ASSET_ABI.json +0 -296
- package/src/vaults/abi/VEDA_VAULT_BORING_WITHDRAW_QUEUE_ABI.json +0 -502
- package/src/vaults/abi/VEDA_VAULT_LENS_ABI.json +0 -175
- package/src/vaults/abi/VEDA_VAULT_SPENDER_ABI.json +0 -408
- package/src/vaults/abi/VEDA_VAULT_TELLER_ABI.json +0 -700
- package/src/vaults/abi/index.ts +0 -4
- package/src/vaults/index.ts +0 -46
- package/src/vaults/lib/config.ts +0 -184
- package/src/vaults/lib/metrics/get-vault-apy.stories.tsx +0 -58
- package/src/vaults/lib/metrics/get-vault-apy.ts +0 -176
- package/src/vaults/lib/metrics/get-vault-points.stories.tsx +0 -60
- package/src/vaults/lib/metrics/get-vault-points.ts +0 -74
- package/src/vaults/lib/metrics/get-vault-tvl.stories.tsx +0 -58
- package/src/vaults/lib/metrics/get-vault-tvl.ts +0 -121
- package/src/vaults/lib/ops/cancel-withdraw.stories.tsx +0 -80
- package/src/vaults/lib/ops/deposit.stories.tsx +0 -82
- package/src/vaults/lib/ops/deposit.ts +0 -152
- package/src/vaults/lib/ops/get-vault-deposits.stories.tsx +0 -65
- package/src/vaults/lib/ops/get-vault-deposits.ts +0 -209
- package/src/vaults/lib/ops/get-vault-withdrawals.stories.tsx +0 -67
- package/src/vaults/lib/ops/get-vault-withdrawals.ts +0 -349
- package/src/vaults/lib/ops/withdraw.stories.tsx +0 -82
- package/src/vaults/lib/ops/withdraw.ts +0 -225
- package/src/version.ts +0 -56
- package/src/vite-env.d.ts +0 -1
package/src/common/chains.ts
DELETED
|
@@ -1,449 +0,0 @@
|
|
|
1
|
-
import { defineChain, type EIP1193Provider, extractChain } from 'viem';
|
|
2
|
-
import { addChain as viem_addChain } from 'viem/actions';
|
|
3
|
-
import * as viem_chains from 'viem/chains';
|
|
4
|
-
|
|
5
|
-
import { makeWalletClient } from '../clients/wallet-client';
|
|
6
|
-
import { featureConfig } from './feature-config';
|
|
7
|
-
|
|
8
|
-
const {
|
|
9
|
-
avalanche,
|
|
10
|
-
avalancheFuji,
|
|
11
|
-
base,
|
|
12
|
-
baseSepolia,
|
|
13
|
-
berachain,
|
|
14
|
-
berachainTestnetbArtio,
|
|
15
|
-
bsc,
|
|
16
|
-
bscTestnet,
|
|
17
|
-
corn,
|
|
18
|
-
etherlink,
|
|
19
|
-
holesky,
|
|
20
|
-
mainnet,
|
|
21
|
-
morph,
|
|
22
|
-
morphHolesky,
|
|
23
|
-
sepolia,
|
|
24
|
-
sonic,
|
|
25
|
-
sonicBlazeTestnet,
|
|
26
|
-
swellchain,
|
|
27
|
-
} = viem_chains;
|
|
28
|
-
|
|
29
|
-
// FIXME: Remove this custom chain definition once katana is supported by viem
|
|
30
|
-
export const katana = defineChain({
|
|
31
|
-
id: 747474,
|
|
32
|
-
name: 'Katana',
|
|
33
|
-
nativeCurrency: {
|
|
34
|
-
decimals: 18,
|
|
35
|
-
name: 'Ether',
|
|
36
|
-
symbol: 'ETH',
|
|
37
|
-
},
|
|
38
|
-
rpcUrls: {
|
|
39
|
-
default: {
|
|
40
|
-
http: ['https://rpc.katana.network'],
|
|
41
|
-
webSocket: ['wss://rpc.katana.network'],
|
|
42
|
-
},
|
|
43
|
-
},
|
|
44
|
-
blockExplorers: {
|
|
45
|
-
default: { name: 'Katana Explorer', url: 'https://explorer.katanarpc.com' },
|
|
46
|
-
},
|
|
47
|
-
contracts: {
|
|
48
|
-
multicall3: {
|
|
49
|
-
address: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
|
50
|
-
blockCreated: 1898013, // TODO: Confirm this
|
|
51
|
-
},
|
|
52
|
-
},
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
export const katanaTatara = defineChain({
|
|
56
|
-
testnet: true,
|
|
57
|
-
id: 129399,
|
|
58
|
-
name: 'Tatara',
|
|
59
|
-
nativeCurrency: {
|
|
60
|
-
decimals: 18,
|
|
61
|
-
name: 'Ether',
|
|
62
|
-
symbol: 'ETH',
|
|
63
|
-
},
|
|
64
|
-
rpcUrls: {
|
|
65
|
-
default: {
|
|
66
|
-
http: ['https://rpc.tatara.katanarpc.com'],
|
|
67
|
-
},
|
|
68
|
-
},
|
|
69
|
-
blockExplorers: {
|
|
70
|
-
default: {
|
|
71
|
-
name: 'Tatara Explorer',
|
|
72
|
-
url: 'https://explorer.tatara.katana.network',
|
|
73
|
-
},
|
|
74
|
-
},
|
|
75
|
-
contracts: {
|
|
76
|
-
multicall3: {
|
|
77
|
-
address: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
|
78
|
-
blockCreated: 7771207, // TODO: Confirm this
|
|
79
|
-
},
|
|
80
|
-
},
|
|
81
|
-
});
|
|
82
|
-
|
|
83
|
-
// FIXME: Remove this custom chain definition once TAC is supported by viem
|
|
84
|
-
export const tac = defineChain({
|
|
85
|
-
id: 239,
|
|
86
|
-
name: 'TAC',
|
|
87
|
-
nativeCurrency: {
|
|
88
|
-
decimals: 18,
|
|
89
|
-
name: 'TAC',
|
|
90
|
-
symbol: 'TAC',
|
|
91
|
-
},
|
|
92
|
-
rpcUrls: {
|
|
93
|
-
default: {
|
|
94
|
-
http: ['https://rpc.tac.build'],
|
|
95
|
-
},
|
|
96
|
-
},
|
|
97
|
-
blockExplorers: {
|
|
98
|
-
default: { name: 'TAC Explorer', url: 'https://explorer.tac.build' },
|
|
99
|
-
},
|
|
100
|
-
});
|
|
101
|
-
|
|
102
|
-
export const bob = defineChain({
|
|
103
|
-
id: 60808,
|
|
104
|
-
name: 'BOB',
|
|
105
|
-
nativeCurrency: {
|
|
106
|
-
decimals: 18,
|
|
107
|
-
name: 'Ether',
|
|
108
|
-
symbol: 'ETH',
|
|
109
|
-
},
|
|
110
|
-
rpcUrls: {
|
|
111
|
-
default: {
|
|
112
|
-
http: ['https://rpc.gobob.xyz'],
|
|
113
|
-
},
|
|
114
|
-
},
|
|
115
|
-
blockExplorers: {
|
|
116
|
-
default: { name: 'BOB Explorer', url: 'https://explorer.gobob.xyz' },
|
|
117
|
-
},
|
|
118
|
-
});
|
|
119
|
-
|
|
120
|
-
export const bobSepolia = defineChain({
|
|
121
|
-
id: 808813,
|
|
122
|
-
name: 'BOB Sepolia',
|
|
123
|
-
nativeCurrency: {
|
|
124
|
-
decimals: 18,
|
|
125
|
-
name: 'Ether',
|
|
126
|
-
symbol: 'ETH',
|
|
127
|
-
},
|
|
128
|
-
rpcUrls: {
|
|
129
|
-
default: {
|
|
130
|
-
http: ['https://bob-sepolia.rpc.gobob.xyz'],
|
|
131
|
-
},
|
|
132
|
-
},
|
|
133
|
-
blockExplorers: {
|
|
134
|
-
default: {
|
|
135
|
-
name: 'BOB Sepolia Explorer',
|
|
136
|
-
url: 'https://bob-sepolia.explorer.gobob.xyz/',
|
|
137
|
-
},
|
|
138
|
-
},
|
|
139
|
-
});
|
|
140
|
-
|
|
141
|
-
export const monad = defineChain({
|
|
142
|
-
id: 143,
|
|
143
|
-
name: 'Monad',
|
|
144
|
-
nativeCurrency: {
|
|
145
|
-
decimals: 18,
|
|
146
|
-
name: 'Monad',
|
|
147
|
-
symbol: 'MONAD',
|
|
148
|
-
},
|
|
149
|
-
rpcUrls: {
|
|
150
|
-
default: {
|
|
151
|
-
http: ['https://monad-mainnet.drpc.org'],
|
|
152
|
-
},
|
|
153
|
-
},
|
|
154
|
-
blockExplorers: {
|
|
155
|
-
default: {
|
|
156
|
-
name: 'Monad Explorer',
|
|
157
|
-
url: 'https://monadvision.com',
|
|
158
|
-
},
|
|
159
|
-
},
|
|
160
|
-
contracts: {
|
|
161
|
-
multicall3: {
|
|
162
|
-
address: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
|
163
|
-
blockCreated: 9248132,
|
|
164
|
-
},
|
|
165
|
-
},
|
|
166
|
-
});
|
|
167
|
-
|
|
168
|
-
export const stable = defineChain({
|
|
169
|
-
id: 988,
|
|
170
|
-
name: 'Stable',
|
|
171
|
-
nativeCurrency: {
|
|
172
|
-
decimals: 18,
|
|
173
|
-
name: 'gUSDT',
|
|
174
|
-
symbol: 'gUSDT',
|
|
175
|
-
},
|
|
176
|
-
rpcUrls: {
|
|
177
|
-
default: {
|
|
178
|
-
http: [
|
|
179
|
-
'https://partners-rpc.stable.xyz/lombard.075830647a2c30190712a9d102011ffe5a2a01d24ff3405f711d6ea8aca10baf',
|
|
180
|
-
],
|
|
181
|
-
}, // TODO: Update with the correct RPC URL once the stable network is live
|
|
182
|
-
},
|
|
183
|
-
blockExplorers: {
|
|
184
|
-
default: {
|
|
185
|
-
name: 'Stable Explorer',
|
|
186
|
-
url: 'https://stablescan.xyz',
|
|
187
|
-
},
|
|
188
|
-
},
|
|
189
|
-
contracts: {
|
|
190
|
-
multicall3: {
|
|
191
|
-
address: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
|
192
|
-
blockCreated: 1,
|
|
193
|
-
},
|
|
194
|
-
},
|
|
195
|
-
});
|
|
196
|
-
|
|
197
|
-
export const megaeth = defineChain({
|
|
198
|
-
id: 4326,
|
|
199
|
-
name: 'MegaETH',
|
|
200
|
-
nativeCurrency: {
|
|
201
|
-
decimals: 18,
|
|
202
|
-
name: 'Ether',
|
|
203
|
-
symbol: 'ETH',
|
|
204
|
-
},
|
|
205
|
-
rpcUrls: {
|
|
206
|
-
default: {
|
|
207
|
-
http: [
|
|
208
|
-
'https://alpha.megaeth.com/rpc?user=lombard+v1&token=1763427229-%2Bx6HFUDu9OhJwV%2FTCFOL0xTt%2FPJRAXPeirIcuytvnes%3D',
|
|
209
|
-
],
|
|
210
|
-
},
|
|
211
|
-
},
|
|
212
|
-
blockExplorers: {
|
|
213
|
-
default: {
|
|
214
|
-
name: 'MegaETH Explorer',
|
|
215
|
-
url: 'http://megaeth-testnet-v3.blockscout.com',
|
|
216
|
-
},
|
|
217
|
-
},
|
|
218
|
-
contracts: {
|
|
219
|
-
multicall3: {
|
|
220
|
-
address: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
|
221
|
-
blockCreated: 2591807, // TODO: Confirm this
|
|
222
|
-
},
|
|
223
|
-
},
|
|
224
|
-
});
|
|
225
|
-
|
|
226
|
-
export const allChains: Record<string, viem_chains.Chain> = {
|
|
227
|
-
...viem_chains,
|
|
228
|
-
katana,
|
|
229
|
-
katanaTatara,
|
|
230
|
-
tac,
|
|
231
|
-
monad,
|
|
232
|
-
stable,
|
|
233
|
-
megaeth,
|
|
234
|
-
};
|
|
235
|
-
|
|
236
|
-
export const SUI_DEVNET_CHAIN = 'sui:devnet' as const;
|
|
237
|
-
export const SUI_TESTNET_CHAIN = 'sui:testnet' as const;
|
|
238
|
-
export const SUI_LOCALNET_CHAIN = 'sui:localnet' as const;
|
|
239
|
-
export const SUI_MAINNET_CHAIN = 'sui:mainnet' as const;
|
|
240
|
-
|
|
241
|
-
export type SuiChain =
|
|
242
|
-
| typeof SUI_DEVNET_CHAIN
|
|
243
|
-
| typeof SUI_TESTNET_CHAIN
|
|
244
|
-
| typeof SUI_LOCALNET_CHAIN
|
|
245
|
-
| typeof SUI_MAINNET_CHAIN;
|
|
246
|
-
|
|
247
|
-
export const isSuiChain = (chainId: unknown): chainId is SuiChain => {
|
|
248
|
-
return (
|
|
249
|
-
[
|
|
250
|
-
SUI_DEVNET_CHAIN,
|
|
251
|
-
SUI_TESTNET_CHAIN,
|
|
252
|
-
SUI_LOCALNET_CHAIN,
|
|
253
|
-
SUI_MAINNET_CHAIN,
|
|
254
|
-
] as string[]
|
|
255
|
-
).includes(chainId as string);
|
|
256
|
-
};
|
|
257
|
-
|
|
258
|
-
export const SOLANA_MAINNET_CHAIN = 'solana:mainnet-beta' as const;
|
|
259
|
-
export const SOLANA_TESTNET_CHAIN = 'solana:testnet' as const;
|
|
260
|
-
export const SOLANA_DEVNET_CHAIN = 'solana:devnet' as const;
|
|
261
|
-
|
|
262
|
-
export type SolanaChain =
|
|
263
|
-
| typeof SOLANA_MAINNET_CHAIN
|
|
264
|
-
| typeof SOLANA_TESTNET_CHAIN
|
|
265
|
-
| typeof SOLANA_DEVNET_CHAIN;
|
|
266
|
-
|
|
267
|
-
export const isSolanaChain = (chainId: unknown): chainId is SolanaChain => {
|
|
268
|
-
return (
|
|
269
|
-
[
|
|
270
|
-
SOLANA_MAINNET_CHAIN,
|
|
271
|
-
SOLANA_TESTNET_CHAIN,
|
|
272
|
-
SOLANA_DEVNET_CHAIN,
|
|
273
|
-
] as string[]
|
|
274
|
-
).includes(chainId as string);
|
|
275
|
-
};
|
|
276
|
-
|
|
277
|
-
// Starknet chain identifiers:
|
|
278
|
-
export const STARKNET_MAINNET_CHAIN = '0x534e5f4d41494e' as const;
|
|
279
|
-
export const STARKNET_SEPOLIA_CHAIN = '0x534e5f5345504f4c4941' as const;
|
|
280
|
-
export type StarknetChainId =
|
|
281
|
-
| typeof STARKNET_MAINNET_CHAIN
|
|
282
|
-
| typeof STARKNET_SEPOLIA_CHAIN;
|
|
283
|
-
|
|
284
|
-
export const isStarknetChainId = (
|
|
285
|
-
chainId: unknown,
|
|
286
|
-
): chainId is StarknetChainId => {
|
|
287
|
-
return (
|
|
288
|
-
chainId === STARKNET_MAINNET_CHAIN || chainId === STARKNET_SEPOLIA_CHAIN
|
|
289
|
-
);
|
|
290
|
-
};
|
|
291
|
-
|
|
292
|
-
export const ChainId = {
|
|
293
|
-
ethereum: 1,
|
|
294
|
-
avalanche: 43114,
|
|
295
|
-
base: 8453,
|
|
296
|
-
berachain: 80094,
|
|
297
|
-
binanceSmartChain: 56,
|
|
298
|
-
corn: 21000000,
|
|
299
|
-
etherlink: 42793,
|
|
300
|
-
katana: 747474,
|
|
301
|
-
megaeth: 4326,
|
|
302
|
-
monad: 143,
|
|
303
|
-
morph: 2818,
|
|
304
|
-
sonic: 146,
|
|
305
|
-
stable: 988,
|
|
306
|
-
swell: 1923,
|
|
307
|
-
tac: 239,
|
|
308
|
-
bob: 60808,
|
|
309
|
-
// Testnets:
|
|
310
|
-
avalancheFuji: 43113,
|
|
311
|
-
baseSepoliaTestnet: 84532,
|
|
312
|
-
berachainBartioTestnet: 80084,
|
|
313
|
-
binanceSmartChainTestnet: 97,
|
|
314
|
-
holesky: 17000,
|
|
315
|
-
katanaTatara: 129399,
|
|
316
|
-
morphHolesky: 2810,
|
|
317
|
-
sepolia: 11155111,
|
|
318
|
-
sonicBlazeTestnet: 57054,
|
|
319
|
-
} as const;
|
|
320
|
-
|
|
321
|
-
export type ChainId = (typeof ChainId)[keyof typeof ChainId];
|
|
322
|
-
|
|
323
|
-
export const CHAIN_ID_TO_VIEM_CHAIN_MAP = {
|
|
324
|
-
[ChainId.ethereum]: mainnet,
|
|
325
|
-
// Avalanche mainnet - BTC.b not released yet
|
|
326
|
-
...(featureConfig.isAvalancheMainnetEnabled
|
|
327
|
-
? { [ChainId.avalanche]: avalanche }
|
|
328
|
-
: {}),
|
|
329
|
-
[ChainId.base]: base,
|
|
330
|
-
// APP-1975: Feature-gated chains
|
|
331
|
-
...(featureConfig.isBerachainEnabled
|
|
332
|
-
? { [ChainId.berachain]: berachain }
|
|
333
|
-
: {}),
|
|
334
|
-
[ChainId.binanceSmartChain]: bsc,
|
|
335
|
-
...(featureConfig.isCornEnabled ? { [ChainId.corn]: corn } : {}),
|
|
336
|
-
...(featureConfig.isEtherlinkEnabled
|
|
337
|
-
? { [ChainId.etherlink]: etherlink }
|
|
338
|
-
: {}),
|
|
339
|
-
[ChainId.katana]: katana,
|
|
340
|
-
[ChainId.megaeth]: megaeth,
|
|
341
|
-
[ChainId.monad]: monad,
|
|
342
|
-
...(featureConfig.isMorphEnabled ? { [ChainId.morph]: morph } : {}),
|
|
343
|
-
[ChainId.sonic]: sonic,
|
|
344
|
-
[ChainId.stable]: stable,
|
|
345
|
-
...(featureConfig.isSwellchainEnabled
|
|
346
|
-
? { [ChainId.swell]: swellchain }
|
|
347
|
-
: {}),
|
|
348
|
-
...(featureConfig.isTacEnabled ? { [ChainId.tac]: tac } : {}),
|
|
349
|
-
...(featureConfig.isBobEnabled ? { [ChainId.bob]: bob } : {}),
|
|
350
|
-
// Testnets:
|
|
351
|
-
// Avalanche Fuji - enabled for testing (Silo integration)
|
|
352
|
-
...(featureConfig.isAvalancheFujiEnabled
|
|
353
|
-
? { [ChainId.avalancheFuji]: avalancheFuji }
|
|
354
|
-
: {}),
|
|
355
|
-
[ChainId.baseSepoliaTestnet]: baseSepolia,
|
|
356
|
-
...(featureConfig.isBerachainEnabled
|
|
357
|
-
? { [ChainId.berachainBartioTestnet]: berachainTestnetbArtio }
|
|
358
|
-
: {}),
|
|
359
|
-
[ChainId.binanceSmartChainTestnet]: bscTestnet,
|
|
360
|
-
[ChainId.holesky]: holesky,
|
|
361
|
-
[ChainId.katanaTatara]: katanaTatara,
|
|
362
|
-
...(featureConfig.isMorphEnabled
|
|
363
|
-
? { [ChainId.morphHolesky]: morphHolesky }
|
|
364
|
-
: {}),
|
|
365
|
-
[ChainId.sepolia]: sepolia,
|
|
366
|
-
[ChainId.sonicBlazeTestnet]: sonicBlazeTestnet,
|
|
367
|
-
};
|
|
368
|
-
|
|
369
|
-
type KatanaChain = typeof ChainId.katana | typeof ChainId.katanaTatara;
|
|
370
|
-
export const isKatanaChain = (chainId: unknown): chainId is KatanaChain => {
|
|
371
|
-
return ([ChainId.katana, ChainId.katanaTatara] as number[]).includes(
|
|
372
|
-
chainId as number,
|
|
373
|
-
);
|
|
374
|
-
};
|
|
375
|
-
type MonadChain = typeof ChainId.monad;
|
|
376
|
-
export const isMonadChain = (chainId: unknown): chainId is MonadChain => {
|
|
377
|
-
return chainId === ChainId.monad;
|
|
378
|
-
};
|
|
379
|
-
|
|
380
|
-
type EthereumChain = typeof ChainId.ethereum;
|
|
381
|
-
export const isEthereumChain = (chainId: unknown): chainId is EthereumChain => {
|
|
382
|
-
return ([ChainId.ethereum] as number[]).includes(chainId as number);
|
|
383
|
-
};
|
|
384
|
-
|
|
385
|
-
type StableChain = typeof ChainId.stable;
|
|
386
|
-
export const isStableChain = (chainId: unknown): chainId is StableChain => {
|
|
387
|
-
return chainId === ChainId.stable;
|
|
388
|
-
};
|
|
389
|
-
|
|
390
|
-
type MegaethChain = typeof ChainId.megaeth;
|
|
391
|
-
export const isMegaethChain = (chainId: unknown): chainId is MegaethChain => {
|
|
392
|
-
return ([ChainId.megaeth] as number[]).includes(chainId as number);
|
|
393
|
-
};
|
|
394
|
-
export const CHAIN_ID_TO_LLAMA_CHAIN_NAME_MAP = {
|
|
395
|
-
[ChainId.ethereum]: 'ethereum',
|
|
396
|
-
...(featureConfig.isAvalancheMainnetEnabled
|
|
397
|
-
? { [ChainId.avalanche]: 'avalanche' }
|
|
398
|
-
: {}),
|
|
399
|
-
[ChainId.base]: 'base',
|
|
400
|
-
[ChainId.berachain]: 'berachain',
|
|
401
|
-
[ChainId.binanceSmartChain]: 'bsc',
|
|
402
|
-
[ChainId.corn]: 'corn',
|
|
403
|
-
[ChainId.etherlink]: 'etherlink',
|
|
404
|
-
[ChainId.morph]: 'morph',
|
|
405
|
-
[ChainId.sonic]: 'sonic',
|
|
406
|
-
[ChainId.swell]: 'swellchain',
|
|
407
|
-
[ChainId.megaeth]: 'megaeth',
|
|
408
|
-
[ChainId.monad]: 'monad',
|
|
409
|
-
[ChainId.katana]: 'katana',
|
|
410
|
-
[ChainId.stable]: 'stable',
|
|
411
|
-
} as const;
|
|
412
|
-
type LlamaChain =
|
|
413
|
-
(typeof CHAIN_ID_TO_LLAMA_CHAIN_NAME_MAP)[keyof typeof CHAIN_ID_TO_LLAMA_CHAIN_NAME_MAP];
|
|
414
|
-
|
|
415
|
-
export function isValidChain(chainId: unknown): chainId is ChainId {
|
|
416
|
-
return Object.values(ChainId).includes(chainId as ChainId);
|
|
417
|
-
}
|
|
418
|
-
|
|
419
|
-
export type AddChainParameters = {
|
|
420
|
-
provider: EIP1193Provider;
|
|
421
|
-
chainId: ChainId;
|
|
422
|
-
};
|
|
423
|
-
|
|
424
|
-
export async function addChain({ provider, chainId }: AddChainParameters) {
|
|
425
|
-
const walletClient = makeWalletClient({
|
|
426
|
-
provider,
|
|
427
|
-
chainId: ChainId.ethereum,
|
|
428
|
-
});
|
|
429
|
-
|
|
430
|
-
const chain = CHAIN_ID_TO_VIEM_CHAIN_MAP[chainId];
|
|
431
|
-
|
|
432
|
-
if (!chain) {
|
|
433
|
-
throw new Error(`Chain ${chainId} not found`);
|
|
434
|
-
}
|
|
435
|
-
|
|
436
|
-
await viem_addChain(walletClient, {
|
|
437
|
-
chain,
|
|
438
|
-
});
|
|
439
|
-
}
|
|
440
|
-
export const getLlamaChainName = (chainId: ChainId): LlamaChain | undefined => {
|
|
441
|
-
const name =
|
|
442
|
-
CHAIN_ID_TO_LLAMA_CHAIN_NAME_MAP[
|
|
443
|
-
chainId as keyof typeof CHAIN_ID_TO_LLAMA_CHAIN_NAME_MAP
|
|
444
|
-
];
|
|
445
|
-
return name;
|
|
446
|
-
};
|
|
447
|
-
|
|
448
|
-
export const getChain = (chainId: number): viem_chains.Chain | undefined =>
|
|
449
|
-
extractChain({ chains: Object.values(allChains), id: chainId as ChainId });
|
package/src/common/constants.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export const MIN_STAKE_AMOUNT_BTC = 0.0002;
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
export interface FeatureConfig {
|
|
2
|
-
/**
|
|
3
|
-
* Enable/disable Monad blockchain support
|
|
4
|
-
* @default true - Enabled
|
|
5
|
-
*/
|
|
6
|
-
isMonadEnabled: boolean;
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Enable/disable Avalanche mainnet support
|
|
10
|
-
* @default false - BTC.b not released on mainnet yet
|
|
11
|
-
*/
|
|
12
|
-
isAvalancheMainnetEnabled: boolean;
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Enable/disable Avalanche Fuji testnet support
|
|
16
|
-
* @default true - Enabled for testing
|
|
17
|
-
*/
|
|
18
|
-
isAvalancheFujiEnabled: boolean;
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* Enable/disable Berachain support
|
|
22
|
-
* @default false - Not yet fully supported (APP-1975)
|
|
23
|
-
*/
|
|
24
|
-
isBerachainEnabled: boolean;
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Enable/disable Corn chain support
|
|
28
|
-
* @default false - Not yet fully supported (APP-1975)
|
|
29
|
-
*/
|
|
30
|
-
isCornEnabled: boolean;
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Enable/disable Morph chain support
|
|
34
|
-
* @default false - Not yet fully supported (APP-1975)
|
|
35
|
-
*/
|
|
36
|
-
isMorphEnabled: boolean;
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Enable/disable Swellchain support
|
|
40
|
-
* @default false - Not yet fully supported (APP-1975)
|
|
41
|
-
*/
|
|
42
|
-
isSwellchainEnabled: boolean;
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* Enable/disable TAC chain support
|
|
46
|
-
* @default false - Not yet fully supported (APP-1975)
|
|
47
|
-
*/
|
|
48
|
-
isTacEnabled: boolean;
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
* Enable/disable BOB chain support
|
|
52
|
-
* @default false - Not yet fully supported (APP-1975)
|
|
53
|
-
*/
|
|
54
|
-
isBobEnabled: boolean;
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
* Enable/disable Etherlink chain support
|
|
58
|
-
* @default false - Not yet fully supported (APP-1975)
|
|
59
|
-
*/
|
|
60
|
-
isEtherlinkEnabled: boolean;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
export const featureConfig: FeatureConfig = {
|
|
64
|
-
isMonadEnabled: true,
|
|
65
|
-
// Avalanche mainnet - BTC.b not released yet, keep disabled
|
|
66
|
-
isAvalancheMainnetEnabled: false,
|
|
67
|
-
// Avalanche Fuji testnet - enabled for testing (Silo integration)
|
|
68
|
-
isAvalancheFujiEnabled: true,
|
|
69
|
-
|
|
70
|
-
isCornEnabled: true,
|
|
71
|
-
// APP-1975: Chains in asset catalog but not yet fully supported
|
|
72
|
-
// These are hidden from UI until fully tested and released
|
|
73
|
-
isBerachainEnabled: false,
|
|
74
|
-
isMorphEnabled: false,
|
|
75
|
-
isSwellchainEnabled: false,
|
|
76
|
-
isTacEnabled: false,
|
|
77
|
-
isBobEnabled: false,
|
|
78
|
-
isEtherlinkEnabled: false,
|
|
79
|
-
};
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Network fee requirement utilities
|
|
3
|
-
*
|
|
4
|
-
* Determines which chains require network fee authorization for auto-minting.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
import type { ChainId } from './chains';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Chains that require network fee authorization (auto-mint fee)
|
|
11
|
-
*
|
|
12
|
-
* Ethereum mainnet and Sepolia (testnet) require fee authorization.
|
|
13
|
-
* Other chains (Base, BSC, etc.) are subsidized - Lombard absorbs gas costs.
|
|
14
|
-
*/
|
|
15
|
-
export const AUTO_MINT_FEE_CHAINS: readonly ChainId[] = [
|
|
16
|
-
1, // Ethereum mainnet
|
|
17
|
-
11155111, // Sepolia (testnet/stage)
|
|
18
|
-
] as const;
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* Check if a chain requires network fee authorization
|
|
22
|
-
*
|
|
23
|
-
* @param chainId - The chain ID to check
|
|
24
|
-
* @returns True if the chain requires fee authorization
|
|
25
|
-
*
|
|
26
|
-
* @example
|
|
27
|
-
* ```ts
|
|
28
|
-
* requiresAutoMintFee(1) // true (Ethereum)
|
|
29
|
-
* requiresAutoMintFee(8453) // false (Base)
|
|
30
|
-
* ```
|
|
31
|
-
*/
|
|
32
|
-
export function requiresAutoMintFee(chainId: ChainId): boolean {
|
|
33
|
-
return AUTO_MINT_FEE_CHAINS.includes(chainId);
|
|
34
|
-
}
|
package/src/common/parameters.ts
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { Env } from '@lombard.finance/sdk-common';
|
|
2
|
-
import { Address, EIP1193Provider } from 'viem';
|
|
3
|
-
|
|
4
|
-
import { SignerAdapter } from '../clients/evm-signer-adapter';
|
|
5
|
-
import { ChainId } from './chains';
|
|
6
|
-
|
|
7
|
-
export interface IEnvParam {
|
|
8
|
-
/**
|
|
9
|
-
* Optional environment identifier. If not provided, it defaults to `prod`.
|
|
10
|
-
*
|
|
11
|
-
* @default Env.prod
|
|
12
|
-
*/
|
|
13
|
-
env?: Env;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export interface CommonParameters extends IEnvParam {
|
|
17
|
-
/**
|
|
18
|
-
* Chain ID for identifying the blockchain network (e.g., Ethereum, Binance Smart Chain, etc.)
|
|
19
|
-
*/
|
|
20
|
-
chainId: ChainId;
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Optional RPC URL to connect to the blockchain. If not provided, a default RPC URL might be used.
|
|
24
|
-
*/
|
|
25
|
-
rpcUrl?: string;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export interface CommonReadParameters extends CommonParameters {
|
|
29
|
-
/**
|
|
30
|
-
* The account address.
|
|
31
|
-
*/
|
|
32
|
-
account: Address;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
export interface CommonOptionalWriteParameters extends CommonParameters {
|
|
36
|
-
/**
|
|
37
|
-
* The provider (required). An instance of the `EIP1193Provider` which adheres to the EIP-1193 standard for communication with Ethereum-compatible providers.
|
|
38
|
-
* @type {EIP1193Provider}
|
|
39
|
-
*/
|
|
40
|
-
provider?: EIP1193Provider;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* Common write parameters using an EIP-1193 provider (legacy flow).
|
|
45
|
-
*/
|
|
46
|
-
export interface CommonWriteParameters extends CommonParameters {
|
|
47
|
-
/**
|
|
48
|
-
* The account address.
|
|
49
|
-
*/
|
|
50
|
-
account: Address;
|
|
51
|
-
/**
|
|
52
|
-
* An instance of the `EIP1193Provider` which adheres to the EIP-1193 standard for communication with Ethereum-compatible providers.
|
|
53
|
-
* @type {EIP1193Provider}
|
|
54
|
-
*/
|
|
55
|
-
provider: EIP1193Provider;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* Common write parameters using a SignerAdapter (unified bridge flow).
|
|
60
|
-
*/
|
|
61
|
-
export interface CommonSignerWriteParameters extends CommonParameters {
|
|
62
|
-
/**
|
|
63
|
-
* The account address.
|
|
64
|
-
*/
|
|
65
|
-
account: Address;
|
|
66
|
-
/**
|
|
67
|
-
* A SignerAdapter instance for transaction signing (compatible with unified bridge EvmSigner).
|
|
68
|
-
* @type {SignerAdapter}
|
|
69
|
-
*/
|
|
70
|
-
signer: SignerAdapter;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
/**
|
|
74
|
-
* Type guard to check if parameters use provider flow.
|
|
75
|
-
*/
|
|
76
|
-
export function isProviderFlow(
|
|
77
|
-
params: CommonWriteParameters | CommonSignerWriteParameters,
|
|
78
|
-
): params is CommonWriteParameters {
|
|
79
|
-
return 'provider' in params;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* Type guard to check if parameters use signer flow.
|
|
84
|
-
*/
|
|
85
|
-
export function isSignerFlow(
|
|
86
|
-
params: CommonWriteParameters | CommonSignerWriteParameters,
|
|
87
|
-
): params is CommonSignerWriteParameters {
|
|
88
|
-
return 'signer' in params;
|
|
89
|
-
}
|
package/src/config/defaults.ts
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import type { Env } from '@lombard.finance/sdk-common';
|
|
2
|
-
|
|
3
|
-
import { ChainId } from '../common/chains';
|
|
4
|
-
|
|
5
|
-
type ChainDescriptor = {
|
|
6
|
-
id: ChainId;
|
|
7
|
-
name: string;
|
|
8
|
-
type: 'evm' | 'bitcoin' | 'solana' | 'sui' | 'starknet';
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
interface FeatureFlags {
|
|
12
|
-
analytics: boolean;
|
|
13
|
-
sandbox: boolean;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Default configuration for each environment
|
|
18
|
-
*/
|
|
19
|
-
interface DefaultConfig {
|
|
20
|
-
chains: ChainDescriptor[];
|
|
21
|
-
features: FeatureFlags;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Get default configuration for an environment
|
|
26
|
-
*
|
|
27
|
-
* @param env - Environment identifier
|
|
28
|
-
* @returns Default configuration for the environment
|
|
29
|
-
*/
|
|
30
|
-
export function getDefaultConfig(env: Env): DefaultConfig {
|
|
31
|
-
const baseFeatures: FeatureFlags = {
|
|
32
|
-
analytics: false,
|
|
33
|
-
sandbox: env !== 'prod',
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
// Default chains based on environment
|
|
37
|
-
const defaultChains: ChainDescriptor[] = [
|
|
38
|
-
{
|
|
39
|
-
id: env === 'prod' ? (1 as ChainId) : (11155111 as ChainId), // Ethereum mainnet or Sepolia
|
|
40
|
-
name: env === 'prod' ? 'Ethereum' : 'Sepolia',
|
|
41
|
-
type: 'evm',
|
|
42
|
-
},
|
|
43
|
-
];
|
|
44
|
-
|
|
45
|
-
return {
|
|
46
|
-
chains: defaultChains,
|
|
47
|
-
features: baseFeatures,
|
|
48
|
-
};
|
|
49
|
-
}
|