@lombard.finance/sdk 4.0.0 → 4.1.2

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.
Files changed (474) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/bridge/lib/ccip-config.d.ts.map +1 -1
  3. package/dist/bridge/lib/config.d.ts +3 -3
  4. package/dist/bridge/lib/config.d.ts.map +1 -1
  5. package/dist/common/chains.d.ts +2 -2
  6. package/dist/common/chains.d.ts.map +1 -1
  7. package/dist/common/feature-config.d.ts.map +1 -1
  8. package/dist/contract-functions/getBasculeDepositStatus/getBasculeDepositStatus.d.ts.map +1 -1
  9. package/dist/index2.cjs +6 -6
  10. package/dist/index2.js +792 -759
  11. package/dist/vaults/lib/config.d.ts +1 -1
  12. package/package.json +7 -8
  13. package/src/__tests__/AssetNamespace.spec.ts +0 -234
  14. package/src/__tests__/helpers/createTestConfig.ts +0 -90
  15. package/src/__tests__/integration/automint-fee.integration.test.ts +0 -74
  16. package/src/__tests__/integration/btc-deposit.integration.test.ts +0 -109
  17. package/src/__tests__/integration/btc-stake-and-deploy.integration.test.ts +0 -96
  18. package/src/__tests__/integration/btc-stake.integration.test.ts +0 -466
  19. package/src/__tests__/integration/evm-actions.integration.test.ts +0 -932
  20. package/src/__tests__/integration/evm-deploy.integration.test.ts +0 -122
  21. package/src/__tests__/integration/evm-redeem.integration.test.ts +0 -157
  22. package/src/__tests__/integration/faq-patterns.integration.test.ts +0 -465
  23. package/src/__tests__/integration/getLBTCMintingFee.integration.test.ts +0 -195
  24. package/src/__tests__/real-wallet/btc/btc-stake.real.test.ts +0 -70
  25. package/src/__tests__/real-wallet/evm/evm-stake.real.test.ts +0 -47
  26. package/src/__tests__/real-wallet/evm/evm-unstake.real.test.ts +0 -49
  27. package/src/__tests__/real-wallet/non-evm/solana-unstake.real.test.ts +0 -19
  28. package/src/__tests__/real-wallet/non-evm/starknet-unstake.real.test.ts +0 -19
  29. package/src/__tests__/real-wallet/non-evm/sui-unstake.real.test.ts +0 -19
  30. package/src/__tests__/services/ApiService.test.ts +0 -62
  31. package/src/__tests__/services/BtcService.test.ts +0 -30
  32. package/src/__tests__/services/EvmService.test.ts +0 -39
  33. package/src/__tests__/setup.ts +0 -16
  34. package/src/__tests__/test-utils/eip1193-adapter.ts +0 -48
  35. package/src/__tests__/test-utils/evm-wallet.ts +0 -38
  36. package/src/__tests__/test-utils/solana-wallet.ts +0 -22
  37. package/src/__tests__/test-utils/starknet-wallet.ts +0 -9
  38. package/src/__tests__/test-utils/sui-wallet.ts +0 -14
  39. package/src/__tests__/test-utils/test-constraints.ts +0 -110
  40. package/src/__tests__/unit/btc/BtcDeposit.test.ts +0 -253
  41. package/src/__tests__/unit/btc/BtcDepositAndDeploy.test.ts +0 -174
  42. package/src/__tests__/unit/btc/BtcDepositConfig.test.ts +0 -143
  43. package/src/__tests__/unit/btc/BtcDepositStatusTransition.test.ts +0 -221
  44. package/src/__tests__/unit/btc/BtcStakeAndDeploy.test.ts +0 -194
  45. package/src/__tests__/unit/btc/ExistingSignatureHandling.test.ts +0 -301
  46. package/src/__tests__/unit/btc/StakeAndBakeRatioConversion.test.ts +0 -200
  47. package/src/__tests__/unit/btc/StakeAndBakeSignatureRestore.test.ts +0 -216
  48. package/src/__tests__/unit/btc/TokenParameterConsistency.test.ts +0 -184
  49. package/src/__tests__/unit/btc/btc-deposit-token.test.ts +0 -191
  50. package/src/__tests__/unit/catalog/AssetCatalog.test.ts +0 -293
  51. package/src/__tests__/unit/config/ChainConfig.test.ts +0 -47
  52. package/src/__tests__/unit/config/FeeAuthConfig.test.ts +0 -76
  53. package/src/__tests__/unit/contract-functions/getLBTCMintingFee.test.ts +0 -128
  54. package/src/__tests__/unit/core/chain-parsing.test.ts +0 -257
  55. package/src/__tests__/unit/defi/AvailableProtocols.test.ts +0 -100
  56. package/src/__tests__/unit/defi/DefiRegistry.test.ts +0 -25
  57. package/src/__tests__/unit/evm/EvmDeploy.test.ts +0 -224
  58. package/src/__tests__/unit/evm/EvmRedeem.test.ts +0 -207
  59. package/src/__tests__/unit/evm/EvmRedeemFeeAuth.test.ts +0 -93
  60. package/src/__tests__/unit/evm/EvmStake.test.ts +0 -207
  61. package/src/__tests__/unit/evm/EvmStakeFeeAuth.test.ts +0 -193
  62. package/src/__tests__/unit/evm/EvmUnstakeAllowance.test.ts +0 -69
  63. package/src/__tests__/unit/evm/EvmUnstakeConfig.test.ts +0 -203
  64. package/src/__tests__/unit/fee-signature-expiration.test.ts +0 -76
  65. package/src/__tests__/unit/modules/CapabilityRegistry.test.ts +0 -55
  66. package/src/__tests__/unit/shared/BaseAction.test.ts +0 -122
  67. package/src/__tests__/unit/shared/BaseBtcAction.test.ts +0 -114
  68. package/src/__tests__/unit/solana/SolanaUnstake.test.ts +0 -314
  69. package/src/__tests__/unit/starknet/StarknetUnstake.test.ts +0 -318
  70. package/src/__tests__/unit/sui/SuiUnstake.test.ts +0 -310
  71. package/src/__tests__/unit/utils/satoshi.test.ts +0 -27
  72. package/src/__tests__/unit/validation/address-validation.test.ts +0 -350
  73. package/src/api-functions/generateDepositBtcAddress/generateDepositBtcAddress.stories.tsx +0 -71
  74. package/src/api-functions/generateDepositBtcAddress/generateDepositBtcAddress.ts +0 -235
  75. package/src/api-functions/generateDepositBtcAddress/index.ts +0 -1
  76. package/src/api-functions/get-badges-by-address/get-badges-by-address.ts +0 -13
  77. package/src/api-functions/get-badges-by-address/index.ts +0 -1
  78. package/src/api-functions/getDepositAddressReferrer/getDepositAddressReferrer.ts +0 -38
  79. package/src/api-functions/getDepositAddressReferrer/index.ts +0 -1
  80. package/src/api-functions/getDepositBtcAddress/getDepositBtcAddress.stories.tsx +0 -59
  81. package/src/api-functions/getDepositBtcAddress/getDepositBtcAddress.test.ts +0 -265
  82. package/src/api-functions/getDepositBtcAddress/getDepositBtcAddress.ts +0 -167
  83. package/src/api-functions/getDepositBtcAddress/getDepositBtcAddresses.stories.tsx +0 -58
  84. package/src/api-functions/getDepositBtcAddress/index.ts +0 -1
  85. package/src/api-functions/getDepositBtcAddress/make-request.ts +0 -59
  86. package/src/api-functions/getDepositBtcAddress/types.ts +0 -106
  87. package/src/api-functions/getDepositsByAddress/getDepositsByAddress.stories.tsx +0 -51
  88. package/src/api-functions/getDepositsByAddress/getDepositsByAddress.ts +0 -502
  89. package/src/api-functions/getDepositsByAddress/index.ts +0 -1
  90. package/src/api-functions/getLBTCExchangeRate/get-exchange-ratio.stories.tsx +0 -48
  91. package/src/api-functions/getLBTCExchangeRate/get-exchange-ratio.ts +0 -59
  92. package/src/api-functions/getLBTCExchangeRate/getLBTCExchangeRate.stories.tsx +0 -55
  93. package/src/api-functions/getLBTCExchangeRate/getLBTCExchangeRate.ts +0 -75
  94. package/src/api-functions/getLBTCExchangeRate/index.ts +0 -2
  95. package/src/api-functions/getNetworkFeeSignature/getNetworkFeeSignature.stories.tsx +0 -59
  96. package/src/api-functions/getNetworkFeeSignature/getNetworkFeeSignature.ts +0 -116
  97. package/src/api-functions/getNetworkFeeSignature/index.ts +0 -1
  98. package/src/api-functions/getPointsByAddress/getPointsByAddress.stories.tsx +0 -51
  99. package/src/api-functions/getPointsByAddress/getPointsByAddress.ts +0 -304
  100. package/src/api-functions/getPointsByAddress/index.ts +0 -1
  101. package/src/api-functions/getUnstakesByAddress/getUnstakesByAddress.stories.tsx +0 -51
  102. package/src/api-functions/getUnstakesByAddress/getUnstakesByAddress.ts +0 -368
  103. package/src/api-functions/getUnstakesByAddress/index.ts +0 -1
  104. package/src/api-functions/getUserStakeAndBakeSignature/getUserStakeAndBakeSignature.stories.tsx +0 -70
  105. package/src/api-functions/getUserStakeAndBakeSignature/getUserStakeAndBakeSignature.ts +0 -91
  106. package/src/api-functions/getUserStakeAndBakeSignature/index.ts +0 -1
  107. package/src/api-functions/index.ts +0 -11
  108. package/src/api-functions/setReferral/index.ts +0 -1
  109. package/src/api-functions/setReferral/setReferral.ts +0 -67
  110. package/src/api-functions/storeNetworkFeeSignature/index.ts +0 -1
  111. package/src/api-functions/storeNetworkFeeSignature/storeNetworkFeeSignature.stories.tsx +0 -57
  112. package/src/api-functions/storeNetworkFeeSignature/storeNetworkFeeSignature.ts +0 -75
  113. package/src/api-functions/storeStakeAndBakeSignature/index.ts +0 -1
  114. package/src/api-functions/storeStakeAndBakeSignature/storeStakeAndBakeSignature.stories.tsx +0 -57
  115. package/src/api-functions/storeStakeAndBakeSignature/storeStakeAndBakeSignature.ts +0 -61
  116. package/src/bridge/abi/CCIP_BRIDGE_ADAPTER_ABI.json +0 -704
  117. package/src/bridge/abi/CCIP_ROUTER_ABI.json +0 -702
  118. package/src/bridge/abi/OFT_BRIDGE_ADAPTER_ABI.json +0 -912
  119. package/src/bridge/index.ts +0 -16
  120. package/src/bridge/lib/bridge.stories.tsx +0 -90
  121. package/src/bridge/lib/bridge.ts +0 -115
  122. package/src/bridge/lib/ccip-bridge.stories.tsx +0 -91
  123. package/src/bridge/lib/ccip-bridge.ts +0 -214
  124. package/src/bridge/lib/ccip-config.ts +0 -54
  125. package/src/bridge/lib/config.ts +0 -384
  126. package/src/bridge/lib/oft-bridge.stories.tsx +0 -90
  127. package/src/bridge/lib/oft-bridge.ts +0 -217
  128. package/src/chains/btc/BtcActions.ts +0 -192
  129. package/src/chains/btc/actions/deposit/BtcDeposit.ts +0 -388
  130. package/src/chains/btc/actions/deposit/config/evm.ts +0 -197
  131. package/src/chains/btc/actions/deposit/config/index.ts +0 -53
  132. package/src/chains/btc/actions/deposit/config/types.ts +0 -108
  133. package/src/chains/btc/actions/deposit/factory.ts +0 -53
  134. package/src/chains/btc/actions/deposit/index.ts +0 -23
  135. package/src/chains/btc/actions/deposit/types.ts +0 -120
  136. package/src/chains/btc/actions/depositAndDeploy/BtcDepositAndDeploy.ts +0 -366
  137. package/src/chains/btc/actions/depositAndDeploy/config/evm.ts +0 -105
  138. package/src/chains/btc/actions/depositAndDeploy/config/index.ts +0 -111
  139. package/src/chains/btc/actions/depositAndDeploy/config/types.ts +0 -67
  140. package/src/chains/btc/actions/depositAndDeploy/factory.ts +0 -38
  141. package/src/chains/btc/actions/depositAndDeploy/index.ts +0 -24
  142. package/src/chains/btc/actions/depositAndDeploy/types.ts +0 -120
  143. package/src/chains/btc/actions/index.ts +0 -14
  144. package/src/chains/btc/actions/shared/BaseBtcAction.ts +0 -495
  145. package/src/chains/btc/actions/shared/index.ts +0 -28
  146. package/src/chains/btc/actions/shared/tokenUtils.ts +0 -68
  147. package/src/chains/btc/actions/shared/validation.ts +0 -180
  148. package/src/chains/btc/actions/stake/BtcStake.ts +0 -433
  149. package/src/chains/btc/actions/stake/__tests__/BtcStake.test.ts +0 -247
  150. package/src/chains/btc/actions/stake/config/evm.ts +0 -183
  151. package/src/chains/btc/actions/stake/config/index.ts +0 -122
  152. package/src/chains/btc/actions/stake/config/solana.ts +0 -96
  153. package/src/chains/btc/actions/stake/config/starknet.ts +0 -66
  154. package/src/chains/btc/actions/stake/config/sui.ts +0 -61
  155. package/src/chains/btc/actions/stake/config/types.ts +0 -165
  156. package/src/chains/btc/actions/stake/factory.ts +0 -53
  157. package/src/chains/btc/actions/stake/index.ts +0 -22
  158. package/src/chains/btc/actions/stake/types.ts +0 -175
  159. package/src/chains/btc/actions/stakeAndDeploy/BtcStakeAndDeploy.ts +0 -415
  160. package/src/chains/btc/actions/stakeAndDeploy/config/evm.ts +0 -135
  161. package/src/chains/btc/actions/stakeAndDeploy/config/index.ts +0 -119
  162. package/src/chains/btc/actions/stakeAndDeploy/config/types.ts +0 -93
  163. package/src/chains/btc/actions/stakeAndDeploy/factory.ts +0 -54
  164. package/src/chains/btc/actions/stakeAndDeploy/index.ts +0 -26
  165. package/src/chains/btc/actions/stakeAndDeploy/types.ts +0 -118
  166. package/src/chains/btc/client/getCurrentBlockHeight.ts +0 -28
  167. package/src/chains/btc/client/mempool/error.ts +0 -24
  168. package/src/chains/btc/client/mempool/mempool.ts +0 -23
  169. package/src/chains/btc/index.ts +0 -71
  170. package/src/chains/evm/EvmActions.ts +0 -185
  171. package/src/chains/evm/actions/deploy/EvmDeploy.ts +0 -256
  172. package/src/chains/evm/actions/deploy/config/evm.ts +0 -80
  173. package/src/chains/evm/actions/deploy/config/index.ts +0 -8
  174. package/src/chains/evm/actions/deploy/config/types.ts +0 -43
  175. package/src/chains/evm/actions/deploy/factory.ts +0 -44
  176. package/src/chains/evm/actions/deploy/index.ts +0 -17
  177. package/src/chains/evm/actions/deploy/types.ts +0 -74
  178. package/src/chains/evm/actions/deposit/EvmDeposit.ts +0 -159
  179. package/src/chains/evm/actions/deposit/config/evm.ts +0 -100
  180. package/src/chains/evm/actions/deposit/config/index.ts +0 -8
  181. package/src/chains/evm/actions/deposit/config/types.ts +0 -39
  182. package/src/chains/evm/actions/deposit/factory.ts +0 -44
  183. package/src/chains/evm/actions/deposit/index.ts +0 -17
  184. package/src/chains/evm/actions/deposit/types.ts +0 -87
  185. package/src/chains/evm/actions/index.ts +0 -67
  186. package/src/chains/evm/actions/redeem/EvmRedeem.ts +0 -263
  187. package/src/chains/evm/actions/redeem/config/evm.ts +0 -85
  188. package/src/chains/evm/actions/redeem/config/index.ts +0 -8
  189. package/src/chains/evm/actions/redeem/config/types.ts +0 -39
  190. package/src/chains/evm/actions/redeem/factory.ts +0 -43
  191. package/src/chains/evm/actions/redeem/index.ts +0 -17
  192. package/src/chains/evm/actions/redeem/types.ts +0 -93
  193. package/src/chains/evm/actions/stake/EvmStake.ts +0 -339
  194. package/src/chains/evm/actions/stake/config/evm.ts +0 -89
  195. package/src/chains/evm/actions/stake/config/index.ts +0 -8
  196. package/src/chains/evm/actions/stake/config/types.ts +0 -89
  197. package/src/chains/evm/actions/stake/factory.ts +0 -52
  198. package/src/chains/evm/actions/stake/index.ts +0 -30
  199. package/src/chains/evm/actions/stake/types.ts +0 -104
  200. package/src/chains/evm/actions/unstake/EvmUnstake.ts +0 -258
  201. package/src/chains/evm/actions/unstake/config/evm.ts +0 -123
  202. package/src/chains/evm/actions/unstake/config/index.ts +0 -13
  203. package/src/chains/evm/actions/unstake/config/types.ts +0 -37
  204. package/src/chains/evm/actions/unstake/factory.ts +0 -44
  205. package/src/chains/evm/actions/unstake/index.ts +0 -22
  206. package/src/chains/evm/actions/unstake/types.ts +0 -87
  207. package/src/chains/evm/index.ts +0 -16
  208. package/src/chains/evm/shared/feeAuth.ts +0 -198
  209. package/src/chains/evm/shared/index.ts +0 -7
  210. package/src/chains/solana/SolanaActions.ts +0 -85
  211. package/src/chains/solana/actions/index.ts +0 -7
  212. package/src/chains/solana/actions/unstake/SolanaUnstake.ts +0 -151
  213. package/src/chains/solana/actions/unstake/config/btc.ts +0 -47
  214. package/src/chains/solana/actions/unstake/config/index.ts +0 -8
  215. package/src/chains/solana/actions/unstake/config/solana.ts +0 -47
  216. package/src/chains/solana/actions/unstake/config/types.ts +0 -35
  217. package/src/chains/solana/actions/unstake/factory.ts +0 -34
  218. package/src/chains/solana/actions/unstake/index.ts +0 -14
  219. package/src/chains/solana/actions/unstake/types.ts +0 -58
  220. package/src/chains/solana/index.ts +0 -8
  221. package/src/chains/starknet/StarknetActions.ts +0 -85
  222. package/src/chains/starknet/actions/index.ts +0 -7
  223. package/src/chains/starknet/actions/unstake/StarknetUnstake.ts +0 -128
  224. package/src/chains/starknet/actions/unstake/config/btc.ts +0 -43
  225. package/src/chains/starknet/actions/unstake/config/index.ts +0 -8
  226. package/src/chains/starknet/actions/unstake/config/starknet.ts +0 -43
  227. package/src/chains/starknet/actions/unstake/config/types.ts +0 -27
  228. package/src/chains/starknet/actions/unstake/factory.ts +0 -32
  229. package/src/chains/starknet/actions/unstake/index.ts +0 -14
  230. package/src/chains/starknet/actions/unstake/types.ts +0 -57
  231. package/src/chains/starknet/index.ts +0 -8
  232. package/src/chains/sui/SuiActions.ts +0 -82
  233. package/src/chains/sui/actions/index.ts +0 -7
  234. package/src/chains/sui/actions/unstake/SuiUnstake.ts +0 -146
  235. package/src/chains/sui/actions/unstake/config/btc.ts +0 -43
  236. package/src/chains/sui/actions/unstake/config/index.ts +0 -8
  237. package/src/chains/sui/actions/unstake/config/sui.ts +0 -43
  238. package/src/chains/sui/actions/unstake/config/types.ts +0 -27
  239. package/src/chains/sui/actions/unstake/factory.ts +0 -32
  240. package/src/chains/sui/actions/unstake/index.ts +0 -14
  241. package/src/chains/sui/actions/unstake/types.ts +0 -57
  242. package/src/chains/sui/index.ts +0 -8
  243. package/src/client/ApiNamespace.ts +0 -302
  244. package/src/client/AssetNamespace.ts +0 -112
  245. package/src/client/LombardSDK.ts +0 -212
  246. package/src/client/PartnerConfiguration.ts +0 -50
  247. package/src/client/createConfig.ts +0 -90
  248. package/src/client/createLombardSDK.ts +0 -130
  249. package/src/clients/evm-signer-adapter.ts +0 -313
  250. package/src/clients/public-client.ts +0 -49
  251. package/src/clients/rpc-url-config.ts +0 -64
  252. package/src/clients/wallet-client.ts +0 -34
  253. package/src/common/api-config.ts +0 -48
  254. package/src/common/blockchain-identifier.ts +0 -217
  255. package/src/common/chains.stories.tsx +0 -68
  256. package/src/common/chains.ts +0 -449
  257. package/src/common/constants.ts +0 -1
  258. package/src/common/contract-info.ts +0 -9
  259. package/src/common/feature-config.ts +0 -79
  260. package/src/common/fee-requirements.ts +0 -34
  261. package/src/common/parameters.ts +0 -89
  262. package/src/config/defaults.ts +0 -49
  263. package/src/config/index.ts +0 -12
  264. package/src/config/providers.ts +0 -81
  265. package/src/config/types.ts +0 -216
  266. package/src/config/validation.ts +0 -69
  267. package/src/contract-functions/approveLBTC/approveLBTC.stories.tsx +0 -79
  268. package/src/contract-functions/approveLBTC/approveLBTC.ts +0 -66
  269. package/src/contract-functions/approveLBTC/index.ts +0 -1
  270. package/src/contract-functions/approveToken/approveToken.ts +0 -126
  271. package/src/contract-functions/approveToken/index.ts +0 -1
  272. package/src/contract-functions/claimLBTC/claimLBTC.stories.tsx +0 -82
  273. package/src/contract-functions/claimLBTC/claimLBTC.ts +0 -159
  274. package/src/contract-functions/claimLBTC/index.ts +0 -1
  275. package/src/contract-functions/claimUnstakeRedeem/claimUnstakeRedeem.ts +0 -95
  276. package/src/contract-functions/claimUnstakeRedeem/index.ts +0 -1
  277. package/src/contract-functions/deposit/depositToken.stories.tsx +0 -83
  278. package/src/contract-functions/deposit/depositToken.ts +0 -214
  279. package/src/contract-functions/deposit/index.ts +0 -1
  280. package/src/contract-functions/getBasculeDepositStatus/decodeBasculeDepositStatus.ts +0 -170
  281. package/src/contract-functions/getBasculeDepositStatus/getBasculeDepositStatus.stories.tsx +0 -62
  282. package/src/contract-functions/getBasculeDepositStatus/getBasculeDepositStatus.ts +0 -211
  283. package/src/contract-functions/getBasculeDepositStatus/index.ts +0 -2
  284. package/src/contract-functions/getLBTCMintingFee/getLBTCMintingFee.stories.tsx +0 -61
  285. package/src/contract-functions/getLBTCMintingFee/getLBTCMintingFee.ts +0 -193
  286. package/src/contract-functions/getLBTCMintingFee/index.ts +0 -1
  287. package/src/contract-functions/getLBTCTotalSupply/getLBTCTotalSupply.stories.tsx +0 -51
  288. package/src/contract-functions/getLBTCTotalSupply/getLBTCTotalSupply.ts +0 -40
  289. package/src/contract-functions/getLBTCTotalSupply/index.ts +0 -1
  290. package/src/contract-functions/getPermitNonce/getPermitNonce.stories.tsx +0 -56
  291. package/src/contract-functions/getPermitNonce/getPermitNonce.ts +0 -50
  292. package/src/contract-functions/getPermitNonce/index.ts +0 -1
  293. package/src/contract-functions/getShareValue/getShareValue.stories.tsx +0 -58
  294. package/src/contract-functions/getShareValue/getShareValue.ts +0 -59
  295. package/src/contract-functions/getShareValue/index.ts +0 -1
  296. package/src/contract-functions/getSharesByAddress/getSharesByAddress.stories.tsx +0 -65
  297. package/src/contract-functions/getSharesByAddress/getSharesByAddress.ts +0 -86
  298. package/src/contract-functions/getSharesByAddress/index.ts +0 -4
  299. package/src/contract-functions/getStakeAndBakeFee/__tests__/getStakeAndBakeFee.test.ts +0 -167
  300. package/src/contract-functions/getStakeAndBakeFee/getStakeAndBakeFee.stories.tsx +0 -180
  301. package/src/contract-functions/getStakeAndBakeFee/getStakeAndBakeFee.tsx +0 -101
  302. package/src/contract-functions/getStakeAndBakeFee/index.ts +0 -1
  303. package/src/contract-functions/index.ts +0 -21
  304. package/src/contract-functions/signLbtcDestionationAddr/index.ts +0 -1
  305. package/src/contract-functions/signLbtcDestionationAddr/signLbtcDestinationAddr.ts +0 -32
  306. package/src/contract-functions/signLbtcDestionationAddr/signLbtcDestionationAddr.stories.tsx +0 -64
  307. package/src/contract-functions/signNetworkFee/getTypedData.ts +0 -41
  308. package/src/contract-functions/signNetworkFee/index.ts +0 -1
  309. package/src/contract-functions/signNetworkFee/signNetworkFee.stories.tsx +0 -94
  310. package/src/contract-functions/signNetworkFee/signNetworkFee.ts +0 -106
  311. package/src/contract-functions/signStakeAndBake/__tests__/signStakeAndBake.test.ts +0 -888
  312. package/src/contract-functions/signStakeAndBake/handleApprove.ts +0 -81
  313. package/src/contract-functions/signStakeAndBake/handlePermit.ts +0 -28
  314. package/src/contract-functions/signStakeAndBake/index.ts +0 -2
  315. package/src/contract-functions/signStakeAndBake/signStakeAndBake.stories.tsx +0 -202
  316. package/src/contract-functions/signStakeAndBake/signStakeAndBake.ts +0 -160
  317. package/src/contract-functions/signStakeAndBake/typed-data-builder.ts +0 -137
  318. package/src/contract-functions/signStakeAndBake/utils.ts +0 -61
  319. package/src/contract-functions/signStakeAndBake/validation.ts +0 -124
  320. package/src/contract-functions/unstakeLBTC/index.ts +0 -1
  321. package/src/contract-functions/unstakeLBTC/unstakeLBTC.stories.tsx +0 -92
  322. package/src/contract-functions/unstakeLBTC/unstakeLBTC.ts +0 -396
  323. package/src/contracts/abis/index.ts +0 -29
  324. package/src/contracts/index.ts +0 -63
  325. package/src/contracts/types.ts +0 -143
  326. package/src/contracts/utils.ts +0 -288
  327. package/src/core/assets/catalog.ts +0 -343
  328. package/src/core/assets/index.ts +0 -40
  329. package/src/core/assets/types.ts +0 -142
  330. package/src/core/assets/utils.ts +0 -287
  331. package/src/core/chains/catalog.ts +0 -396
  332. package/src/core/chains/index.ts +0 -39
  333. package/src/core/chains/types.ts +0 -193
  334. package/src/core/chains/utils.ts +0 -245
  335. package/src/core/index.ts +0 -72
  336. package/src/core/types.ts +0 -126
  337. package/src/debug-api/btc-script-to-address.ts +0 -20
  338. package/src/debug-api/btc-tx-info.ts +0 -32
  339. package/src/debug-api/evm-by-btc-address.ts +0 -26
  340. package/src/debug-api/index.ts +0 -3
  341. package/src/defi/README.md +0 -517
  342. package/src/defi/defi-registry.stories.tsx +0 -527
  343. package/src/defi/defi-registry.ts +0 -295
  344. package/src/defi/index.ts +0 -17
  345. package/src/index.ts +0 -336
  346. package/src/metrics/get-additional-rewards.ts +0 -69
  347. package/src/metrics/get-lbtc-apy.ts +0 -74
  348. package/src/metrics/get-lbtc-stats.stories.tsx +0 -57
  349. package/src/metrics/get-lbtc-stats.ts +0 -59
  350. package/src/metrics/get-positions-summary.stories.tsx +0 -58
  351. package/src/metrics/get-positions-summary.ts +0 -132
  352. package/src/modules/CapabilityRegistry.ts +0 -125
  353. package/src/modules/apiModule.ts +0 -51
  354. package/src/modules/btcModule.ts +0 -43
  355. package/src/modules/evmModule.ts +0 -48
  356. package/src/modules/index.ts +0 -60
  357. package/src/referrals/ReferralsClient.ts +0 -34
  358. package/src/referrals/index.ts +0 -1
  359. package/src/services/ApiService.ts +0 -152
  360. package/src/services/BtcService.ts +0 -29
  361. package/src/services/EvmService.ts +0 -127
  362. package/src/services/index.ts +0 -43
  363. package/src/shared/__tests__/errors.test.ts +0 -185
  364. package/src/shared/__tests__/events.test.ts +0 -120
  365. package/src/shared/__tests__/types.test.ts +0 -155
  366. package/src/shared/actions/BaseAction.ts +0 -497
  367. package/src/shared/actions/__tests__/BaseAction.test.ts +0 -292
  368. package/src/shared/actions/index.ts +0 -9
  369. package/src/shared/constants/statusConstants.ts +0 -108
  370. package/src/shared/context/ContextBuilder.ts +0 -149
  371. package/src/shared/context/index.ts +0 -8
  372. package/src/shared/context/types.ts +0 -156
  373. package/src/shared/deposits/depositStatus.ts +0 -402
  374. package/src/shared/deposits/index.ts +0 -29
  375. package/src/shared/errors.ts +0 -405
  376. package/src/shared/events.ts +0 -260
  377. package/src/shared/evm/switchChain.ts +0 -109
  378. package/src/shared/index.ts +0 -54
  379. package/src/shared/monitoring/__tests__/createEventEmitter.test.ts +0 -150
  380. package/src/shared/monitoring/createEventEmitter.ts +0 -160
  381. package/src/shared/monitoring/createProgressEmitter.ts +0 -46
  382. package/src/shared/monitoring/depositMonitor.ts +0 -211
  383. package/src/shared/monitoring/index.ts +0 -25
  384. package/src/shared/validation/index.ts +0 -411
  385. package/src/stories/arg-types.ts +0 -38
  386. package/src/stories/components/Badge.tsx +0 -27
  387. package/src/stories/components/Button/Button.css +0 -10
  388. package/src/stories/components/Button/Button.tsx +0 -52
  389. package/src/stories/components/Button/index.ts +0 -1
  390. package/src/stories/components/Card.tsx +0 -18
  391. package/src/stories/components/CodeBlock/CodeBlock.tsx +0 -27
  392. package/src/stories/components/CodeBlock/CodeBlockStyles.css +0 -3
  393. package/src/stories/components/CodeBlock/index.ts +0 -1
  394. package/src/stories/components/ConnectButton/connect-button.tsx +0 -248
  395. package/src/stories/components/ConnectButton/index.ts +0 -1
  396. package/src/stories/components/JsonPreview.tsx +0 -84
  397. package/src/stories/components/Spinner/Spinner.tsx +0 -27
  398. package/src/stories/components/Spinner/index.ts +0 -1
  399. package/src/stories/components/StatsCard.tsx +0 -30
  400. package/src/stories/components/StatusIndicator.tsx +0 -37
  401. package/src/stories/components/TreeNode.tsx +0 -47
  402. package/src/stories/components/decorators/function-type.tsx +0 -63
  403. package/src/stories/components/decorators/index.ts +0 -2
  404. package/src/stories/components/decorators/wagmi-decorator.tsx +0 -92
  405. package/src/stories/components/error-block.tsx +0 -21
  406. package/src/stories/components/index.ts +0 -11
  407. package/src/stories/constants.ts +0 -3
  408. package/src/stories/hooks/useConnection.ts +0 -63
  409. package/src/stories/hooks/useQuery.ts +0 -57
  410. package/src/tokens/__tests__/token-addresses.test.ts +0 -551
  411. package/src/tokens/abi/ASSET_ROUTER_ABI.ts +0 -1966
  412. package/src/tokens/abi/BRIDGE_TOKEN_ADAPTER_ABI.ts +0 -1405
  413. package/src/tokens/abi/BTCK_ABI.ts +0 -1092
  414. package/src/tokens/abi/KATANA_BASCULE_ABI.ts +0 -653
  415. package/src/tokens/abi/LBTC_ABI.json +0 -1761
  416. package/src/tokens/abi/LBTC_ABI.ts +0 -1761
  417. package/src/tokens/abi/LBTC_BASCULE_ABI.json +0 -850
  418. package/src/tokens/abi/NATIVE_LBTC_ABI.ts +0 -1147
  419. package/src/tokens/abi/STLBTC_ABI.ts +0 -1062
  420. package/src/tokens/cross-chain-addresses.stories.tsx +0 -236
  421. package/src/tokens/denomination-utils.stories.tsx +0 -176
  422. package/src/tokens/getLbtcContractAddresses.stories.tsx +0 -158
  423. package/src/tokens/getTokenByAddress.stories.tsx +0 -172
  424. package/src/tokens/getTokenContractInfo.stories.tsx +0 -148
  425. package/src/tokens/getTokenInfo.stories.tsx +0 -133
  426. package/src/tokens/isUpgradedContract.stories.tsx +0 -124
  427. package/src/tokens/lbtc-addresses.ts +0 -18
  428. package/src/tokens/token-addresses.ts +0 -477
  429. package/src/tokens/tokens.ts +0 -249
  430. package/src/tokens/types.ts +0 -80
  431. package/src/utils/array.ts +0 -31
  432. package/src/utils/block.ts +0 -23
  433. package/src/utils/chain.ts +0 -152
  434. package/src/utils/consoleLogger.ts +0 -140
  435. package/src/utils/ensureNotSanctionedAddress.ts +0 -11
  436. package/src/utils/env.ts +0 -20
  437. package/src/utils/err.ts +0 -83
  438. package/src/utils/evmAccount.ts +0 -47
  439. package/src/utils/gas.ts +0 -36
  440. package/src/utils/hex.ts +0 -9
  441. package/src/utils/http.ts +0 -224
  442. package/src/utils/numbers.ts +0 -37
  443. package/src/utils/pagination.ts +0 -70
  444. package/src/utils/satoshi.ts +0 -41
  445. package/src/utils/time.ts +0 -12
  446. package/src/utils/transaction-executor.ts +0 -299
  447. package/src/vaults/abi/SILO_VAULT_SPENDER_ABI.json +0 -793
  448. package/src/vaults/abi/VEDA_VAULT_ABI.json +0 -452
  449. package/src/vaults/abi/VEDA_VAULT_ACCOUNTANT_ABI.json +0 -591
  450. package/src/vaults/abi/VEDA_VAULT_BASE_ASSET_ABI.json +0 -296
  451. package/src/vaults/abi/VEDA_VAULT_BORING_WITHDRAW_QUEUE_ABI.json +0 -502
  452. package/src/vaults/abi/VEDA_VAULT_LENS_ABI.json +0 -175
  453. package/src/vaults/abi/VEDA_VAULT_SPENDER_ABI.json +0 -408
  454. package/src/vaults/abi/VEDA_VAULT_TELLER_ABI.json +0 -700
  455. package/src/vaults/abi/index.ts +0 -4
  456. package/src/vaults/index.ts +0 -46
  457. package/src/vaults/lib/config.ts +0 -184
  458. package/src/vaults/lib/metrics/get-vault-apy.stories.tsx +0 -58
  459. package/src/vaults/lib/metrics/get-vault-apy.ts +0 -176
  460. package/src/vaults/lib/metrics/get-vault-points.stories.tsx +0 -60
  461. package/src/vaults/lib/metrics/get-vault-points.ts +0 -74
  462. package/src/vaults/lib/metrics/get-vault-tvl.stories.tsx +0 -58
  463. package/src/vaults/lib/metrics/get-vault-tvl.ts +0 -121
  464. package/src/vaults/lib/ops/cancel-withdraw.stories.tsx +0 -80
  465. package/src/vaults/lib/ops/deposit.stories.tsx +0 -82
  466. package/src/vaults/lib/ops/deposit.ts +0 -152
  467. package/src/vaults/lib/ops/get-vault-deposits.stories.tsx +0 -65
  468. package/src/vaults/lib/ops/get-vault-deposits.ts +0 -209
  469. package/src/vaults/lib/ops/get-vault-withdrawals.stories.tsx +0 -67
  470. package/src/vaults/lib/ops/get-vault-withdrawals.ts +0 -349
  471. package/src/vaults/lib/ops/withdraw.stories.tsx +0 -82
  472. package/src/vaults/lib/ops/withdraw.ts +0 -225
  473. package/src/version.ts +0 -56
  474. package/src/vite-env.d.ts +0 -1
@@ -1,39 +0,0 @@
1
- /**
2
- * Core Chains Module
3
- *
4
- * Chain identifiers, catalog, and query functions.
5
- *
6
- * @module core/chains
7
- */
8
-
9
- // Types and constants
10
- export type { ChainMetadata, ChainType } from './types';
11
- export {
12
- CAIP2_SEPARATOR,
13
- Chain,
14
- CHAIN_PREFIXES,
15
- chainValueToKey,
16
- isChain,
17
- } from './types';
18
-
19
- // Catalog
20
- export { CHAIN_CATALOG } from './catalog';
21
-
22
- // Query functions
23
- export type { ChainTypeMetadata } from './utils';
24
- export {
25
- evmChainIdToChain,
26
- getChainMetadata,
27
- getChainName,
28
- getChainsByType,
29
- getChainType,
30
- getChainTypeMetadata,
31
- getExplorerAddressUrl,
32
- getExplorerTxUrl,
33
- getMainnetChains,
34
- getTestnetChains,
35
- isEvmChain,
36
- isMainnet,
37
- isTestnet,
38
- parseChainIdentifier,
39
- } from './utils';
@@ -1,193 +0,0 @@
1
- /**
2
- * Chain Types
3
- *
4
- * Type definitions and constants for chains.
5
- *
6
- * @module core/chains/types
7
- */
8
-
9
- // ═══════════════════════════════════════════════════════════════════════════
10
- // Chain Prefixes (CAIP-2 namespaces)
11
- // ═══════════════════════════════════════════════════════════════════════════
12
-
13
- /**
14
- * CAIP-2 namespace prefixes for chain identification.
15
- *
16
- * Official namespaces (registered with ChainAgnostic):
17
- * - EIP155: EVM-compatible chains
18
- * - BIP122: Bitcoin and Bitcoin-derived chains (uses genesis block hash as reference)
19
- * - SOLANA: Solana blockchain
20
- * - STARKNET: Starknet L2
21
- *
22
- * Unofficial namespaces (not yet registered, used for internal identification):
23
- * - SUI: Sui blockchain (proposal pending)
24
- * - ZCASH, RIPPLE, DOGECOIN, HYPERLIQUID: Internal use only
25
- *
26
- * @see https://chainagnostic.org/CAIPs/caip-2
27
- * @see https://namespaces.chainagnostic.org
28
- */
29
- export const CHAIN_PREFIXES = {
30
- // Official CAIP-2 namespaces
31
- BIP122: 'bip122',
32
- EIP155: 'eip155',
33
- SOLANA: 'solana',
34
- STARKNET: 'starknet',
35
-
36
- // Unofficial namespaces (internal use)
37
- SUI: 'sui',
38
- ZCASH: 'zcash',
39
- RIPPLE: 'ripple',
40
- DOGECOIN: 'dogecoin',
41
- HYPERLIQUID: 'hyperliquid',
42
- } as const;
43
-
44
- /** CAIP-2 separator between namespace and reference */
45
- export const CAIP2_SEPARATOR = ':' as const;
46
-
47
- // ═══════════════════════════════════════════════════════════════════════════
48
- // Chain Constants
49
- // ═══════════════════════════════════════════════════════════════════════════
50
-
51
- /** Helper to construct CAIP-2 identifier */
52
- const caip2 = (prefix: string, reference: string | number) =>
53
- `${prefix}${CAIP2_SEPARATOR}${reference}` as const;
54
-
55
- /**
56
- * Canonical chain identifiers using CAIP-2 format.
57
- */
58
- export const Chain = {
59
- // Bitcoin chains (BIP122: first 32 chars of genesis block hash in little-endian)
60
- BITCOIN_MAINNET: caip2(
61
- CHAIN_PREFIXES.BIP122,
62
- '000000000019d6689c085ae165831e93',
63
- ),
64
- BITCOIN_SIGNET: caip2(
65
- CHAIN_PREFIXES.BIP122,
66
- '00000008819873e925422c1ff0f99f7c',
67
- ),
68
-
69
- // EVM chains (EIP155: numeric chain ID)
70
- ETHEREUM: caip2(CHAIN_PREFIXES.EIP155, 1),
71
- BASE: caip2(CHAIN_PREFIXES.EIP155, 8453),
72
- BASE_SEPOLIA: caip2(CHAIN_PREFIXES.EIP155, 84532),
73
- OPTIMISM: caip2(CHAIN_PREFIXES.EIP155, 10),
74
- POLYGON: caip2(CHAIN_PREFIXES.EIP155, 137),
75
- BSC: caip2(CHAIN_PREFIXES.EIP155, 56),
76
- BSC_TESTNET: caip2(CHAIN_PREFIXES.EIP155, 97),
77
- AVALANCHE: caip2(CHAIN_PREFIXES.EIP155, 43114),
78
- AVALANCHE_FUJI: caip2(CHAIN_PREFIXES.EIP155, 43113),
79
- BERACHAIN: caip2(CHAIN_PREFIXES.EIP155, 80094),
80
- BERACHAIN_BARTIO: caip2(CHAIN_PREFIXES.EIP155, 80084),
81
- BOB: caip2(CHAIN_PREFIXES.EIP155, 60808),
82
- CORN: caip2(CHAIN_PREFIXES.EIP155, 21000000),
83
- ETHERLINK: caip2(CHAIN_PREFIXES.EIP155, 42793),
84
- KATANA: caip2(CHAIN_PREFIXES.EIP155, 747474),
85
- KATANA_TATARA: caip2(CHAIN_PREFIXES.EIP155, 129399),
86
- MORPH: caip2(CHAIN_PREFIXES.EIP155, 2818),
87
- SONIC: caip2(CHAIN_PREFIXES.EIP155, 146),
88
- SONIC_TESTNET: caip2(CHAIN_PREFIXES.EIP155, 57054),
89
- SONIC_BLAZE_TESTNET: caip2(CHAIN_PREFIXES.EIP155, 57054), // Alias
90
- SWELL: caip2(CHAIN_PREFIXES.EIP155, 1923),
91
- TAC: caip2(CHAIN_PREFIXES.EIP155, 239),
92
- SEPOLIA: caip2(CHAIN_PREFIXES.EIP155, 11155111),
93
- HOLESKY: caip2(CHAIN_PREFIXES.EIP155, 17000),
94
- MEGAETH: caip2(CHAIN_PREFIXES.EIP155, 4326),
95
- MONAD: caip2(CHAIN_PREFIXES.EIP155, 143),
96
- STABLE: caip2(CHAIN_PREFIXES.EIP155, 988),
97
-
98
- // Solana chains (first 32 chars of genesis hash)
99
- SOLANA_MAINNET: caip2(
100
- CHAIN_PREFIXES.SOLANA,
101
- '5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
102
- ),
103
- SOLANA_DEVNET: caip2(
104
- CHAIN_PREFIXES.SOLANA,
105
- 'EtWTRABZaYq6iMfeYKouRu166VU2xqa1',
106
- ),
107
- SOLANA_TESTNET: caip2(
108
- CHAIN_PREFIXES.SOLANA,
109
- '4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z',
110
- ),
111
-
112
- // Sui chains (unofficial namespace, using cluster names)
113
- SUI_MAINNET: caip2(CHAIN_PREFIXES.SUI, 'mainnet'),
114
- SUI_TESTNET: caip2(CHAIN_PREFIXES.SUI, 'testnet'),
115
- SUI_DEVNET: caip2(CHAIN_PREFIXES.SUI, 'devnet'),
116
-
117
- // Starknet chains (uses network identifiers)
118
- STARKNET_MAINNET: caip2(CHAIN_PREFIXES.STARKNET, 'SN_MAIN'),
119
- STARKNET_SEPOLIA: caip2(CHAIN_PREFIXES.STARKNET, 'SN_SEPOLIA'),
120
-
121
- // Zcash (unofficial namespace)
122
- ZCASH_MAINNET: caip2(CHAIN_PREFIXES.ZCASH, 'mainnet'),
123
- ZCASH_TESTNET: caip2(CHAIN_PREFIXES.ZCASH, 'testnet'),
124
-
125
- // Ripple (unofficial namespace)
126
- RIPPLE_MAINNET: caip2(CHAIN_PREFIXES.RIPPLE, 'mainnet'),
127
- RIPPLE_TESTNET: caip2(CHAIN_PREFIXES.RIPPLE, 'testnet'),
128
-
129
- // Dogecoin (unofficial namespace)
130
- DOGECOIN_MAINNET: caip2(CHAIN_PREFIXES.DOGECOIN, 'mainnet'),
131
- DOGECOIN_TESTNET: caip2(CHAIN_PREFIXES.DOGECOIN, 'testnet'),
132
-
133
- // Custodial (unofficial namespace)
134
- HYPERLIQUID: caip2(CHAIN_PREFIXES.HYPERLIQUID, 'mainnet'),
135
- } as const;
136
-
137
- export type Chain = (typeof Chain)[keyof typeof Chain];
138
-
139
- // ═══════════════════════════════════════════════════════════════════════════
140
- // Metadata Types
141
- // ═══════════════════════════════════════════════════════════════════════════
142
-
143
- export type ChainType =
144
- | 'bitcoin'
145
- | 'evm'
146
- | 'solana'
147
- | 'sui'
148
- | 'starknet'
149
- | 'zcash'
150
- | 'ripple'
151
- | 'dogecoin'
152
- | 'hyperliquid';
153
-
154
- export interface ChainMetadata {
155
- /** Human-readable chain name */
156
- name: string;
157
- /** Chain type/ecosystem */
158
- type: ChainType;
159
- /** Whether this is a testnet/devnet */
160
- isTestnet: boolean;
161
- /** Block explorer URL */
162
- explorerUrl?: string;
163
- /** Native currency symbol */
164
- nativeCurrency?: string;
165
- /** UI badge variant */
166
- badgeVariant:
167
- | 'primary'
168
- | 'secondary'
169
- | 'success'
170
- | 'danger'
171
- | 'warning'
172
- | 'info';
173
- }
174
-
175
- // ═══════════════════════════════════════════════════════════════════════════
176
- // Type Utilities
177
- // ═══════════════════════════════════════════════════════════════════════════
178
-
179
- /** Convert Chain value to its key name */
180
- export function chainValueToKey(value: string): string {
181
- return (
182
- Object.keys(Chain).find(
183
- key => Chain[key as keyof typeof Chain] === value,
184
- ) ?? ''
185
- );
186
- }
187
-
188
- /** Type guard to check if a value is a valid Chain */
189
- export function isChain(value: unknown): value is Chain {
190
- return (
191
- typeof value === 'string' && Object.values(Chain).includes(value as Chain)
192
- );
193
- }
@@ -1,245 +0,0 @@
1
- /**
2
- * Chain Query Functions
3
- *
4
- * Utility functions for querying the chain catalog.
5
- *
6
- * @module core/chains/utils
7
- */
8
-
9
- import {
10
- ChainId,
11
- isSolanaChain,
12
- isSuiChain,
13
- isValidChain,
14
- SOLANA_DEVNET_CHAIN,
15
- SOLANA_MAINNET_CHAIN,
16
- SOLANA_TESTNET_CHAIN,
17
- SolanaChain,
18
- STARKNET_MAINNET_CHAIN,
19
- STARKNET_SEPOLIA_CHAIN,
20
- StarknetChainId,
21
- SuiChain,
22
- } from '../../common/chains';
23
- import { LombardError, ValidationErrorCode } from '../../shared/errors';
24
- import { CHAIN_CATALOG } from './catalog';
25
- import {
26
- CAIP2_SEPARATOR,
27
- Chain,
28
- CHAIN_PREFIXES,
29
- ChainMetadata,
30
- ChainType,
31
- isChain,
32
- } from './types';
33
-
34
- /**
35
- * Maps CAIP-2 Solana genesis hash references to legacy SolanaChain constants.
36
- *
37
- * CAIP-2 uses the first 32 chars of the genesis block hash as the reference,
38
- * while the legacy system uses network names like 'mainnet-beta', 'devnet', 'testnet'.
39
- *
40
- * Genesis hashes:
41
- * - Mainnet: 5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp (full hash starts with 5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc65hiGPAejCtx5...)
42
- * - Devnet: EtWTRABZaYq6iMfeYKouRu166VU2xqa1 (full hash starts with EtWTRABZaYq6iMfeYKouRu166VU2xqa1dT5ZqE8CjGWRXc...)
43
- * - Testnet: 4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z (full hash starts with 4uhcVJyU9pJkvQyS88uRDiswHXSCkY3zUEzxnuRbtRMp8...)
44
- */
45
- const SOLANA_GENESIS_TO_CHAIN: Record<string, SolanaChain> = {
46
- '5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp': SOLANA_MAINNET_CHAIN,
47
- 'EtWTRABZaYq6iMfeYKouRu166VU2xqa1': SOLANA_DEVNET_CHAIN,
48
- '4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z': SOLANA_TESTNET_CHAIN,
49
- };
50
-
51
- /**
52
- * Maps CAIP-2 Starknet network names to Starknet hex chain IDs.
53
- *
54
- * CAIP-2 uses human-readable network names (SN_MAIN, SN_SEPOLIA) as the reference,
55
- * while Starknet SDK expects hex-encoded chain IDs.
56
- *
57
- * Mapping:
58
- * - SN_MAIN → 0x534e5f4d41494e (hex of "SN_MAIN")
59
- * - SN_SEPOLIA → 0x534e5f5345504f4c4941 (hex of "SN_SEPOLIA")
60
- */
61
- const STARKNET_NETWORK_TO_CHAIN_ID: Record<string, StarknetChainId> = {
62
- SN_MAIN: STARKNET_MAINNET_CHAIN,
63
- SN_SEPOLIA: STARKNET_SEPOLIA_CHAIN,
64
- };
65
-
66
- /**
67
- * Converts a CAIP-2 Starknet network name to its hex chain ID.
68
- *
69
- * @param network - The network name from CAIP-2 (e.g., "SN_SEPOLIA")
70
- * @returns The Starknet hex chain ID, or undefined if not found
71
- */
72
- function starknetNetworkToChainId(network: string): StarknetChainId | undefined {
73
- return STARKNET_NETWORK_TO_CHAIN_ID[network];
74
- }
75
-
76
- /** Get chain metadata */
77
- export function getChainMetadata(chain: Chain): ChainMetadata {
78
- return CHAIN_CATALOG[chain];
79
- }
80
-
81
- /** Get the human-readable name for a chain */
82
- export function getChainName(chain: Chain): string {
83
- return CHAIN_CATALOG[chain].name;
84
- }
85
-
86
- /** Get chain type */
87
- export function getChainType(chain: Chain): ChainType {
88
- return CHAIN_CATALOG[chain].type;
89
- }
90
-
91
- /** Check if a chain is a testnet */
92
- export function isTestnet(chain: Chain): boolean {
93
- return CHAIN_CATALOG[chain].isTestnet;
94
- }
95
-
96
- /** Check if a chain is a mainnet */
97
- export function isMainnet(chain: Chain): boolean {
98
- return !CHAIN_CATALOG[chain].isTestnet;
99
- }
100
-
101
- /** Check if a chain is an EVM chain */
102
- export function isEvmChain(chain: Chain): boolean {
103
- return CHAIN_CATALOG[chain].type === 'evm';
104
- }
105
-
106
- /** Get block explorer URL for an address */
107
- export function getExplorerAddressUrl(
108
- chain: Chain,
109
- address: string,
110
- ): string | undefined {
111
- const { explorerUrl } = CHAIN_CATALOG[chain];
112
- if (!explorerUrl) return undefined;
113
- return `${explorerUrl}/address/${address}`;
114
- }
115
-
116
- /** Get block explorer URL for a transaction */
117
- export function getExplorerTxUrl(
118
- chain: Chain,
119
- txHash: string,
120
- ): string | undefined {
121
- const { explorerUrl } = CHAIN_CATALOG[chain];
122
- if (!explorerUrl) return undefined;
123
- return `${explorerUrl}/tx/${txHash}`;
124
- }
125
-
126
- /** Get all mainnet chains */
127
- export function getMainnetChains(): Chain[] {
128
- return (Object.keys(CHAIN_CATALOG) as Chain[]).filter(
129
- chain => !CHAIN_CATALOG[chain].isTestnet,
130
- );
131
- }
132
-
133
- /** Get all testnet chains */
134
- export function getTestnetChains(): Chain[] {
135
- return (Object.keys(CHAIN_CATALOG) as Chain[]).filter(
136
- chain => CHAIN_CATALOG[chain].isTestnet,
137
- );
138
- }
139
-
140
- /** Get all chains of a specific type */
141
- export function getChainsByType(type: ChainType): Chain[] {
142
- return (Object.keys(CHAIN_CATALOG) as Chain[]).filter(
143
- chain => CHAIN_CATALOG[chain].type === type,
144
- );
145
- }
146
-
147
- /** Helper to get prefix with separator */
148
- const withSeparator = (prefix: string) => `${prefix}${CAIP2_SEPARATOR}`;
149
-
150
- /** Parse a CAIP-2 chain identifier into its native chain representation */
151
- export function parseChainIdentifier(
152
- chain: Chain,
153
- ): ChainId | SuiChain | SolanaChain | StarknetChainId {
154
- const evmPrefix = withSeparator(CHAIN_PREFIXES.EIP155);
155
- if (chain.startsWith(evmPrefix)) {
156
- const chainId = Number.parseInt(chain.slice(evmPrefix.length), 10);
157
- if (isValidChain(chainId)) return chainId;
158
- throw new LombardError(
159
- ValidationErrorCode.INVALID_CHAIN,
160
- `Invalid EVM chain: ${chain}`,
161
- );
162
- }
163
-
164
- const solanaPrefix = withSeparator(CHAIN_PREFIXES.SOLANA);
165
- if (chain.startsWith(solanaPrefix)) {
166
- const reference = chain.slice(solanaPrefix.length);
167
-
168
- // First check if it's already in legacy format (e.g., 'mainnet-beta', 'devnet')
169
- const legacyChain = `solana:${reference}`;
170
- if (isSolanaChain(legacyChain)) return legacyChain as SolanaChain;
171
-
172
- // Otherwise, map CAIP-2 genesis hash to legacy format
173
- const mappedChain = SOLANA_GENESIS_TO_CHAIN[reference];
174
- if (mappedChain) return mappedChain;
175
-
176
- throw new LombardError(
177
- ValidationErrorCode.INVALID_CHAIN,
178
- `Invalid Solana chain: ${chain}`,
179
- );
180
- }
181
-
182
- const suiPrefix = withSeparator(CHAIN_PREFIXES.SUI);
183
- if (chain.startsWith(suiPrefix)) {
184
- // isSuiChain expects the full chain ID (e.g., 'sui:testnet'), not just the network part
185
- if (isSuiChain(chain)) return chain as SuiChain;
186
- throw new LombardError(
187
- ValidationErrorCode.INVALID_CHAIN,
188
- `Invalid Sui chain: ${chain}`,
189
- );
190
- }
191
-
192
- const starknetPrefix = withSeparator(CHAIN_PREFIXES.STARKNET);
193
- if (chain.startsWith(starknetPrefix)) {
194
- const network = chain.slice(starknetPrefix.length);
195
- // Map CAIP-2 network names to Starknet hex chain IDs
196
- const starknetChainId = starknetNetworkToChainId(network);
197
- if (starknetChainId) return starknetChainId;
198
- throw new LombardError(
199
- ValidationErrorCode.INVALID_CHAIN,
200
- `Invalid Starknet chain: ${chain}`,
201
- );
202
- }
203
-
204
- throw new LombardError(
205
- ValidationErrorCode.INVALID_CHAIN,
206
- `Invalid chain: ${chain}`,
207
- );
208
- }
209
-
210
- /**
211
- * Convert an EVM ChainId (number) to a Chain (CAIP-2 string).
212
- *
213
- * @param chainId - Numeric EVM chain ID
214
- * @returns CAIP-2 chain identifier
215
- *
216
- * @example
217
- * ```typescript
218
- * evmChainIdToChain(1) // "eip155:1" (Ethereum)
219
- * evmChainIdToChain(43114) // "eip155:43114" (Avalanche)
220
- * ```
221
- */
222
- export function evmChainIdToChain(chainId: ChainId): Chain {
223
- return `${CHAIN_PREFIXES.EIP155}${CAIP2_SEPARATOR}${chainId}` as Chain;
224
- }
225
-
226
- /** @deprecated Use getChainMetadata instead */
227
- export interface ChainTypeMetadata {
228
- type: string;
229
- label: string;
230
- variant: 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info';
231
- }
232
-
233
- /** @deprecated Use getChainMetadata instead */
234
- export function getChainTypeMetadata(chain: Chain | string): ChainTypeMetadata {
235
- if (isChain(chain)) {
236
- const meta = CHAIN_CATALOG[chain];
237
- return {
238
- type: meta.type,
239
- label: meta.type.toUpperCase(),
240
- variant: meta.badgeVariant,
241
- };
242
- }
243
- const prefix = chain.split(':')[0];
244
- return { type: prefix, label: prefix.toUpperCase(), variant: 'secondary' };
245
- }
package/src/core/index.ts DELETED
@@ -1,72 +0,0 @@
1
- /**
2
- * Core Module
3
- *
4
- * Foundational definitions for chains, assets, and common types.
5
- *
6
- * @module core
7
- */
8
-
9
- // ═══════════════════════════════════════════════════════════════════════════
10
- // Chain exports
11
- // ═══════════════════════════════════════════════════════════════════════════
12
-
13
- export type { ChainMetadata, ChainType, ChainTypeMetadata } from './chains';
14
- export {
15
- CAIP2_SEPARATOR,
16
- Chain,
17
- CHAIN_CATALOG,
18
- CHAIN_PREFIXES,
19
- chainValueToKey,
20
- evmChainIdToChain,
21
- getChainMetadata,
22
- getChainName,
23
- getChainsByType,
24
- getChainType,
25
- getChainTypeMetadata,
26
- getExplorerAddressUrl,
27
- getExplorerTxUrl,
28
- getMainnetChains,
29
- getTestnetChains,
30
- isChain,
31
- isEvmChain,
32
- isMainnet,
33
- isTestnet,
34
- parseChainIdentifier,
35
- } from './chains';
36
-
37
- // ═══════════════════════════════════════════════════════════════════════════
38
- // Asset exports
39
- // ═══════════════════════════════════════════════════════════════════════════
40
-
41
- export type { AssetCatalog, AssetEntry, Deployment } from './assets';
42
- export {
43
- ASSET_CATALOG,
44
- AssetId,
45
- assetValueToKey,
46
- getAllAssetChains,
47
- getAssetAddress,
48
- getAssetByAddress,
49
- getAssetChains,
50
- getAssetChainsForEnvs,
51
- getAssetDecimals,
52
- getAssetDisplayName,
53
- getAssetEnvironments,
54
- getAssetMetadata,
55
- getAssetRouter,
56
- getBridgeAdapter,
57
- getChainsWithAllAssets,
58
- getEvmAssetChains,
59
- getEvmChainsWithAllAssets,
60
- getPublicMarketMaker,
61
- getSupportedAssets,
62
- isAssetDeployed,
63
- isAssetId,
64
- usesAssetRouter,
65
- } from './assets';
66
-
67
- // ═══════════════════════════════════════════════════════════════════════════
68
- // Common types
69
- // ═══════════════════════════════════════════════════════════════════════════
70
-
71
- export type { DeployConfig, RouteParams, StrategyProgress } from './types';
72
- export { DeployProtocol, Env, StepStatus, StrategyStatus } from './types';
package/src/core/types.ts DELETED
@@ -1,126 +0,0 @@
1
- /**
2
- * Core Types
3
- *
4
- * Common types used across the Lombard SDK.
5
- *
6
- * @module core/types
7
- */
8
-
9
- import type { AssetId } from './assets';
10
- import type { Chain } from './chains';
11
-
12
- // ═══════════════════════════════════════════════════════════════════════════
13
- // Strategy Types
14
- // ═══════════════════════════════════════════════════════════════════════════
15
-
16
- /**
17
- * Common strategy statuses across all operation types
18
- */
19
- export const StrategyStatus = {
20
- IDLE: 'idle',
21
- PREPARING: 'preparing',
22
- READY: 'ready',
23
- EXECUTING: 'executing',
24
- COMPLETED: 'completed',
25
- FAILED: 'failed',
26
- } as const;
27
-
28
- export type StrategyStatus =
29
- (typeof StrategyStatus)[keyof typeof StrategyStatus];
30
-
31
- /**
32
- * Step status for progress tracking
33
- */
34
- export const StepStatus = {
35
- IDLE: 'idle',
36
- PENDING: 'pending',
37
- COMPLETE: 'complete',
38
- FAILED: 'failed',
39
- } as const;
40
-
41
- export type StepStatus = (typeof StepStatus)[keyof typeof StepStatus];
42
-
43
- /**
44
- * Progress information for strategy execution
45
- */
46
- export interface StrategyProgress<TStatus extends string> {
47
- /** Current strategy status */
48
- status: TStatus;
49
-
50
- /** Individual step statuses (keys vary by strategy) */
51
- steps: Record<string, StepStatus>;
52
-
53
- /** Optional: Current confirmations for blockchain transactions */
54
- confirmations?: number;
55
-
56
- /** Optional: Required confirmations for completion */
57
- requiredConfirmations?: number;
58
-
59
- /** Optional: Additional metadata specific to the strategy */
60
- metadata?: Record<string, unknown>;
61
- }
62
-
63
- // ═══════════════════════════════════════════════════════════════════════════
64
- // Route Types
65
- // ═══════════════════════════════════════════════════════════════════════════
66
-
67
- /**
68
- * Route parameters for registry lookups
69
- */
70
- export interface RouteParams {
71
- /** Input asset (optional for some operations like deposits) */
72
- assetIn?: AssetId;
73
-
74
- /** Output asset */
75
- assetOut: AssetId;
76
-
77
- /** Source blockchain (optional for some operations) */
78
- sourceChain?: Chain;
79
-
80
- /** Destination blockchain */
81
- destChain: Chain;
82
- }
83
-
84
- // ═══════════════════════════════════════════════════════════════════════════
85
- // Deploy Types
86
- // ═══════════════════════════════════════════════════════════════════════════
87
-
88
- /**
89
- * Deploy protocol identifiers
90
- *
91
- * Re-exported from defi-registry.ts which is the single source of truth.
92
- * Use DefiProtocol.Veda ('veda') or DefiProtocol.Silo ('silo').
93
- */
94
- export {
95
- type DefiProtocol,
96
- DefiProtocol as DeployProtocol,
97
- } from '../defi/defi-registry';
98
-
99
- /**
100
- * Deploy configuration for stake-and-deploy operations
101
- */
102
- export interface DeployConfig {
103
- /** Target protocol (use DeployProtocol.Veda or DeployProtocol.Silo) */
104
- protocol: string;
105
-
106
- /** Optional: Amount to deploy (partial deployment) */
107
- amount?: bigint;
108
-
109
- /** Optional: Slippage tolerance in basis points (e.g., 50 = 0.5%) */
110
- slippage?: number;
111
-
112
- /** Optional: Deadline timestamp for the deployment transaction */
113
- deadline?: number;
114
-
115
- /** Optional: Protocol-specific options */
116
- options?: Record<string, unknown>;
117
- }
118
-
119
- // ═══════════════════════════════════════════════════════════════════════════
120
- // Re-exports
121
- // ═══════════════════════════════════════════════════════════════════════════
122
-
123
- /**
124
- * Re-export Env from sdk-common for convenience
125
- */
126
- export { Env } from '@lombard.finance/sdk-common';
@@ -1,20 +0,0 @@
1
- import { Env } from '@lombard.finance/sdk-common';
2
- import axios from 'axios';
3
-
4
- import { getApiConfig } from '../common/api-config';
5
-
6
- type BtcScriptToAddressResponse = {
7
- btc_address: string;
8
- };
9
-
10
- export const fetchBtcScriptToAddress = async (btcScript: string, env?: Env) => {
11
- const { baseApiUrl } = getApiConfig(env);
12
- try {
13
- const { data } = await axios.get<BtcScriptToAddressResponse>(
14
- `${baseApiUrl}/api/v1/debug/btc-script-to-address/${btcScript}`,
15
- );
16
- return data.btc_address;
17
- } catch {
18
- return undefined;
19
- }
20
- };