@lombard.finance/sdk 4.3.2 → 4.4.1

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 (231) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/LICENSE +21 -0
  3. package/README.md +6 -6
  4. package/dist/api-functions/generateDepositBtcAddress/generateDepositBtcAddress.d.ts.map +1 -1
  5. package/dist/api-functions/getDepositBtcAddress/getDepositBtcAddress.d.ts.map +1 -1
  6. package/dist/api-functions/getDepositsByAddress/getDepositsByAddress.d.ts +13 -1
  7. package/dist/api-functions/getDepositsByAddress/getDepositsByAddress.d.ts.map +1 -1
  8. package/dist/api.cjs +1 -1
  9. package/dist/api.js +29 -29
  10. package/dist/bridge.cjs +1 -1
  11. package/dist/bridge.js +7 -7
  12. package/dist/btc.cjs +1 -1
  13. package/dist/btc.js +10 -10
  14. package/dist/chains/btc/actions/deposit/BtcDeposit.d.ts +7 -4
  15. package/dist/chains/btc/actions/deposit/BtcDeposit.d.ts.map +1 -1
  16. package/dist/chains/btc/actions/deposit/config/index.d.ts +16 -8
  17. package/dist/chains/btc/actions/deposit/config/index.d.ts.map +1 -1
  18. package/dist/chains/btc/actions/deposit/config/solana.d.ts +20 -0
  19. package/dist/chains/btc/actions/deposit/config/solana.d.ts.map +1 -0
  20. package/dist/chains/btc/actions/deposit/config/types.d.ts +4 -3
  21. package/dist/chains/btc/actions/deposit/config/types.d.ts.map +1 -1
  22. package/dist/chains/evm/EvmActions.d.ts +4 -4
  23. package/dist/chains/evm/actions/deposit/config/evm.d.ts +3 -3
  24. package/dist/chains/evm/actions/deposit/config/evm.d.ts.map +1 -1
  25. package/dist/chains/evm/actions/deposit/config/types.d.ts +1 -1
  26. package/dist/chains/evm/actions/deposit/config/types.d.ts.map +1 -1
  27. package/dist/chains/evm/actions/deposit/factory.d.ts +1 -1
  28. package/dist/chains/evm/actions/deposit/types.d.ts +1 -1
  29. package/dist/chains/evm/actions/deposit/types.d.ts.map +1 -1
  30. package/dist/chains/evm/actions/redeem/EvmRedeem.d.ts.map +1 -1
  31. package/dist/chains/evm/actions/unstake/EvmUnstake.d.ts.map +1 -1
  32. package/dist/chains/solana/SolanaActions.d.ts +10 -0
  33. package/dist/chains/solana/SolanaActions.d.ts.map +1 -1
  34. package/dist/chains/solana/actions/index.d.ts +1 -0
  35. package/dist/chains/solana/actions/index.d.ts.map +1 -1
  36. package/dist/chains/solana/actions/redeem/SolanaRedeem.d.ts +37 -0
  37. package/dist/chains/solana/actions/redeem/SolanaRedeem.d.ts.map +1 -0
  38. package/dist/chains/solana/actions/redeem/config/index.d.ts +8 -0
  39. package/dist/chains/solana/actions/redeem/config/index.d.ts.map +1 -0
  40. package/dist/chains/solana/actions/redeem/config/solana.d.ts +22 -0
  41. package/dist/chains/solana/actions/redeem/config/solana.d.ts.map +1 -0
  42. package/dist/chains/solana/actions/redeem/config/types.d.ts +35 -0
  43. package/dist/chains/solana/actions/redeem/config/types.d.ts.map +1 -0
  44. package/dist/chains/solana/actions/redeem/factory.d.ts +12 -0
  45. package/dist/chains/solana/actions/redeem/factory.d.ts.map +1 -0
  46. package/dist/chains/solana/actions/redeem/index.d.ts +9 -0
  47. package/dist/chains/solana/actions/redeem/index.d.ts.map +1 -0
  48. package/dist/chains/solana/actions/redeem/types.d.ts +52 -0
  49. package/dist/chains/solana/actions/redeem/types.d.ts.map +1 -0
  50. package/dist/chains/solana/utils.d.ts +15 -0
  51. package/dist/chains/solana/utils.d.ts.map +1 -0
  52. package/dist/chunks/BtcActions-BIBsbYIt.cjs +2 -0
  53. package/dist/chunks/BtcActions-BIBsbYIt.cjs.map +1 -0
  54. package/dist/chunks/{BtcActions-k-qs1uO0.js → BtcActions-Df41lbsb.js} +457 -414
  55. package/dist/chunks/BtcActions-Df41lbsb.js.map +1 -0
  56. package/dist/chunks/{EvmActions-B_dF42So.js → EvmActions-5lPqhRaM.js} +163 -173
  57. package/dist/chunks/EvmActions-5lPqhRaM.js.map +1 -0
  58. package/dist/chunks/EvmActions-BY_18gTg.cjs +2 -0
  59. package/dist/chunks/EvmActions-BY_18gTg.cjs.map +1 -0
  60. package/dist/chunks/ReferralsClient-Cmrjo9bN.cjs +2 -0
  61. package/dist/chunks/ReferralsClient-Cmrjo9bN.cjs.map +1 -0
  62. package/dist/chunks/{ReferralsClient-DbFWWtVi.js → ReferralsClient-DvEsA3II.js} +160 -160
  63. package/dist/chunks/ReferralsClient-DvEsA3II.js.map +1 -0
  64. package/dist/chunks/{api-config-CtcP3TVl.js → api-config-Dm6dR85f.js} +6 -6
  65. package/dist/chunks/{api-config-CtcP3TVl.js.map → api-config-Dm6dR85f.js.map} +1 -1
  66. package/dist/chunks/{approveLBTC-CZiZmdcX.cjs → approveLBTC-CUXEC3kw.cjs} +2 -2
  67. package/dist/chunks/{approveLBTC-CZiZmdcX.cjs.map → approveLBTC-CUXEC3kw.cjs.map} +1 -1
  68. package/dist/chunks/approveLBTC-Du2El1tW.js +26 -0
  69. package/dist/chunks/{approveLBTC-B5-ZWqct.js.map → approveLBTC-Du2El1tW.js.map} +1 -1
  70. package/dist/chunks/{array-Cev6kyLJ.js → array-DYttUPf5.js} +7 -7
  71. package/dist/chunks/{array-Cev6kyLJ.js.map → array-DYttUPf5.js.map} +1 -1
  72. package/dist/chunks/{blockchain-identifier-BzMQWh-C.cjs → blockchain-identifier-BTPGxLio.cjs} +2 -2
  73. package/dist/chunks/{blockchain-identifier-BzMQWh-C.cjs.map → blockchain-identifier-BTPGxLio.cjs.map} +1 -1
  74. package/dist/chunks/{blockchain-identifier-BmadkNtK.js → blockchain-identifier-CTVaEPpY.js} +24 -24
  75. package/dist/chunks/{blockchain-identifier-BmadkNtK.js.map → blockchain-identifier-CTVaEPpY.js.map} +1 -1
  76. package/dist/chunks/{bridge-CTsiodO1.js → bridge-DqGabhIY.js} +13 -13
  77. package/dist/chunks/{bridge-CTsiodO1.js.map → bridge-DqGabhIY.js.map} +1 -1
  78. package/dist/chunks/{bridge-BzRlY9pP.cjs → bridge-dWaKrMKm.cjs} +2 -2
  79. package/dist/chunks/{bridge-BzRlY9pP.cjs.map → bridge-dWaKrMKm.cjs.map} +1 -1
  80. package/dist/chunks/{config-hFKqUyg3.js → config-DghboRx0.js} +10 -10
  81. package/dist/chunks/{config-hFKqUyg3.js.map → config-DghboRx0.js.map} +1 -1
  82. package/dist/chunks/{config-l4ZaZw_g.cjs → config-DmCmanM_.cjs} +2 -2
  83. package/dist/chunks/{config-l4ZaZw_g.cjs.map → config-DmCmanM_.cjs.map} +1 -1
  84. package/dist/chunks/constants-D1FnS2Z8.js +6 -0
  85. package/dist/chunks/constants-D1FnS2Z8.js.map +1 -0
  86. package/dist/chunks/constants-ueShGH9R.cjs +2 -0
  87. package/dist/chunks/constants-ueShGH9R.cjs.map +1 -0
  88. package/dist/chunks/{defi-registry-BIRv_zkp.cjs → defi-registry-DDNavtO1.cjs} +2 -2
  89. package/dist/chunks/{defi-registry-BIRv_zkp.cjs.map → defi-registry-DDNavtO1.cjs.map} +1 -1
  90. package/dist/chunks/{defi-registry-wNFN3qyB.js → defi-registry-DxjjBQTV.js} +13 -13
  91. package/dist/chunks/{defi-registry-wNFN3qyB.js.map → defi-registry-DxjjBQTV.js.map} +1 -1
  92. package/dist/chunks/depositStatus-CFo5jW89.cjs +2 -0
  93. package/dist/chunks/depositStatus-CFo5jW89.cjs.map +1 -0
  94. package/dist/chunks/{depositStatus-DM7fRmbN.js → depositStatus-DTc01ZoZ.js} +63 -61
  95. package/dist/chunks/depositStatus-DTc01ZoZ.js.map +1 -0
  96. package/dist/chunks/events-6PV6NP-o.cjs +2 -0
  97. package/dist/chunks/events-6PV6NP-o.cjs.map +1 -0
  98. package/dist/chunks/{events-DdV_xi-2.js → events-BvRwXePq.js} +414 -303
  99. package/dist/chunks/events-BvRwXePq.js.map +1 -0
  100. package/dist/chunks/evm-by-btc-address-CZvE15lx.js +39 -0
  101. package/dist/chunks/{evm-by-btc-address-CwLiENtM.js.map → evm-by-btc-address-CZvE15lx.js.map} +1 -1
  102. package/dist/chunks/fee-requirements-CCNsxAvJ.js +14 -0
  103. package/dist/chunks/{fee-requirements-x8-8mpJ7.js.map → fee-requirements-CCNsxAvJ.js.map} +1 -1
  104. package/dist/chunks/get-exchange-ratio-B-xzYND1.js +20 -0
  105. package/dist/chunks/{get-exchange-ratio-NtnkG1kZ.js.map → get-exchange-ratio-B-xzYND1.js.map} +1 -1
  106. package/dist/chunks/{get-exchange-ratio-C-7DadfD.cjs → get-exchange-ratio-BEhD4gLB.cjs} +2 -2
  107. package/dist/chunks/{get-exchange-ratio-C-7DadfD.cjs.map → get-exchange-ratio-BEhD4gLB.cjs.map} +1 -1
  108. package/dist/chunks/{get-positions-summary-DkZZYbGP.cjs → get-positions-summary-Dh1QPLYO.cjs} +2 -2
  109. package/dist/chunks/{get-positions-summary-DkZZYbGP.cjs.map → get-positions-summary-Dh1QPLYO.cjs.map} +1 -1
  110. package/dist/chunks/{get-positions-summary-B_MmGHLv.js → get-positions-summary-iYshN1RQ.js} +28 -28
  111. package/dist/chunks/{get-positions-summary-B_MmGHLv.js.map → get-positions-summary-iYshN1RQ.js.map} +1 -1
  112. package/dist/chunks/{get-vault-tvl-YAXePAW3.js → get-vault-tvl-Ct_Zkg7C.js} +41 -41
  113. package/dist/chunks/{get-vault-tvl-YAXePAW3.js.map → get-vault-tvl-Ct_Zkg7C.js.map} +1 -1
  114. package/dist/chunks/{get-vault-tvl-DmTUbOY7.cjs → get-vault-tvl-D_tQIDAs.cjs} +2 -2
  115. package/dist/chunks/{get-vault-tvl-DmTUbOY7.cjs.map → get-vault-tvl-D_tQIDAs.cjs.map} +1 -1
  116. package/dist/chunks/{get-vault-withdrawals-CWcYy_sH.cjs → get-vault-withdrawals-8ALlEiAC.cjs} +2 -2
  117. package/dist/chunks/{get-vault-withdrawals-CWcYy_sH.cjs.map → get-vault-withdrawals-8ALlEiAC.cjs.map} +1 -1
  118. package/dist/chunks/get-vault-withdrawals-jk7Sv4S4.js +161 -0
  119. package/dist/chunks/{get-vault-withdrawals-BrpZlt6s.js.map → get-vault-withdrawals-jk7Sv4S4.js.map} +1 -1
  120. package/dist/chunks/{getSharesByAddress-BEgOf1C0.cjs → getSharesByAddress-D8hehnP1.cjs} +2 -2
  121. package/dist/chunks/{getSharesByAddress-BEgOf1C0.cjs.map → getSharesByAddress-D8hehnP1.cjs.map} +1 -1
  122. package/dist/chunks/{getSharesByAddress-BiruCDp6.js → getSharesByAddress-_tBaIBsw.js} +38 -38
  123. package/dist/chunks/{getSharesByAddress-BiruCDp6.js.map → getSharesByAddress-_tBaIBsw.js.map} +1 -1
  124. package/dist/chunks/getUserStakeAndBakeSignature-CSEyzgMc.cjs +2 -0
  125. package/dist/chunks/getUserStakeAndBakeSignature-CSEyzgMc.cjs.map +1 -0
  126. package/dist/chunks/getUserStakeAndBakeSignature-Su-k10ap.js +125 -0
  127. package/dist/chunks/getUserStakeAndBakeSignature-Su-k10ap.js.map +1 -0
  128. package/dist/chunks/lbtc-addresses-D8MYCdsx.js +10 -0
  129. package/dist/chunks/{lbtc-addresses-BLRmtR3c.js.map → lbtc-addresses-D8MYCdsx.js.map} +1 -1
  130. package/dist/chunks/{lbtc-addresses-xyTYV7hx.cjs → lbtc-addresses-Kil252DX.cjs} +2 -2
  131. package/dist/chunks/{lbtc-addresses-xyTYV7hx.cjs.map → lbtc-addresses-Kil252DX.cjs.map} +1 -1
  132. package/dist/chunks/numbers-CclN2Ohk.js +15 -0
  133. package/dist/chunks/{numbers-CM-lcmt4.js.map → numbers-CclN2Ohk.js.map} +1 -1
  134. package/dist/chunks/parameters-C_16L5ft.js +11 -0
  135. package/dist/chunks/{parameters-CDV-6Hk5.js.map → parameters-C_16L5ft.js.map} +1 -1
  136. package/dist/chunks/satoshi-CSoJBXc6.js +19 -0
  137. package/dist/chunks/{satoshi-Ch6y8aYG.js.map → satoshi-CSoJBXc6.js.map} +1 -1
  138. package/dist/chunks/{statusConstants-DFxMrVob.js → statusConstants-C4YNx2q0.js} +1134 -1113
  139. package/dist/chunks/statusConstants-C4YNx2q0.js.map +1 -0
  140. package/dist/chunks/statusConstants-DlM2oPfW.cjs +2 -0
  141. package/dist/chunks/statusConstants-DlM2oPfW.cjs.map +1 -0
  142. package/dist/chunks/{storeNetworkFeeSignature-BZGL2Zn_.js → storeNetworkFeeSignature-BODIpq3Y.js} +26 -26
  143. package/dist/chunks/{storeNetworkFeeSignature-BZGL2Zn_.js.map → storeNetworkFeeSignature-BODIpq3Y.js.map} +1 -1
  144. package/dist/chunks/{storeNetworkFeeSignature-D7yo6lDV.cjs → storeNetworkFeeSignature-Buk4091C.cjs} +2 -2
  145. package/dist/chunks/{storeNetworkFeeSignature-D7yo6lDV.cjs.map → storeNetworkFeeSignature-Buk4091C.cjs.map} +1 -1
  146. package/dist/chunks/time-Sa5gggPG.js +24 -0
  147. package/dist/chunks/{time-QPeEEEnQ.js.map → time-Sa5gggPG.js.map} +1 -1
  148. package/dist/chunks/{token-addresses-FKpA3uc4.js → token-addresses-D0v5cR1j.js} +174 -163
  149. package/dist/chunks/{token-addresses-FKpA3uc4.js.map → token-addresses-D0v5cR1j.js.map} +1 -1
  150. package/dist/chunks/{token-addresses-DRBecUa7.cjs → token-addresses-nzvTOi24.cjs} +2 -2
  151. package/dist/chunks/{token-addresses-DRBecUa7.cjs.map → token-addresses-nzvTOi24.cjs.map} +1 -1
  152. package/dist/chunks/{tokens-D_HeVB5p.cjs → tokens-BkvA0Gp1.cjs} +2 -2
  153. package/dist/chunks/{tokens-D_HeVB5p.cjs.map → tokens-BkvA0Gp1.cjs.map} +1 -1
  154. package/dist/chunks/{tokens-C6qZHzph.js → tokens-DgC1hfkm.js} +18 -18
  155. package/dist/chunks/{tokens-C6qZHzph.js.map → tokens-DgC1hfkm.js.map} +1 -1
  156. package/dist/chunks/{unstakeLBTC-H0zdYQa6.cjs → unstakeLBTC-CmoCaGX9.cjs} +2 -2
  157. package/dist/chunks/{unstakeLBTC-H0zdYQa6.cjs.map → unstakeLBTC-CmoCaGX9.cjs.map} +1 -1
  158. package/dist/chunks/{unstakeLBTC-DAIR9NO_.js → unstakeLBTC-DtvVbpbU.js} +50 -50
  159. package/dist/chunks/{unstakeLBTC-DAIR9NO_.js.map → unstakeLBTC-DtvVbpbU.js.map} +1 -1
  160. package/dist/chunks/{withdraw-hHueI2p7.js → withdraw-DgjuaUN3.js} +45 -45
  161. package/dist/chunks/{withdraw-hHueI2p7.js.map → withdraw-DgjuaUN3.js.map} +1 -1
  162. package/dist/chunks/{withdraw-C1fMFSwy.cjs → withdraw-i0AueZ_C.cjs} +2 -2
  163. package/dist/chunks/{withdraw-C1fMFSwy.cjs.map → withdraw-i0AueZ_C.cjs.map} +1 -1
  164. package/dist/common/constants.d.ts +1 -0
  165. package/dist/common/constants.d.ts.map +1 -1
  166. package/dist/contracts.cjs +1 -1
  167. package/dist/contracts.js +16 -16
  168. package/dist/core/assets/catalog.d.ts.map +1 -1
  169. package/dist/core.cjs +1 -1
  170. package/dist/core.js +85 -85
  171. package/dist/debug.js +4 -4
  172. package/dist/defi.cjs +1 -1
  173. package/dist/defi.js +10 -10
  174. package/dist/evm.cjs +1 -1
  175. package/dist/evm.js +34 -34
  176. package/dist/index.cjs +1 -1
  177. package/dist/index.d.ts +2 -1
  178. package/dist/index.d.ts.map +1 -1
  179. package/dist/index.js +287 -283
  180. package/dist/index.js.map +1 -1
  181. package/dist/metrics.cjs +1 -1
  182. package/dist/metrics.js +6 -6
  183. package/dist/shared/deposits/depositStatus.d.ts +9 -5
  184. package/dist/shared/deposits/depositStatus.d.ts.map +1 -1
  185. package/dist/stories/arg-types.d.ts +1 -0
  186. package/dist/stories/arg-types.d.ts.map +1 -1
  187. package/dist/tokens/token-addresses.d.ts +2 -2
  188. package/dist/tokens/token-addresses.d.ts.map +1 -1
  189. package/dist/utils/chain.d.ts +7 -0
  190. package/dist/utils/chain.d.ts.map +1 -1
  191. package/dist/utils.cjs +1 -1
  192. package/dist/utils.js +76 -76
  193. package/dist/vaults.cjs +1 -1
  194. package/dist/vaults.js +14 -14
  195. package/package.json +19 -6
  196. package/dist/chunks/BtcActions-XbVRQEcM.cjs +0 -2
  197. package/dist/chunks/BtcActions-XbVRQEcM.cjs.map +0 -1
  198. package/dist/chunks/BtcActions-k-qs1uO0.js.map +0 -1
  199. package/dist/chunks/EvmActions-BVzQ3fLK.cjs +0 -2
  200. package/dist/chunks/EvmActions-BVzQ3fLK.cjs.map +0 -1
  201. package/dist/chunks/EvmActions-B_dF42So.js.map +0 -1
  202. package/dist/chunks/ReferralsClient-BC-1wT1q.cjs +0 -2
  203. package/dist/chunks/ReferralsClient-BC-1wT1q.cjs.map +0 -1
  204. package/dist/chunks/ReferralsClient-DbFWWtVi.js.map +0 -1
  205. package/dist/chunks/approveLBTC-B5-ZWqct.js +0 -26
  206. package/dist/chunks/constants-BBK-JNcY.cjs +0 -2
  207. package/dist/chunks/constants-BBK-JNcY.cjs.map +0 -1
  208. package/dist/chunks/constants-CuT4axsy.js +0 -5
  209. package/dist/chunks/constants-CuT4axsy.js.map +0 -1
  210. package/dist/chunks/depositStatus-C3-EgT2a.cjs +0 -2
  211. package/dist/chunks/depositStatus-C3-EgT2a.cjs.map +0 -1
  212. package/dist/chunks/depositStatus-DM7fRmbN.js.map +0 -1
  213. package/dist/chunks/events-DdV_xi-2.js.map +0 -1
  214. package/dist/chunks/events-DqIJRzJo.cjs +0 -2
  215. package/dist/chunks/events-DqIJRzJo.cjs.map +0 -1
  216. package/dist/chunks/evm-by-btc-address-CwLiENtM.js +0 -39
  217. package/dist/chunks/fee-requirements-x8-8mpJ7.js +0 -14
  218. package/dist/chunks/get-exchange-ratio-NtnkG1kZ.js +0 -20
  219. package/dist/chunks/get-vault-withdrawals-BrpZlt6s.js +0 -161
  220. package/dist/chunks/getUserStakeAndBakeSignature-BxRq2cI1.cjs +0 -2
  221. package/dist/chunks/getUserStakeAndBakeSignature-BxRq2cI1.cjs.map +0 -1
  222. package/dist/chunks/getUserStakeAndBakeSignature-NGGblnJl.js +0 -120
  223. package/dist/chunks/getUserStakeAndBakeSignature-NGGblnJl.js.map +0 -1
  224. package/dist/chunks/lbtc-addresses-BLRmtR3c.js +0 -10
  225. package/dist/chunks/numbers-CM-lcmt4.js +0 -15
  226. package/dist/chunks/parameters-CDV-6Hk5.js +0 -11
  227. package/dist/chunks/satoshi-Ch6y8aYG.js +0 -19
  228. package/dist/chunks/statusConstants-BLiNBT6s.cjs +0 -2
  229. package/dist/chunks/statusConstants-BLiNBT6s.cjs.map +0 -1
  230. package/dist/chunks/statusConstants-DFxMrVob.js.map +0 -1
  231. package/dist/chunks/time-QPeEEEnQ.js +0 -24
@@ -1,14 +0,0 @@
1
- const n = [
2
- 1,
3
- // Ethereum mainnet
4
- 11155111
5
- // Sepolia (testnet/stage)
6
- ];
7
- function r(e) {
8
- return n.includes(e);
9
- }
10
- export {
11
- n as A,
12
- r
13
- };
14
- //# sourceMappingURL=fee-requirements-x8-8mpJ7.js.map
@@ -1,20 +0,0 @@
1
- import m from "axios";
2
- import e from "bignumber.js";
3
- import { g as c } from "./api-config-CtcP3TVl.js";
4
- import { R as k, o as p } from "./token-addresses-FKpA3uc4.js";
5
- const g = [p.LBTC];
6
- async function B({ env: n }) {
7
- const { baseApiUrl: a } = c(n), i = `${a}/api/v1/ratio`, { data: r } = await m.get(i);
8
- return r.token_ratio.map((o) => ({
9
- token: k[o.name],
10
- tokenBTCRatio: e(o.ratio),
11
- BTCTokenRatio: e(o.price)
12
- })).filter((o) => g.includes(o.token)).reduce((o, t) => {
13
- const { token: f, ...s } = t;
14
- return o[t.token] = s, o;
15
- }, {});
16
- }
17
- export {
18
- B as g
19
- };
20
- //# sourceMappingURL=get-exchange-ratio-NtnkG1kZ.js.map
@@ -1,161 +0,0 @@
1
- import g from "axios";
2
- import { g as S } from "./api-config-CtcP3TVl.js";
3
- import { d as U, f as i } from "./tokens-C6qZHzph.js";
4
- import { u as C, o } from "./array-Cev6kyLJ.js";
5
- import { e as n } from "./time-QPeEEEnQ.js";
6
- import { a as T, b as F, c as H, d as W } from "./config-hFKqUyg3.js";
7
- const B = {
8
- cancelled_requests: [],
9
- expired_requests: [],
10
- fulfilled_requests: [],
11
- open_requests: []
12
- }, N = (a) => a ? "Response" in a ? N(a.Response) : {
13
- cancelled_requests: a.cancelled_requests ?? [],
14
- expired_requests: a.expired_requests ?? [],
15
- fulfilled_requests: a.fulfilled_requests ?? [],
16
- open_requests: a.open_requests ?? []
17
- } : B;
18
- async function D({
19
- account: a,
20
- chainId: r,
21
- vaultKey: c = T.Veda,
22
- rpcUrl: u,
23
- env: p
24
- }) {
25
- const l = H[c];
26
- if (!l)
27
- throw new Error(`Unknown vault key: ${c}`);
28
- if (!F(r))
29
- throw new Error(
30
- `Unsupported chain id: ${r}. Please switch to one of the supported chains: ${l.chains.join(", ")}`
31
- );
32
- const f = W[r], { bffApiUrl: m } = S(p);
33
- if (!m)
34
- throw new Error(
35
- `Could not determine API endpoint for provided environment: ${p}`
36
- );
37
- const h = `${m}/sevenseas-api/withdraw-requests/${f}/${l.vaultContract.address}/${a}`, w = new URLSearchParams({
38
- historical: "true"
39
- }), t = `${h}?${w.toString()}`, { data: A } = await g.get(t), q = N(A), _ = q.cancelled_requests ?? [], k = q.expired_requests ?? [], x = q.fulfilled_requests ?? [], R = q.open_requests ?? [], P = C([
40
- ..._.map((e) => n(e.wantToken)),
41
- ...k.map((e) => n(e.wantToken)),
42
- ...x.map((e) => n(e.Request.wantToken)),
43
- ...R.map((e) => n(e.wantToken))
44
- ]), d = {};
45
- for (const e of P) {
46
- const s = await U(e, r, u);
47
- s ? d[e] = {
48
- address: s.address,
49
- decimals: s.decimals,
50
- symbol: s.symbol
51
- } : d[e] = void 0;
52
- }
53
- const $ = _.map((e) => {
54
- const s = d[n(e.wantToken)];
55
- return {
56
- amount: void 0,
57
- blockNumber: e.blockNumber,
58
- deadline: e.deadline,
59
- shareAmount: i(e.amount, l.decimals),
60
- timestamp: e.timestamp,
61
- txHash: n(e.transactionHash),
62
- token: s,
63
- chainId: r,
64
- toAddress: a
65
- };
66
- }), v = k.map((e) => {
67
- const s = d[n(e.wantToken)];
68
- return {
69
- amount: void 0,
70
- blockNumber: e.blockNumber,
71
- deadline: e.deadline,
72
- shareAmount: i(e.amount, l.decimals),
73
- timestamp: e.timestamp,
74
- txHash: n(e.transactionHash),
75
- token: s,
76
- chainId: r,
77
- toAddress: a
78
- };
79
- }), E = x.map((e) => {
80
- const s = d[n(e.Request.wantToken)];
81
- return {
82
- amount: i(
83
- e.Fulfillment.wantAmountReceived,
84
- (s == null ? void 0 : s.decimals) || 0
85
- ),
86
- blockNumber: e.Request.blockNumber,
87
- deadline: e.Request.deadline,
88
- shareAmount: i(
89
- e.Fulfillment.offerAmountSpent,
90
- l.decimals
91
- ),
92
- timestamp: e.Request.timestamp,
93
- txHash: n(e.Request.transactionHash),
94
- token: s,
95
- fulfilledBlockNumber: e.Fulfillment.blockNumber,
96
- fulfilledTimestamp: e.Fulfillment.timestamp,
97
- fulfilledTxHash: n(e.Fulfillment.transactionHash),
98
- minPrice: i(e.Request.minPrice, (s == null ? void 0 : s.decimals) || 0),
99
- chainId: r,
100
- toAddress: a
101
- };
102
- }), V = R.map((e) => {
103
- const s = d[n(e.wantToken)];
104
- return {
105
- amount: void 0,
106
- blockNumber: e.blockNumber,
107
- deadline: e.deadline,
108
- shareAmount: i(e.amount, l.decimals),
109
- timestamp: e.timestamp,
110
- txHash: n(e.transactionHash),
111
- token: s,
112
- minPrice: i(e.minPrice, (s == null ? void 0 : s.decimals) || 0),
113
- chainId: r,
114
- toAddress: a
115
- };
116
- });
117
- return {
118
- cancelled: o($, (e) => e.timestamp, "desc"),
119
- expired: o(v, (e) => e.timestamp, "desc"),
120
- fulfilled: o(
121
- E,
122
- (e) => e.fulfilledTimestamp || e.timestamp,
123
- "desc"
124
- ),
125
- open: o(V, (e) => e.timestamp, "desc")
126
- };
127
- }
128
- async function G({
129
- account: a,
130
- vaultKey: r = T.Veda,
131
- rpcUrl: c
132
- }) {
133
- const u = H[r];
134
- if (!u)
135
- throw new Error(`Unknown vault key: ${r}`);
136
- const p = u.chains.map(
137
- (t) => D({ account: a, chainId: t, vaultKey: r, rpcUrl: c }).catch((A) => (console.error(`Failed to fetch withdrawals for chain ${t}:`, A), {
138
- cancelled: [],
139
- expired: [],
140
- fulfilled: [],
141
- open: []
142
- }))
143
- ), l = await Promise.all(p), f = [], m = [], h = [], w = [];
144
- for (const t of l)
145
- f.push(...t.cancelled), m.push(...t.expired), h.push(...t.fulfilled), w.push(...t.open);
146
- return {
147
- cancelled: o(f, (t) => t.timestamp, "desc"),
148
- expired: o(m, (t) => t.timestamp, "desc"),
149
- fulfilled: o(
150
- h,
151
- (t) => t.fulfilledTimestamp || t.timestamp,
152
- "desc"
153
- ),
154
- open: o(w, (t) => t.timestamp, "desc")
155
- };
156
- }
157
- export {
158
- G as a,
159
- D as g
160
- };
161
- //# sourceMappingURL=get-vault-withdrawals-BrpZlt6s.js.map
@@ -1,2 +0,0 @@
1
- "use strict";const A=require("axios"),w=require("viem"),T=require("./api-config-DkXqqfCK.cjs"),o=require("./blockchain-identifier-BzMQWh-C.cjs"),n=require("./token-addresses-DRBecUa7.cjs"),c=require("./tokens-D_HeVB5p.cjs"),S="sanctioned_address",I="api/v1/address/generate",b="destination address is under sanctions",f=[n.Token.LBTC,n.Token.BTCK,n.Token.BTCb],m=[n.Token.LBTC,n.Token.BTCK,n.Token.BTCb];async function N({address:s,token:t=n.Token.LBTC,chainId:a,signature:d,eip712Data:e,env:i,referrerCode:l,partnerId:C,captchaToken:E,signatureData:h,pubKey:g}){const{baseApiUrl:B}=T.getApiConfig(i),u=o.getChainNameById(a);if(!m.includes(t))throw new Error(`Unsupported token: ${t}`);let k={};if(u===o.BlockchainIdentifier.starknet){if(s=w.pad(s,{size:32}),!g)throw new Error("Missing parameter: pubKey");k={public_key:g}}let p={};try{f.includes(t)&&![o.BlockchainIdentifier.sui,o.BlockchainIdentifier.solana,o.BlockchainIdentifier.starknet].includes(u)&&(p={token_address:(await c.getTokenContractInfo(t,a,i,n.AddressKind.Adapter)).address})}catch(r){if(r instanceof Error&&r instanceof c.TokenContractAddressNotFoundError&&f.includes(t))throw new Error(`Unable to generate BTC deposit address for given token: ${t} in ${a}, reason: ${r.message}`)}const D={to_address:s,to_address_signature:d,to_chain:u,partner_id:C,nonce:0,captcha:E,referrer_code:l,eip_712_data:e,sb_signature_data:h,...p,...k};try{const{data:r}=await A.post(I,D,{baseURL:B});return r.address}catch(r){const _=c.getErrorMessage(r);if(U(_))return S;throw new Error(_)}}function U(s){return s.includes(b)}async function R({userDestinationAddress:s,chainId:t,env:a}){const{baseApiUrl:d}=T.getApiConfig(a);try{const{data:e}=await A.get(`${d}/api/v1/claimer/get-user-stake-and-bake-signature`,{params:{userDestinationAddress:s,chainId:t.toString()}});return{userDestinationAddress:e.user_destination_address,signature:e.signature,expirationDate:e.expiration_date,depositAmount:e.deposit_amount,chainId:e.chain_id,nonce:e.nonce}}catch(e){const i=c.getErrorMessage(e);throw new Error(`Failed to get user stake and bake signature: ${i}`)}}exports.SANCTIONED_ADDRESS=S;exports.generateDepositBtcAddress=N;exports.getUserStakeAndBakeSignature=R;
2
- //# sourceMappingURL=getUserStakeAndBakeSignature-BxRq2cI1.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getUserStakeAndBakeSignature-BxRq2cI1.cjs","sources":["../../src/api-functions/generateDepositBtcAddress/generateDepositBtcAddress.ts","../../src/api-functions/getUserStakeAndBakeSignature/getUserStakeAndBakeSignature.ts"],"sourcesContent":["import axios from 'axios';\nimport { Address, pad } from 'viem';\n\nimport { getApiConfig } from '../../common/api-config';\nimport {\n BlockchainIdentifier,\n getChainNameById,\n} from '../../common/blockchain-identifier';\nimport type {\n ChainId,\n SolanaChain,\n StarknetChainId,\n SuiChain,\n} from '../../common/chains';\nimport type { IEnvParam } from '../../common/parameters';\nimport { AddressKind, Token } from '../../tokens/token-addresses';\nimport { getTokenContractInfo } from '../../tokens/tokens';\nimport {\n getErrorMessage,\n TokenContractAddressNotFoundError,\n} from '../../utils/err';\n\n/**\n * The address which will be returned if the provided EVM address is sanctioned.\n */\nexport const SANCTIONED_ADDRESS = 'sanctioned_address';\nconst ADDRESS_URL = 'api/v1/address/generate';\nconst SANCTIONS_MESSAGE = 'destination address is under sanctions';\n\ninterface IGenerateNewAddressResponse {\n address: string;\n}\n\nexport interface IGenerateDepositBtcAddressParams extends IEnvParam {\n /**\n * The destination EVM user address where LBTC will be claimed.\n */\n address: string;\n /**\n * The intended destination token, defaults to LBTC.\n */\n token?: Token;\n /**\n * The destination chain ID where LBTC will be claimed.\n */\n chainId: ChainId | SuiChain | SolanaChain | StarknetChainId;\n /**\n * The signature of the address. The signature is generated by signing the address using EVM wallet.\n */\n signature: string;\n /**\n * The typed data object used to generate the signature if using a network fee authorization signature.\n */\n eip712Data?: string;\n /**\n * The captcha token.\n */\n captchaToken?: string;\n /**\n * The referrer code.\n */\n referrerCode?: string;\n /**\n * The referral ID.\n */\n partnerId?: string;\n /**\n * The typed data object used to generate the signature if using a stake and bake feature.\n */\n signatureData?: string;\n\n /** The pubKey required for starknet addresses signatures. */\n pubKey?: string;\n}\n\nconst EXTRA_PARAMS_TOKENS = [Token.LBTC, Token.BTCK, Token.BTCb];\nconst SUPPORTED_TOKENS = [Token.LBTC, Token.BTCK, Token.BTCb];\n\n/**\n * Generates a BTC deposit address.\n *\n * If the provided EVM address is sanctioned, the function will return the `SANCTIONED_ADDRESS`.\n *\n * @param {IGenerateDepositBtcAddressParams} parameters - The parameters for generating the deposit address.\n * @param {string} parameters.address - The destination EVM user address where LBTC will be claimed.\n * @param {ChainId} parameters.chainId - The destination chain ID where LBTC will be claimed.\n * @param {string} parameters.signature - The signature of the address. The signature is generated by signing the address using EVM wallet.\n * @param {string} parameters.eip712Data - The typed data object used to generate the signature if using a network fee authorization signature.\n * @param {string} parameters.captchaToken - The captcha token.\n * @param {string} parameters.referrerCode - The referrer code.\n * @param {string} parameters.partnerId - The partner ID.\n * @param {string} parameters.signatureData - The typed data object used to generate the signature if using a stake and bake feature.\n * @param {Env} parameters.env - The optional environment identifier.\n *\n * @returns {Promise<string>} The generated deposit address.\n */\nexport async function generateDepositBtcAddress({\n address,\n token = Token.LBTC,\n chainId,\n signature,\n eip712Data,\n env,\n referrerCode,\n partnerId,\n captchaToken,\n signatureData,\n pubKey,\n}: IGenerateDepositBtcAddressParams): Promise<string> {\n const { baseApiUrl } = getApiConfig(env);\n const toChain = getChainNameById(chainId);\n\n if (!SUPPORTED_TOKENS.includes(token)) {\n throw new Error(`Unsupported token: ${token}`);\n }\n\n let additionalParams = {};\n if (toChain === BlockchainIdentifier.starknet) {\n address = pad(address as Address, { size: 32 });\n if (!pubKey) {\n throw new Error('Missing parameter: pubKey');\n }\n\n additionalParams = {\n public_key: pubKey,\n };\n }\n\n // TODO: Refactor\n // //primaryType: 'feeApproval', - NETWORK FEE\n // //primaryType: 'Permit', - STAKE AND BAKE\n // type generationFrom =\n // | 'network-fee'\n // | 'stake-and-bake'\n // | 'destination-address';\n\n // let generation: generationFrom = 'destination-address';\n // if (signatureData != null) {\n // try {\n // const typedData = JSON.parse(signatureData);\n // if (typedData?.primaryType === 'feeApproval') {\n // generation = 'network-fee';\n // } else if (typedData?.primaryType === 'Permit') {\n // generation = 'stake-and-bake';\n // }\n // } catch {\n // // NOOP\n // }\n // }\n\n /**\n * The deposit address generation requires additional fields for tokens other\n * than LBTC.\n */\n let tokenDataParams = {};\n try {\n if (\n EXTRA_PARAMS_TOKENS.includes(token) &&\n // FIXME: Refactor in order to pull in all token addresses from all supported networks to the sdk-common package.\n // FIXME: Then remove this clause prior two token model.\n !(\n [\n BlockchainIdentifier.sui,\n BlockchainIdentifier.solana,\n BlockchainIdentifier.starknet,\n ] as BlockchainIdentifier[]\n ).includes(toChain)\n ) {\n const tokenContractInfo = await getTokenContractInfo(\n token,\n chainId as ChainId,\n env,\n AddressKind.Adapter,\n );\n tokenDataParams = {\n token_address: tokenContractInfo.address,\n };\n }\n } catch (err) {\n if (\n err instanceof Error &&\n err instanceof TokenContractAddressNotFoundError &&\n EXTRA_PARAMS_TOKENS.includes(token)\n ) {\n throw new Error(\n `Unable to generate BTC deposit address for given token: ${token} in ${chainId}, reason: ${err.message}`,\n );\n }\n }\n\n // TODO: Refactor\n // const signatureDataRequestParams =\n // generation === 'network-fee'\n // ? {\n // eip_712_data: signatureData,\n // }\n // : generation === 'stake-and-bake'\n // ? { sb_signature_data: signatureData }\n // : {};\n\n const requestParams = {\n to_address: address,\n to_address_signature: signature,\n to_chain: toChain,\n partner_id: partnerId,\n nonce: 0,\n captcha: captchaToken,\n referrer_code: referrerCode,\n eip_712_data: eip712Data,\n sb_signature_data: signatureData,\n ...tokenDataParams,\n ...additionalParams,\n };\n\n try {\n const { data } = await axios.post<IGenerateNewAddressResponse>(\n ADDRESS_URL,\n requestParams,\n { baseURL: baseApiUrl },\n );\n\n return data.address;\n } catch (error) {\n const errorMsg = getErrorMessage(error);\n\n if (isSanctioned(errorMsg)) {\n return SANCTIONED_ADDRESS;\n }\n throw new Error(errorMsg);\n }\n}\n\nfunction isSanctioned(errorMsg: string): boolean {\n return errorMsg.includes(SANCTIONS_MESSAGE);\n}\n","import axios from 'axios';\n\nimport { getApiConfig } from '../../common/api-config';\nimport { ChainId } from '../../common/chains';\nimport { IEnvParam } from '../../common/parameters';\nimport { getErrorMessage } from '../../utils/err';\n\nexport interface IGetUserStakeAndBakeSignatureParams extends IEnvParam {\n /**\n * User's destination address\n */\n userDestinationAddress: string;\n /**\n * Chain ID\n */\n chainId: ChainId;\n}\n\nexport interface IGetUserStakeAndBakeSignatureResponse {\n /**\n * The user's destination address\n */\n userDestinationAddress: string;\n /**\n * The signature (may be empty if signature exists but not returned)\n */\n signature: string;\n /**\n * The expiration date\n */\n expirationDate: string;\n /**\n * The deposit amount\n */\n depositAmount: string;\n /**\n * The chain ID\n */\n chainId: string;\n /**\n * The nonce (increments with each new signature)\n */\n nonce?: string;\n}\n\ninterface IGetUserStakeAndBakeSignatureAPIResponse {\n user_destination_address: string;\n signature: string;\n expiration_date: string;\n deposit_amount: string;\n chain_id: string;\n nonce?: string;\n}\n\n/**\n * Get user's stake and bake signature from the API\n *\n * @param {IGetUserStakeAndBakeSignatureParams} parameters - Parameters for getting the signature\n * @param {string} parameters.userDestinationAddress - The destination account address.\n * @param {ChainId} parameters.chainId - The chain id.\n * @param {Env} parameters.env - The optional environment identifier.\n *\n * @returns {Promise<IGetUserStakeAndBakeSignatureResponse>} Promise that resolves to the signature response\n */\nexport async function getUserStakeAndBakeSignature({\n userDestinationAddress,\n chainId,\n env,\n}: IGetUserStakeAndBakeSignatureParams): Promise<IGetUserStakeAndBakeSignatureResponse> {\n const { baseApiUrl } = getApiConfig(env);\n\n try {\n const { data } = await axios.get<IGetUserStakeAndBakeSignatureAPIResponse>(\n `${baseApiUrl}/api/v1/claimer/get-user-stake-and-bake-signature`,\n {\n params: {\n userDestinationAddress,\n chainId: chainId.toString(),\n },\n },\n );\n\n return {\n userDestinationAddress: data.user_destination_address,\n signature: data.signature,\n expirationDate: data.expiration_date,\n depositAmount: data.deposit_amount,\n chainId: data.chain_id,\n nonce: data.nonce,\n };\n } catch (error) {\n const errorMessage = getErrorMessage(error);\n throw new Error(\n `Failed to get user stake and bake signature: ${errorMessage}`,\n );\n }\n}\n"],"names":["SANCTIONED_ADDRESS","ADDRESS_URL","SANCTIONS_MESSAGE","EXTRA_PARAMS_TOKENS","Token","SUPPORTED_TOKENS","generateDepositBtcAddress","address","token","chainId","signature","eip712Data","env","referrerCode","partnerId","captchaToken","signatureData","pubKey","baseApiUrl","getApiConfig","toChain","getChainNameById","additionalParams","BlockchainIdentifier","pad","tokenDataParams","getTokenContractInfo","AddressKind","err","TokenContractAddressNotFoundError","requestParams","data","axios","error","errorMsg","getErrorMessage","isSanctioned","getUserStakeAndBakeSignature","userDestinationAddress","errorMessage"],"mappings":"gOAyBaA,EAAqB,qBAC5BC,EAAc,0BACdC,EAAoB,yCAgDpBC,EAAsB,CAACC,EAAAA,MAAM,KAAMA,EAAAA,MAAM,KAAMA,EAAAA,MAAM,IAAI,EACzDC,EAAmB,CAACD,EAAAA,MAAM,KAAMA,EAAAA,MAAM,KAAMA,EAAAA,MAAM,IAAI,EAoB5D,eAAsBE,EAA0B,CAC9C,QAAAC,EACA,MAAAC,EAAQJ,EAAAA,MAAM,KACd,QAAAK,EACA,UAAAC,EACA,WAAAC,EACA,IAAAC,EACA,aAAAC,EACA,UAAAC,EACA,aAAAC,EACA,cAAAC,EACA,OAAAC,CACF,EAAsD,CACpD,KAAM,CAAE,WAAAC,CAAA,EAAeC,EAAAA,aAAaP,CAAG,EACjCQ,EAAUC,EAAAA,iBAAiBZ,CAAO,EAExC,GAAI,CAACJ,EAAiB,SAASG,CAAK,EAClC,MAAM,IAAI,MAAM,sBAAsBA,CAAK,EAAE,EAG/C,IAAIc,EAAmB,CAAA,EACvB,GAAIF,IAAYG,EAAAA,qBAAqB,SAAU,CAE7C,GADAhB,EAAUiB,EAAAA,IAAIjB,EAAoB,CAAE,KAAM,GAAI,EAC1C,CAACU,EACH,MAAM,IAAI,MAAM,2BAA2B,EAG7CK,EAAmB,CACjB,WAAYL,CAAA,CAEhB,CA4BA,IAAIQ,EAAkB,CAAA,EACtB,GAAI,CAEAtB,EAAoB,SAASK,CAAK,GAGlC,CACE,CACEe,EAAAA,qBAAqB,IACrBA,EAAAA,qBAAqB,OACrBA,uBAAqB,QAAA,EAEvB,SAASH,CAAO,IAQlBK,EAAkB,CAChB,eAPwB,MAAMC,EAAAA,qBAC9BlB,EACAC,EACAG,EACAe,cAAY,OAAA,GAGqB,OAAA,EAGvC,OAASC,EAAK,CACZ,GACEA,aAAe,OACfA,aAAeC,EAAAA,mCACf1B,EAAoB,SAASK,CAAK,EAElC,MAAM,IAAI,MACR,2DAA2DA,CAAK,OAAOC,CAAO,aAAamB,EAAI,OAAO,EAAA,CAG5G,CAYA,MAAME,EAAgB,CACpB,WAAYvB,EACZ,qBAAsBG,EACtB,SAAUU,EACV,WAAYN,EACZ,MAAO,EACP,QAASC,EACT,cAAeF,EACf,aAAcF,EACd,kBAAmBK,EACnB,GAAGS,EACH,GAAGH,CAAA,EAGL,GAAI,CACF,KAAM,CAAE,KAAAS,CAAA,EAAS,MAAMC,EAAM,KAC3B/B,EACA6B,EACA,CAAE,QAASZ,CAAA,CAAW,EAGxB,OAAOa,EAAK,OACd,OAASE,EAAO,CACd,MAAMC,EAAWC,EAAAA,gBAAgBF,CAAK,EAEtC,GAAIG,EAAaF,CAAQ,EACvB,OAAOlC,EAET,MAAM,IAAI,MAAMkC,CAAQ,CAC1B,CACF,CAEA,SAASE,EAAaF,EAA2B,CAC/C,OAAOA,EAAS,SAAShC,CAAiB,CAC5C,CC1KA,eAAsBmC,EAA6B,CACjD,uBAAAC,EACA,QAAA7B,EACA,IAAAG,CACF,EAAwF,CACtF,KAAM,CAAE,WAAAM,CAAA,EAAeC,EAAAA,aAAaP,CAAG,EAEvC,GAAI,CACF,KAAM,CAAE,KAAAmB,CAAA,EAAS,MAAMC,EAAM,IAC3B,GAAGd,CAAU,oDACb,CACE,OAAQ,CACN,uBAAAoB,EACA,QAAS7B,EAAQ,SAAA,CAAS,CAC5B,CACF,EAGF,MAAO,CACL,uBAAwBsB,EAAK,yBAC7B,UAAWA,EAAK,UAChB,eAAgBA,EAAK,gBACrB,cAAeA,EAAK,eACpB,QAASA,EAAK,SACd,MAAOA,EAAK,KAAA,CAEhB,OAASE,EAAO,CACd,MAAMM,EAAeJ,EAAAA,gBAAgBF,CAAK,EAC1C,MAAM,IAAI,MACR,gDAAgDM,CAAY,EAAA,CAEhE,CACF"}
@@ -1,120 +0,0 @@
1
- import m from "axios";
2
- import { pad as w } from "viem";
3
- import { g as A } from "./api-config-CtcP3TVl.js";
4
- import { c as B, B as i } from "./blockchain-identifier-BmadkNtK.js";
5
- import { o as s, A as b } from "./token-addresses-FKpA3uc4.js";
6
- import { b as D, T as N, g as S } from "./tokens-C6qZHzph.js";
7
- const U = "sanctioned_address", y = "api/v1/address/generate", I = "destination address is under sanctions", _ = [s.LBTC, s.BTCK, s.BTCb], R = [s.LBTC, s.BTCK, s.BTCb];
8
- async function v({
9
- address: a,
10
- token: e = s.LBTC,
11
- chainId: n,
12
- signature: d,
13
- eip712Data: r,
14
- env: o,
15
- referrerCode: T,
16
- partnerId: C,
17
- captchaToken: E,
18
- signatureData: l,
19
- pubKey: u
20
- }) {
21
- const { baseApiUrl: h } = A(o), c = B(n);
22
- if (!R.includes(e))
23
- throw new Error(`Unsupported token: ${e}`);
24
- let g = {};
25
- if (c === i.starknet) {
26
- if (a = w(a, { size: 32 }), !u)
27
- throw new Error("Missing parameter: pubKey");
28
- g = {
29
- public_key: u
30
- };
31
- }
32
- let p = {};
33
- try {
34
- _.includes(e) && // FIXME: Refactor in order to pull in all token addresses from all supported networks to the sdk-common package.
35
- // FIXME: Then remove this clause prior two token model.
36
- ![
37
- i.sui,
38
- i.solana,
39
- i.starknet
40
- ].includes(c) && (p = {
41
- token_address: (await D(
42
- e,
43
- n,
44
- o,
45
- b.Adapter
46
- )).address
47
- });
48
- } catch (t) {
49
- if (t instanceof Error && t instanceof N && _.includes(e))
50
- throw new Error(
51
- `Unable to generate BTC deposit address for given token: ${e} in ${n}, reason: ${t.message}`
52
- );
53
- }
54
- const k = {
55
- to_address: a,
56
- to_address_signature: d,
57
- to_chain: c,
58
- partner_id: C,
59
- nonce: 0,
60
- captcha: E,
61
- referrer_code: T,
62
- eip_712_data: r,
63
- sb_signature_data: l,
64
- ...p,
65
- ...g
66
- };
67
- try {
68
- const { data: t } = await m.post(
69
- y,
70
- k,
71
- { baseURL: h }
72
- );
73
- return t.address;
74
- } catch (t) {
75
- const f = S(t);
76
- if (M(f))
77
- return U;
78
- throw new Error(f);
79
- }
80
- }
81
- function M(a) {
82
- return a.includes(I);
83
- }
84
- async function F({
85
- userDestinationAddress: a,
86
- chainId: e,
87
- env: n
88
- }) {
89
- const { baseApiUrl: d } = A(n);
90
- try {
91
- const { data: r } = await m.get(
92
- `${d}/api/v1/claimer/get-user-stake-and-bake-signature`,
93
- {
94
- params: {
95
- userDestinationAddress: a,
96
- chainId: e.toString()
97
- }
98
- }
99
- );
100
- return {
101
- userDestinationAddress: r.user_destination_address,
102
- signature: r.signature,
103
- expirationDate: r.expiration_date,
104
- depositAmount: r.deposit_amount,
105
- chainId: r.chain_id,
106
- nonce: r.nonce
107
- };
108
- } catch (r) {
109
- const o = S(r);
110
- throw new Error(
111
- `Failed to get user stake and bake signature: ${o}`
112
- );
113
- }
114
- }
115
- export {
116
- U as S,
117
- F as a,
118
- v as g
119
- };
120
- //# sourceMappingURL=getUserStakeAndBakeSignature-NGGblnJl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getUserStakeAndBakeSignature-NGGblnJl.js","sources":["../../src/api-functions/generateDepositBtcAddress/generateDepositBtcAddress.ts","../../src/api-functions/getUserStakeAndBakeSignature/getUserStakeAndBakeSignature.ts"],"sourcesContent":["import axios from 'axios';\nimport { Address, pad } from 'viem';\n\nimport { getApiConfig } from '../../common/api-config';\nimport {\n BlockchainIdentifier,\n getChainNameById,\n} from '../../common/blockchain-identifier';\nimport type {\n ChainId,\n SolanaChain,\n StarknetChainId,\n SuiChain,\n} from '../../common/chains';\nimport type { IEnvParam } from '../../common/parameters';\nimport { AddressKind, Token } from '../../tokens/token-addresses';\nimport { getTokenContractInfo } from '../../tokens/tokens';\nimport {\n getErrorMessage,\n TokenContractAddressNotFoundError,\n} from '../../utils/err';\n\n/**\n * The address which will be returned if the provided EVM address is sanctioned.\n */\nexport const SANCTIONED_ADDRESS = 'sanctioned_address';\nconst ADDRESS_URL = 'api/v1/address/generate';\nconst SANCTIONS_MESSAGE = 'destination address is under sanctions';\n\ninterface IGenerateNewAddressResponse {\n address: string;\n}\n\nexport interface IGenerateDepositBtcAddressParams extends IEnvParam {\n /**\n * The destination EVM user address where LBTC will be claimed.\n */\n address: string;\n /**\n * The intended destination token, defaults to LBTC.\n */\n token?: Token;\n /**\n * The destination chain ID where LBTC will be claimed.\n */\n chainId: ChainId | SuiChain | SolanaChain | StarknetChainId;\n /**\n * The signature of the address. The signature is generated by signing the address using EVM wallet.\n */\n signature: string;\n /**\n * The typed data object used to generate the signature if using a network fee authorization signature.\n */\n eip712Data?: string;\n /**\n * The captcha token.\n */\n captchaToken?: string;\n /**\n * The referrer code.\n */\n referrerCode?: string;\n /**\n * The referral ID.\n */\n partnerId?: string;\n /**\n * The typed data object used to generate the signature if using a stake and bake feature.\n */\n signatureData?: string;\n\n /** The pubKey required for starknet addresses signatures. */\n pubKey?: string;\n}\n\nconst EXTRA_PARAMS_TOKENS = [Token.LBTC, Token.BTCK, Token.BTCb];\nconst SUPPORTED_TOKENS = [Token.LBTC, Token.BTCK, Token.BTCb];\n\n/**\n * Generates a BTC deposit address.\n *\n * If the provided EVM address is sanctioned, the function will return the `SANCTIONED_ADDRESS`.\n *\n * @param {IGenerateDepositBtcAddressParams} parameters - The parameters for generating the deposit address.\n * @param {string} parameters.address - The destination EVM user address where LBTC will be claimed.\n * @param {ChainId} parameters.chainId - The destination chain ID where LBTC will be claimed.\n * @param {string} parameters.signature - The signature of the address. The signature is generated by signing the address using EVM wallet.\n * @param {string} parameters.eip712Data - The typed data object used to generate the signature if using a network fee authorization signature.\n * @param {string} parameters.captchaToken - The captcha token.\n * @param {string} parameters.referrerCode - The referrer code.\n * @param {string} parameters.partnerId - The partner ID.\n * @param {string} parameters.signatureData - The typed data object used to generate the signature if using a stake and bake feature.\n * @param {Env} parameters.env - The optional environment identifier.\n *\n * @returns {Promise<string>} The generated deposit address.\n */\nexport async function generateDepositBtcAddress({\n address,\n token = Token.LBTC,\n chainId,\n signature,\n eip712Data,\n env,\n referrerCode,\n partnerId,\n captchaToken,\n signatureData,\n pubKey,\n}: IGenerateDepositBtcAddressParams): Promise<string> {\n const { baseApiUrl } = getApiConfig(env);\n const toChain = getChainNameById(chainId);\n\n if (!SUPPORTED_TOKENS.includes(token)) {\n throw new Error(`Unsupported token: ${token}`);\n }\n\n let additionalParams = {};\n if (toChain === BlockchainIdentifier.starknet) {\n address = pad(address as Address, { size: 32 });\n if (!pubKey) {\n throw new Error('Missing parameter: pubKey');\n }\n\n additionalParams = {\n public_key: pubKey,\n };\n }\n\n // TODO: Refactor\n // //primaryType: 'feeApproval', - NETWORK FEE\n // //primaryType: 'Permit', - STAKE AND BAKE\n // type generationFrom =\n // | 'network-fee'\n // | 'stake-and-bake'\n // | 'destination-address';\n\n // let generation: generationFrom = 'destination-address';\n // if (signatureData != null) {\n // try {\n // const typedData = JSON.parse(signatureData);\n // if (typedData?.primaryType === 'feeApproval') {\n // generation = 'network-fee';\n // } else if (typedData?.primaryType === 'Permit') {\n // generation = 'stake-and-bake';\n // }\n // } catch {\n // // NOOP\n // }\n // }\n\n /**\n * The deposit address generation requires additional fields for tokens other\n * than LBTC.\n */\n let tokenDataParams = {};\n try {\n if (\n EXTRA_PARAMS_TOKENS.includes(token) &&\n // FIXME: Refactor in order to pull in all token addresses from all supported networks to the sdk-common package.\n // FIXME: Then remove this clause prior two token model.\n !(\n [\n BlockchainIdentifier.sui,\n BlockchainIdentifier.solana,\n BlockchainIdentifier.starknet,\n ] as BlockchainIdentifier[]\n ).includes(toChain)\n ) {\n const tokenContractInfo = await getTokenContractInfo(\n token,\n chainId as ChainId,\n env,\n AddressKind.Adapter,\n );\n tokenDataParams = {\n token_address: tokenContractInfo.address,\n };\n }\n } catch (err) {\n if (\n err instanceof Error &&\n err instanceof TokenContractAddressNotFoundError &&\n EXTRA_PARAMS_TOKENS.includes(token)\n ) {\n throw new Error(\n `Unable to generate BTC deposit address for given token: ${token} in ${chainId}, reason: ${err.message}`,\n );\n }\n }\n\n // TODO: Refactor\n // const signatureDataRequestParams =\n // generation === 'network-fee'\n // ? {\n // eip_712_data: signatureData,\n // }\n // : generation === 'stake-and-bake'\n // ? { sb_signature_data: signatureData }\n // : {};\n\n const requestParams = {\n to_address: address,\n to_address_signature: signature,\n to_chain: toChain,\n partner_id: partnerId,\n nonce: 0,\n captcha: captchaToken,\n referrer_code: referrerCode,\n eip_712_data: eip712Data,\n sb_signature_data: signatureData,\n ...tokenDataParams,\n ...additionalParams,\n };\n\n try {\n const { data } = await axios.post<IGenerateNewAddressResponse>(\n ADDRESS_URL,\n requestParams,\n { baseURL: baseApiUrl },\n );\n\n return data.address;\n } catch (error) {\n const errorMsg = getErrorMessage(error);\n\n if (isSanctioned(errorMsg)) {\n return SANCTIONED_ADDRESS;\n }\n throw new Error(errorMsg);\n }\n}\n\nfunction isSanctioned(errorMsg: string): boolean {\n return errorMsg.includes(SANCTIONS_MESSAGE);\n}\n","import axios from 'axios';\n\nimport { getApiConfig } from '../../common/api-config';\nimport { ChainId } from '../../common/chains';\nimport { IEnvParam } from '../../common/parameters';\nimport { getErrorMessage } from '../../utils/err';\n\nexport interface IGetUserStakeAndBakeSignatureParams extends IEnvParam {\n /**\n * User's destination address\n */\n userDestinationAddress: string;\n /**\n * Chain ID\n */\n chainId: ChainId;\n}\n\nexport interface IGetUserStakeAndBakeSignatureResponse {\n /**\n * The user's destination address\n */\n userDestinationAddress: string;\n /**\n * The signature (may be empty if signature exists but not returned)\n */\n signature: string;\n /**\n * The expiration date\n */\n expirationDate: string;\n /**\n * The deposit amount\n */\n depositAmount: string;\n /**\n * The chain ID\n */\n chainId: string;\n /**\n * The nonce (increments with each new signature)\n */\n nonce?: string;\n}\n\ninterface IGetUserStakeAndBakeSignatureAPIResponse {\n user_destination_address: string;\n signature: string;\n expiration_date: string;\n deposit_amount: string;\n chain_id: string;\n nonce?: string;\n}\n\n/**\n * Get user's stake and bake signature from the API\n *\n * @param {IGetUserStakeAndBakeSignatureParams} parameters - Parameters for getting the signature\n * @param {string} parameters.userDestinationAddress - The destination account address.\n * @param {ChainId} parameters.chainId - The chain id.\n * @param {Env} parameters.env - The optional environment identifier.\n *\n * @returns {Promise<IGetUserStakeAndBakeSignatureResponse>} Promise that resolves to the signature response\n */\nexport async function getUserStakeAndBakeSignature({\n userDestinationAddress,\n chainId,\n env,\n}: IGetUserStakeAndBakeSignatureParams): Promise<IGetUserStakeAndBakeSignatureResponse> {\n const { baseApiUrl } = getApiConfig(env);\n\n try {\n const { data } = await axios.get<IGetUserStakeAndBakeSignatureAPIResponse>(\n `${baseApiUrl}/api/v1/claimer/get-user-stake-and-bake-signature`,\n {\n params: {\n userDestinationAddress,\n chainId: chainId.toString(),\n },\n },\n );\n\n return {\n userDestinationAddress: data.user_destination_address,\n signature: data.signature,\n expirationDate: data.expiration_date,\n depositAmount: data.deposit_amount,\n chainId: data.chain_id,\n nonce: data.nonce,\n };\n } catch (error) {\n const errorMessage = getErrorMessage(error);\n throw new Error(\n `Failed to get user stake and bake signature: ${errorMessage}`,\n );\n }\n}\n"],"names":["SANCTIONED_ADDRESS","ADDRESS_URL","SANCTIONS_MESSAGE","EXTRA_PARAMS_TOKENS","Token","SUPPORTED_TOKENS","generateDepositBtcAddress","address","token","chainId","signature","eip712Data","env","referrerCode","partnerId","captchaToken","signatureData","pubKey","baseApiUrl","getApiConfig","toChain","getChainNameById","additionalParams","BlockchainIdentifier","pad","tokenDataParams","getTokenContractInfo","AddressKind","err","TokenContractAddressNotFoundError","requestParams","data","axios","error","errorMsg","getErrorMessage","isSanctioned","getUserStakeAndBakeSignature","userDestinationAddress","errorMessage"],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import { p as r } from "./index-CfcQ_g3t.js";
2
- import { E as n } from "./token-addresses-FKpA3uc4.js";
3
- function c(t = r) {
4
- var o;
5
- return ((o = n) == null ? void 0 : o[t]) || {};
6
- }
7
- export {
8
- c as g
9
- };
10
- //# sourceMappingURL=lbtc-addresses-BLRmtR3c.js.map
@@ -1,15 +0,0 @@
1
- import t from "bignumber.js";
2
- t(0);
3
- t(1);
4
- function r(o) {
5
- const e = t(o);
6
- if (!e.isInteger())
7
- throw new Error(
8
- `toBigInt received non-integer value "${o}". Convert to base units first: use toSatoshi() for BTC or toBaseDenomination() for tokens.`
9
- );
10
- return BigInt(e.toFixed(0));
11
- }
12
- export {
13
- r as t
14
- };
15
- //# sourceMappingURL=numbers-CM-lcmt4.js.map
@@ -1,11 +0,0 @@
1
- function r(i) {
2
- return "provider" in i;
3
- }
4
- function n(i) {
5
- return "signer" in i;
6
- }
7
- export {
8
- n as a,
9
- r as i
10
- };
11
- //# sourceMappingURL=parameters-CDV-6Hk5.js.map
@@ -1,19 +0,0 @@
1
- import i from "bignumber.js";
2
- const n = 8, o = i(10).pow(n);
3
- function s(t) {
4
- return i(t).dividedBy(o);
5
- }
6
- function a(t) {
7
- return i(t).multipliedBy(o).decimalPlaces(0, i.ROUND_HALF_UP);
8
- }
9
- function e(t) {
10
- return BigInt(a(t).toFixed(0));
11
- }
12
- export {
13
- n as B,
14
- o as S,
15
- e as a,
16
- s as f,
17
- a as t
18
- };
19
- //# sourceMappingURL=satoshi-Ch6y8aYG.js.map