@ape.swap/bonds-sdk 6.3.0-test.69 → 7.0.0-test.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (995) hide show
  1. package/README.md +223 -131
  2. package/dist/adapters/all/index.d.ts +13 -0
  3. package/dist/adapters/all/index.js +15 -0
  4. package/dist/adapters/all/index.js.map +1 -0
  5. package/dist/adapters/aptos/ActionsAptos.d.ts +5 -0
  6. package/dist/{views/YourBondsModal/components/Actions → adapters/aptos}/ActionsAptos.js +14 -14
  7. package/dist/adapters/aptos/ActionsAptos.js.map +1 -0
  8. package/dist/adapters/aptos/AptosAccountBridge.d.ts +3 -0
  9. package/dist/adapters/aptos/AptosAccountBridge.js +12 -0
  10. package/dist/adapters/aptos/AptosAccountBridge.js.map +1 -0
  11. package/dist/{views/BuyBond → adapters/aptos}/BuyComponentAptos.js +11 -17
  12. package/dist/adapters/aptos/BuyComponentAptos.js.map +1 -0
  13. package/dist/adapters/aptos/ClaimAllActionAptos.d.ts +5 -0
  14. package/dist/adapters/aptos/ClaimAllActionAptos.js +73 -0
  15. package/dist/adapters/aptos/ClaimAllActionAptos.js.map +1 -0
  16. package/dist/{components/ConnectAptosWalletButton → adapters/aptos}/ConnectAptosWalletButton.d.ts +1 -1
  17. package/dist/{components/ConnectAptosWalletButton → adapters/aptos}/ConnectAptosWalletButton.js +4 -9
  18. package/dist/adapters/aptos/ConnectAptosWalletButton.js.map +1 -0
  19. package/dist/adapters/aptos/ConnectToAptosBanner.d.ts +1 -0
  20. package/dist/adapters/aptos/ConnectToAptosBanner.js +21 -0
  21. package/dist/adapters/aptos/ConnectToAptosBanner.js.map +1 -0
  22. package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/aptos}/TransferActionAptos.d.ts +2 -3
  23. package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/aptos}/TransferActionAptos.js +3 -3
  24. package/dist/adapters/aptos/TransferActionAptos.js.map +1 -0
  25. package/dist/adapters/aptos/UserBondRowAptos.d.ts +5 -0
  26. package/dist/adapters/aptos/UserBondRowAptos.js +108 -0
  27. package/dist/adapters/aptos/UserBondRowAptos.js.map +1 -0
  28. package/dist/{utils → adapters/aptos}/aptosHelpers.d.ts +3 -2
  29. package/dist/{utils → adapters/aptos}/aptosHelpers.js +4 -3
  30. package/dist/adapters/aptos/aptosHelpers.js.map +1 -0
  31. package/dist/{state/bonds/fetchBondsData → adapters/aptos}/fetchBondsDataAptos.d.ts +2 -2
  32. package/dist/{state/bonds/fetchBondsData → adapters/aptos}/fetchBondsDataAptos.js +4 -27
  33. package/dist/adapters/aptos/fetchBondsDataAptos.js.map +1 -0
  34. package/dist/{state/bonds/fetchUsersBonds → adapters/aptos}/fetchUsersBondsAptos.d.ts +2 -2
  35. package/dist/{state/bonds/fetchUsersBonds → adapters/aptos}/fetchUsersBondsAptos.js +8 -8
  36. package/dist/adapters/aptos/fetchUsersBondsAptos.js.map +1 -0
  37. package/dist/adapters/aptos/index.d.ts +6 -0
  38. package/dist/adapters/aptos/index.js +37 -0
  39. package/dist/adapters/aptos/index.js.map +1 -0
  40. package/dist/{hooks/accounts → adapters/aptos}/useAPTAccount.js +1 -1
  41. package/dist/{hooks/accounts → adapters/aptos}/useAPTAccount.js.map +1 -1
  42. package/dist/{state/zap → adapters/aptos}/useAptosZapQuote.js +2 -3
  43. package/dist/adapters/aptos/useAptosZapQuote.js.map +1 -0
  44. package/dist/{state/balance → adapters/aptos}/useCurrencyBalanceAptos.js +1 -1
  45. package/dist/adapters/aptos/useCurrencyBalanceAptos.js.map +1 -0
  46. package/dist/adapters/evm/Actions.d.ts +5 -0
  47. package/dist/{views/YourBondsModal/components/Actions → adapters/evm}/Actions.js +26 -21
  48. package/dist/adapters/evm/Actions.js.map +1 -0
  49. package/dist/adapters/evm/BuyComponent.d.ts +5 -0
  50. package/dist/{views/BuyBond → adapters/evm}/BuyComponent.js +57 -61
  51. package/dist/adapters/evm/BuyComponent.js.map +1 -0
  52. package/dist/adapters/evm/ClaimAllActionEVM.d.ts +5 -0
  53. package/dist/adapters/evm/ClaimAllActionEVM.js +60 -0
  54. package/dist/adapters/evm/ClaimAllActionEVM.js.map +1 -0
  55. package/dist/adapters/evm/ConnectToEvmBanner.d.ts +1 -0
  56. package/dist/adapters/evm/ConnectToEvmBanner.js +12 -0
  57. package/dist/adapters/evm/ConnectToEvmBanner.js.map +1 -0
  58. package/dist/adapters/evm/EvmAccountBridge.d.ts +6 -0
  59. package/dist/adapters/evm/EvmAccountBridge.js +15 -0
  60. package/dist/adapters/evm/EvmAccountBridge.js.map +1 -0
  61. package/dist/{views/TransactionModal → adapters/evm}/TransactionModal.d.ts +2 -3
  62. package/dist/adapters/evm/TransactionModal.js +167 -0
  63. package/dist/adapters/evm/TransactionModal.js.map +1 -0
  64. package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/evm}/TransferAction.d.ts +2 -3
  65. package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/evm}/TransferAction.js +14 -12
  66. package/dist/adapters/evm/TransferAction.js.map +1 -0
  67. package/dist/adapters/evm/UserBondRow.d.ts +5 -0
  68. package/dist/adapters/evm/UserBondRow.js +138 -0
  69. package/dist/adapters/evm/UserBondRow.js.map +1 -0
  70. package/dist/adapters/evm/balances.d.ts +6 -0
  71. package/dist/adapters/evm/balances.js +61 -0
  72. package/dist/adapters/evm/balances.js.map +1 -0
  73. package/dist/{state/bonds/fetchBondsData → adapters/evm}/fetchBondsDataEVM.d.ts +3 -2
  74. package/dist/adapters/evm/fetchBondsDataEVM.js +156 -0
  75. package/dist/adapters/evm/fetchBondsDataEVM.js.map +1 -0
  76. package/dist/{state/bonds/fetchUsersBonds → adapters/evm}/fetchUsersBondsEVM.d.ts +2 -2
  77. package/dist/{state/bonds/fetchUsersBonds → adapters/evm}/fetchUsersBondsEVM.js +10 -10
  78. package/dist/adapters/evm/fetchUsersBondsEVM.js.map +1 -0
  79. package/dist/adapters/evm/getTierPoints.d.ts +3 -0
  80. package/dist/adapters/evm/getTierPoints.js +48 -0
  81. package/dist/adapters/evm/getTierPoints.js.map +1 -0
  82. package/dist/adapters/evm/index.d.ts +6 -0
  83. package/dist/adapters/evm/index.js +53 -0
  84. package/dist/adapters/evm/index.js.map +1 -0
  85. package/dist/{utils → adapters/evm}/multicall.js +3 -3
  86. package/dist/adapters/evm/multicall.js.map +1 -0
  87. package/dist/{views/BuyBond → adapters/evm/preTGE}/BuyComponentPreTGE.d.ts +1 -2
  88. package/dist/adapters/evm/preTGE/BuyComponentPreTGE.js +128 -0
  89. package/dist/adapters/evm/preTGE/BuyComponentPreTGE.js.map +1 -0
  90. package/dist/{views/Bonds/components/BondRows → adapters/evm/preTGE}/ModalHandlerPreTGE.d.ts +1 -2
  91. package/dist/{views/Bonds/components/BondRows → adapters/evm/preTGE}/ModalHandlerPreTGE.js +5 -5
  92. package/dist/adapters/evm/preTGE/ModalHandlerPreTGE.js.map +1 -0
  93. package/dist/adapters/evm/preTGE/PreTGEActions.d.ts +5 -0
  94. package/dist/{views/YourBonds/components/UserBondRow → adapters/evm/preTGE}/PreTGEActions.js +11 -15
  95. package/dist/adapters/evm/preTGE/PreTGEActions.js.map +1 -0
  96. package/dist/adapters/evm/preTGE/UserBondRowPreTGE.d.ts +5 -0
  97. package/dist/adapters/evm/preTGE/UserBondRowPreTGE.js +41 -0
  98. package/dist/adapters/evm/preTGE/UserBondRowPreTGE.js.map +1 -0
  99. package/dist/adapters/evm/preTGE/UserBondRowYield.d.ts +5 -0
  100. package/dist/adapters/evm/preTGE/UserBondRowYield.js +43 -0
  101. package/dist/adapters/evm/preTGE/UserBondRowYield.js.map +1 -0
  102. package/dist/{views → adapters/evm/preTGE}/YourBondsModalYield/YourBondsModalYield.d.ts +2 -3
  103. package/dist/adapters/evm/preTGE/YourBondsModalYield/YourBondsModalYield.js +150 -0
  104. package/dist/adapters/evm/preTGE/YourBondsModalYield/YourBondsModalYield.js.map +1 -0
  105. package/dist/{views → adapters/evm/preTGE}/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.d.ts +2 -3
  106. package/dist/adapters/evm/preTGE/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.js +66 -0
  107. package/dist/adapters/evm/preTGE/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.js.map +1 -0
  108. package/dist/{views → adapters/evm/preTGE}/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.d.ts +2 -3
  109. package/dist/adapters/evm/preTGE/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.js +15 -0
  110. package/dist/adapters/evm/preTGE/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.js.map +1 -0
  111. package/dist/{state/bonds/fetchBondsData → adapters/evm/preTGE}/fetchBondsDataPreTGE.d.ts +1 -1
  112. package/dist/{state/bonds/fetchBondsData → adapters/evm/preTGE}/fetchBondsDataPreTGE.js +1 -1
  113. package/dist/adapters/evm/preTGE/fetchBondsDataPreTGE.js.map +1 -0
  114. package/dist/adapters/evm/preTGE/fetchUserBondsPreTGE.d.ts +5 -0
  115. package/dist/adapters/evm/preTGE/fetchUserBondsPreTGE.js +204 -0
  116. package/dist/adapters/evm/preTGE/fetchUserBondsPreTGE.js.map +1 -0
  117. package/dist/{state/allowance → adapters/evm}/useAllowance.js +4 -4
  118. package/dist/adapters/evm/useAllowance.js.map +1 -0
  119. package/dist/adapters/evm/useEVMAccount.js.map +1 -0
  120. package/dist/{hooks → adapters/evm}/useMonitorTx.js +1 -1
  121. package/dist/adapters/evm/useMonitorTx.js.map +1 -0
  122. package/dist/{state/zap → adapters/evm}/useSoulZapBondQuote.js +12 -24
  123. package/dist/adapters/evm/useSoulZapBondQuote.js.map +1 -0
  124. package/dist/{state/bonds → adapters/evm}/useTierProofSignature.js +5 -5
  125. package/dist/adapters/evm/useTierProofSignature.js.map +1 -0
  126. package/dist/adapters/lifi/LifiModal.d.ts +4 -0
  127. package/dist/{views/LifiModal → adapters/lifi}/LifiModal.js +10 -7
  128. package/dist/adapters/lifi/LifiModal.js.map +1 -0
  129. package/dist/adapters/lifi/index.d.ts +6 -0
  130. package/dist/adapters/lifi/index.js +34 -0
  131. package/dist/adapters/lifi/index.js.map +1 -0
  132. package/dist/adapters/registry.d.ts +8 -0
  133. package/dist/adapters/registry.js +24 -0
  134. package/dist/adapters/registry.js.map +1 -0
  135. package/dist/adapters/solana/ActionsSolana.d.ts +5 -0
  136. package/dist/{views/YourBondsModal/components/Actions → adapters/solana}/ActionsSolana.js +16 -16
  137. package/dist/adapters/solana/ActionsSolana.js.map +1 -0
  138. package/dist/{views/BuyBond → adapters/solana}/BuyComponentSolana.js +21 -24
  139. package/dist/adapters/solana/BuyComponentSolana.js.map +1 -0
  140. package/dist/{components/ConnectSolanaWalletButton → adapters/solana}/ConnectSolanaWalletButton.d.ts +1 -1
  141. package/dist/adapters/solana/ConnectSolanaWalletButton.js +14 -0
  142. package/dist/adapters/solana/ConnectSolanaWalletButton.js.map +1 -0
  143. package/dist/adapters/solana/ConnectToSolanaBanner.d.ts +1 -0
  144. package/dist/adapters/solana/ConnectToSolanaBanner.js +18 -0
  145. package/dist/adapters/solana/ConnectToSolanaBanner.js.map +1 -0
  146. package/dist/adapters/solana/SolanaAccountBridge.d.ts +3 -0
  147. package/dist/adapters/solana/SolanaAccountBridge.js +13 -0
  148. package/dist/adapters/solana/SolanaAccountBridge.js.map +1 -0
  149. package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/solana}/TransferActionSolana.d.ts +2 -2
  150. package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/solana}/TransferActionSolana.js +7 -7
  151. package/dist/adapters/solana/TransferActionSolana.js.map +1 -0
  152. package/dist/adapters/solana/UserBondRowSolana.d.ts +5 -0
  153. package/dist/{views/YourBonds/components/UserBondRow → adapters/solana}/UserBondRowSolana.js +27 -30
  154. package/dist/adapters/solana/UserBondRowSolana.js.map +1 -0
  155. package/dist/{utils → adapters/solana}/calculateSolanaTrueBillPrice.js +1 -1
  156. package/dist/adapters/solana/calculateSolanaTrueBillPrice.js.map +1 -0
  157. package/dist/{types → adapters/solana/codecs}/bondCodec.d.ts +2 -2
  158. package/dist/{types → adapters/solana/codecs}/bondCodec.js +2 -3
  159. package/dist/adapters/solana/codecs/bondCodec.js.map +1 -0
  160. package/dist/{types → adapters/solana/codecs}/bondIssuanceCodec.d.ts +2 -2
  161. package/dist/{types → adapters/solana/codecs}/bondIssuanceCodec.js +2 -3
  162. package/dist/adapters/solana/codecs/bondIssuanceCodec.js.map +1 -0
  163. package/dist/{types → adapters/solana/codecs}/bondPricingCodec.d.ts +1 -1
  164. package/dist/{types → adapters/solana/codecs}/bondPricingCodec.js +2 -2
  165. package/dist/adapters/solana/codecs/bondPricingCodec.js.map +1 -0
  166. package/dist/{types → adapters/solana/codecs}/bondTermCodec.d.ts +1 -1
  167. package/dist/{types → adapters/solana/codecs}/bondTermCodec.js +2 -2
  168. package/dist/adapters/solana/codecs/bondTermCodec.js.map +1 -0
  169. package/dist/adapters/solana/derivePda.js.map +1 -0
  170. package/dist/adapters/solana/fetchBondsDataSOL.d.ts +4 -0
  171. package/dist/adapters/solana/fetchBondsDataSOL.js +123 -0
  172. package/dist/adapters/solana/fetchBondsDataSOL.js.map +1 -0
  173. package/dist/{state/bonds/fetchUsersBonds → adapters/solana}/fetchUsersBondsSOL.d.ts +2 -2
  174. package/dist/{state/bonds/fetchUsersBonds → adapters/solana}/fetchUsersBondsSOL.js +11 -11
  175. package/dist/adapters/solana/fetchUsersBondsSOL.js.map +1 -0
  176. package/dist/{utils → adapters/solana}/getSolanaAccount.d.ts +1 -1
  177. package/dist/{utils → adapters/solana}/getSolanaAccount.js +4 -4
  178. package/dist/adapters/solana/getSolanaAccount.js.map +1 -0
  179. package/dist/adapters/solana/index.d.ts +8 -0
  180. package/dist/adapters/solana/index.js +40 -0
  181. package/dist/adapters/solana/index.js.map +1 -0
  182. package/dist/adapters/solana/polyfills.d.ts +1 -0
  183. package/dist/adapters/solana/polyfills.js +7 -0
  184. package/dist/adapters/solana/polyfills.js.map +1 -0
  185. package/dist/adapters/solana/solanaAtaHelper.js.map +1 -0
  186. package/dist/{constants → adapters/solana}/solanaConstants.js +1 -1
  187. package/dist/adapters/solana/solanaConstants.js.map +1 -0
  188. package/dist/adapters/solana/solanaMulticall.js.map +1 -0
  189. package/dist/adapters/solana/solanaRpc.d.ts +1 -0
  190. package/dist/{utils → adapters/solana}/solanaRpc.js +2 -2
  191. package/dist/adapters/solana/solanaRpc.js.map +1 -0
  192. package/dist/{state/balance → adapters/solana}/useCurrencyBalanceSolana.d.ts +4 -0
  193. package/dist/{state/balance → adapters/solana}/useCurrencyBalanceSolana.js +9 -2
  194. package/dist/adapters/solana/useCurrencyBalanceSolana.js.map +1 -0
  195. package/dist/adapters/solana/useJupiterSolanaQuote.js.map +1 -0
  196. package/dist/adapters/solana/useSOLAccount.js.map +1 -0
  197. package/dist/adapters/sui/ActionsSui.d.ts +5 -0
  198. package/dist/{views/YourBondsModal/components/Actions → adapters/sui}/ActionsSui.js +14 -14
  199. package/dist/adapters/sui/ActionsSui.js.map +1 -0
  200. package/dist/{views/BuyBond → adapters/sui}/BuyComponentSui.js +14 -21
  201. package/dist/adapters/sui/BuyComponentSui.js.map +1 -0
  202. package/dist/adapters/sui/ClaimAllActionSui.d.ts +5 -0
  203. package/dist/adapters/sui/ClaimAllActionSui.js +89 -0
  204. package/dist/adapters/sui/ClaimAllActionSui.js.map +1 -0
  205. package/dist/adapters/sui/ConnectToSuiBanner.d.ts +1 -0
  206. package/dist/adapters/sui/ConnectToSuiBanner.js +16 -0
  207. package/dist/adapters/sui/ConnectToSuiBanner.js.map +1 -0
  208. package/dist/adapters/sui/SuiAccountBridge.d.ts +3 -0
  209. package/dist/adapters/sui/SuiAccountBridge.js +12 -0
  210. package/dist/adapters/sui/SuiAccountBridge.js.map +1 -0
  211. package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/sui}/TransferActionSui.d.ts +2 -3
  212. package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/sui}/TransferActionSui.js +8 -8
  213. package/dist/adapters/sui/TransferActionSui.js.map +1 -0
  214. package/dist/adapters/sui/UserBondRowSui.d.ts +5 -0
  215. package/dist/adapters/sui/UserBondRowSui.js +125 -0
  216. package/dist/adapters/sui/UserBondRowSui.js.map +1 -0
  217. package/dist/{state/bonds/fetchBondsData → adapters/sui}/fetchBondsDataSui.d.ts +2 -2
  218. package/dist/{state/bonds/fetchBondsData → adapters/sui}/fetchBondsDataSui.js +4 -30
  219. package/dist/adapters/sui/fetchBondsDataSui.js.map +1 -0
  220. package/dist/{state/bonds/fetchUsersBonds → adapters/sui}/fetchUsersBondsSUI.d.ts +2 -2
  221. package/dist/{state/bonds/fetchUsersBonds → adapters/sui}/fetchUsersBondsSUI.js +8 -8
  222. package/dist/adapters/sui/fetchUsersBondsSUI.js.map +1 -0
  223. package/dist/adapters/sui/index.d.ts +6 -0
  224. package/dist/adapters/sui/index.js +37 -0
  225. package/dist/adapters/sui/index.js.map +1 -0
  226. package/dist/adapters/sui/suiConstants.js.map +1 -0
  227. package/dist/{utils → adapters/sui}/suiHelpers.js +1 -1
  228. package/dist/adapters/sui/suiHelpers.js.map +1 -0
  229. package/dist/adapters/sui/suiZapTokens.js.map +1 -0
  230. package/dist/{state/balance → adapters/sui}/useCurrencyBalanceSui.js +1 -1
  231. package/dist/adapters/sui/useCurrencyBalanceSui.js.map +1 -0
  232. package/dist/adapters/sui/useSUIAccount.d.ts +14 -0
  233. package/dist/{hooks/accounts → adapters/sui}/useSUIAccount.js +3 -2
  234. package/dist/adapters/sui/useSUIAccount.js.map +1 -0
  235. package/dist/{state/zap → adapters/sui}/useSuiZapQuote.js +3 -4
  236. package/dist/adapters/sui/useSuiZapQuote.js.map +1 -0
  237. package/dist/adapters/types.d.ts +110 -0
  238. package/dist/components/BondFilters/BondFilters.js +3 -3
  239. package/dist/components/BondFilters/BondFilters.js.map +1 -1
  240. package/dist/components/Carousel/index.d.ts +8 -0
  241. package/dist/components/Carousel/index.js +148 -0
  242. package/dist/components/Carousel/index.js.map +1 -0
  243. package/dist/components/ChainOptionList/ChainOptionsButtons.d.ts +1 -1
  244. package/dist/components/ChainOptionList/ChainOptionsButtons.js +6 -9
  245. package/dist/components/ChainOptionList/ChainOptionsButtons.js.map +1 -1
  246. package/dist/components/ChainOptionList/ChainOptionsList.d.ts +1 -1
  247. package/dist/components/ChainOptionList/ChainOptionsList.js +3 -4
  248. package/dist/components/ChainOptionList/ChainOptionsList.js.map +1 -1
  249. package/dist/components/CircularProgress/index.js +3 -14
  250. package/dist/components/CircularProgress/index.js.map +1 -1
  251. package/dist/components/ConnectButton/index.d.ts +1 -2
  252. package/dist/components/ConnectButton/index.js +2 -5
  253. package/dist/components/ConnectButton/index.js.map +1 -1
  254. package/dist/components/ConnectSuiWalletButton/ConnectSuiWalletButton.d.ts +1 -2
  255. package/dist/components/CustomClaimModals/AbondModal.d.ts +1 -2
  256. package/dist/components/CustomClaimModals/AbondModal.js +2 -3
  257. package/dist/components/CustomClaimModals/AbondModal.js.map +1 -1
  258. package/dist/components/CustomClaimModals/OabondModal.d.ts +1 -2
  259. package/dist/components/CustomClaimModals/OabondModal.js +2 -3
  260. package/dist/components/CustomClaimModals/OabondModal.js.map +1 -1
  261. package/dist/components/CustomClaimModals/PmusdModal.d.ts +1 -2
  262. package/dist/components/CustomClaimModals/PmusdModal.js +2 -9
  263. package/dist/components/CustomClaimModals/PmusdModal.js.map +1 -1
  264. package/dist/components/CustomClaimModals/PostClaimModal.d.ts +7 -0
  265. package/dist/components/CustomClaimModals/PostClaimModal.js +14 -0
  266. package/dist/components/CustomClaimModals/PostClaimModal.js.map +1 -0
  267. package/dist/components/FavIcons/AddFavToken.d.ts +1 -2
  268. package/dist/components/FavIcons/AddFavToken.js +2 -2
  269. package/dist/components/FavIcons/AddFavToken.js.map +1 -1
  270. package/dist/components/FavIcons/FavFilter.d.ts +1 -2
  271. package/dist/components/FavIcons/FavFilter.js +3 -3
  272. package/dist/components/FavIcons/FavFilter.js.map +1 -1
  273. package/dist/components/LoadingSpinner/index.d.ts +1 -2
  274. package/dist/components/LoadingSpinner/index.js +8 -30
  275. package/dist/components/LoadingSpinner/index.js.map +1 -1
  276. package/dist/components/MenuSelect/MenuSelect.d.ts +1 -2
  277. package/dist/components/MenuSelect/MenuSelect.js +3 -9
  278. package/dist/components/MenuSelect/MenuSelect.js.map +1 -1
  279. package/dist/components/MenuSelect/RecommendationSelector.d.ts +1 -2
  280. package/dist/components/MenuSelect/RecommendationSelector.js +4 -24
  281. package/dist/components/MenuSelect/RecommendationSelector.js.map +1 -1
  282. package/dist/components/NetworkFilter/index.d.ts +1 -2
  283. package/dist/components/NetworkFilter/index.js +14 -53
  284. package/dist/components/NetworkFilter/index.js.map +1 -1
  285. package/dist/components/PlaceholderMonkey/index.d.ts +1 -2
  286. package/dist/components/PlaceholderMonkey/index.js +2 -7
  287. package/dist/components/PlaceholderMonkey/index.js.map +1 -1
  288. package/dist/components/ProgressBar/ProgressBar.js +3 -5
  289. package/dist/components/ProgressBar/ProgressBar.js.map +1 -1
  290. package/dist/components/ProgressBar/ProgressBarWrapper.d.ts +2 -2
  291. package/dist/components/ProgressBar/ProgressBarWrapper.js +4 -4
  292. package/dist/components/ProgressBar/ProgressBarWrapper.js.map +1 -1
  293. package/dist/components/ProgressiveImage/index.d.ts +1 -2
  294. package/dist/components/ProgressiveImage/index.js +3 -21
  295. package/dist/components/ProgressiveImage/index.js.map +1 -1
  296. package/dist/components/SafeHTMLComponent/index.d.ts +1 -2
  297. package/dist/components/SafeHTMLComponent/index.js +1 -1
  298. package/dist/components/SlippageModal/index.d.ts +1 -2
  299. package/dist/components/SlippageModal/index.js +7 -43
  300. package/dist/components/SlippageModal/index.js.map +1 -1
  301. package/dist/components/StepBubble/index.d.ts +1 -2
  302. package/dist/components/StepBubble/index.js +5 -33
  303. package/dist/components/StepBubble/index.js.map +1 -1
  304. package/dist/components/Toast/index.d.ts +1 -2
  305. package/dist/components/Toast/index.js +4 -15
  306. package/dist/components/Toast/index.js.map +1 -1
  307. package/dist/components/TokenInfoAndName/index.d.ts +3 -3
  308. package/dist/components/TokenInfoAndName/index.js +8 -19
  309. package/dist/components/TokenInfoAndName/index.js.map +1 -1
  310. package/dist/components/TokenSelectorModal/TokenRow.d.ts +1 -2
  311. package/dist/components/TokenSelectorModal/TokenRow.js +3 -3
  312. package/dist/components/TokenSelectorModal/TokenRow.js.map +1 -1
  313. package/dist/components/TokenSelectorModal/index.js +2 -14
  314. package/dist/components/TokenSelectorModal/index.js.map +1 -1
  315. package/dist/components/TokenSelectorPanel/index.d.ts +1 -1
  316. package/dist/components/TokenSelectorPanel/index.js +12 -25
  317. package/dist/components/TokenSelectorPanel/index.js.map +1 -1
  318. package/dist/components/Tooltip/ButtonsRow.js +3 -4
  319. package/dist/components/Tooltip/ButtonsRow.js.map +1 -1
  320. package/dist/components/Tooltip/Tooltip.js +4 -4
  321. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  322. package/dist/components/YouTooltip/YouTooltip.d.ts +1 -2
  323. package/dist/components/YouTooltip/YouTooltip.js +2 -24
  324. package/dist/components/YouTooltip/YouTooltip.js.map +1 -1
  325. package/dist/components/uikit-sdk/Button/Button.d.ts +1 -2
  326. package/dist/components/uikit-sdk/Button/Button.js +34 -40
  327. package/dist/components/uikit-sdk/Button/Button.js.map +1 -1
  328. package/dist/components/uikit-sdk/Button/IconButton.js +16 -15
  329. package/dist/components/uikit-sdk/Button/IconButton.js.map +1 -1
  330. package/dist/components/uikit-sdk/Button/types.d.ts +1 -2
  331. package/dist/components/uikit-sdk/Button/types.js +6 -6
  332. package/dist/components/uikit-sdk/Button/types.js.map +1 -1
  333. package/dist/components/uikit-sdk/Checkbox/index.d.ts +1 -1
  334. package/dist/components/uikit-sdk/Checkbox/index.js +11 -8
  335. package/dist/components/uikit-sdk/Checkbox/index.js.map +1 -1
  336. package/dist/components/uikit-sdk/Checkbox/types.d.ts +2 -2
  337. package/dist/components/uikit-sdk/Checkbox/types.js.map +1 -1
  338. package/dist/components/uikit-sdk/Flex/index.d.ts +9 -3
  339. package/dist/components/uikit-sdk/Flex/index.js +8 -4
  340. package/dist/components/uikit-sdk/Flex/index.js.map +1 -1
  341. package/dist/components/uikit-sdk/Input/Input.d.ts +4 -7
  342. package/dist/components/uikit-sdk/Input/Input.js +4 -46
  343. package/dist/components/uikit-sdk/Input/Input.js.map +1 -1
  344. package/dist/components/uikit-sdk/LoadingDots/index.d.ts +1 -1
  345. package/dist/components/uikit-sdk/LoadingDots/index.js +2 -21
  346. package/dist/components/uikit-sdk/LoadingDots/index.js.map +1 -1
  347. package/dist/components/uikit-sdk/Modal/ModalHeader.js +5 -5
  348. package/dist/components/uikit-sdk/Modal/ModalHeader.js.map +1 -1
  349. package/dist/components/uikit-sdk/Modal/index.d.ts +1 -2
  350. package/dist/components/uikit-sdk/Modal/index.js +10 -14
  351. package/dist/components/uikit-sdk/Modal/index.js.map +1 -1
  352. package/dist/components/uikit-sdk/Modal/types.d.ts +3 -3
  353. package/dist/components/uikit-sdk/Select/Select.d.ts +1 -2
  354. package/dist/components/uikit-sdk/Select/Select.js +24 -17
  355. package/dist/components/uikit-sdk/Select/Select.js.map +1 -1
  356. package/dist/components/uikit-sdk/Select/SelectItem.d.ts +1 -1
  357. package/dist/components/uikit-sdk/Select/SelectItem.js +26 -15
  358. package/dist/components/uikit-sdk/Select/SelectItem.js.map +1 -1
  359. package/dist/components/uikit-sdk/Select/types.d.ts +1 -0
  360. package/dist/components/uikit-sdk/Select/types.js +9 -9
  361. package/dist/components/uikit-sdk/Select/types.js.map +1 -1
  362. package/dist/components/uikit-sdk/Skeleton/index.d.ts +1 -2
  363. package/dist/components/uikit-sdk/Skeleton/index.js +7 -8
  364. package/dist/components/uikit-sdk/Skeleton/index.js.map +1 -1
  365. package/dist/components/uikit-sdk/Skeleton/types.d.ts +2 -2
  366. package/dist/components/uikit-sdk/Skeleton/types.js.map +1 -1
  367. package/dist/components/uikit-sdk/Spinner/index.d.ts +11 -0
  368. package/dist/components/uikit-sdk/Spinner/index.js +9 -0
  369. package/dist/components/uikit-sdk/Spinner/index.js.map +1 -0
  370. package/dist/components/uikit-sdk/Svg/Icons/AllChains.js +1 -1
  371. package/dist/components/uikit-sdk/Svg/Icons/Arrow.js +2 -2
  372. package/dist/components/uikit-sdk/Svg/Icons/Arrow.js.map +1 -1
  373. package/dist/components/uikit-sdk/Svg/Icons/BitTensor.js +1 -1
  374. package/dist/components/uikit-sdk/Svg/Icons/Caret.js +2 -2
  375. package/dist/components/uikit-sdk/Svg/Icons/Caret.js.map +1 -1
  376. package/dist/components/uikit-sdk/Svg/Icons/Close.js +2 -2
  377. package/dist/components/uikit-sdk/Svg/Icons/Close.js.map +1 -1
  378. package/dist/components/uikit-sdk/Svg/Icons/Cog.d.ts +1 -1
  379. package/dist/components/uikit-sdk/Svg/Icons/Cog.js +2 -2
  380. package/dist/components/uikit-sdk/Svg/Icons/Cog.js.map +1 -1
  381. package/dist/components/uikit-sdk/Svg/Icons/CoinGecko.js +2 -2
  382. package/dist/components/uikit-sdk/Svg/Icons/CoinGecko.js.map +1 -1
  383. package/dist/components/uikit-sdk/Svg/Icons/DexScreener.js +2 -2
  384. package/dist/components/uikit-sdk/Svg/Icons/DexScreener.js.map +1 -1
  385. package/dist/components/uikit-sdk/Svg/Icons/Discord.js +2 -2
  386. package/dist/components/uikit-sdk/Svg/Icons/Discord.js.map +1 -1
  387. package/dist/components/uikit-sdk/Svg/Icons/Discount.js +2 -2
  388. package/dist/components/uikit-sdk/Svg/Icons/Discount.js.map +1 -1
  389. package/dist/components/uikit-sdk/Svg/Icons/Error.js +2 -2
  390. package/dist/components/uikit-sdk/Svg/Icons/Error.js.map +1 -1
  391. package/dist/components/uikit-sdk/Svg/Icons/Expand.js +2 -2
  392. package/dist/components/uikit-sdk/Svg/Icons/Expand.js.map +1 -1
  393. package/dist/components/uikit-sdk/Svg/Icons/External.js +2 -2
  394. package/dist/components/uikit-sdk/Svg/Icons/External.js.map +1 -1
  395. package/dist/components/uikit-sdk/Svg/Icons/FirePink.js +1 -1
  396. package/dist/components/uikit-sdk/Svg/Icons/GiftBox.js +1 -1
  397. package/dist/components/uikit-sdk/Svg/Icons/GiftBoxPlain.js +1 -1
  398. package/dist/components/uikit-sdk/Svg/Icons/Insight.js +2 -2
  399. package/dist/components/uikit-sdk/Svg/Icons/Insight.js.map +1 -1
  400. package/dist/components/uikit-sdk/Svg/Icons/L1X.d.ts +4 -0
  401. package/dist/components/uikit-sdk/Svg/Icons/L1X.js +8 -0
  402. package/dist/components/uikit-sdk/Svg/Icons/L1X.js.map +1 -0
  403. package/dist/components/uikit-sdk/Svg/Icons/LineChart.js +1 -1
  404. package/dist/components/uikit-sdk/Svg/Icons/More.js +2 -2
  405. package/dist/components/uikit-sdk/Svg/Icons/More.js.map +1 -1
  406. package/dist/components/uikit-sdk/Svg/Icons/NewOffer.js +1 -1
  407. package/dist/components/uikit-sdk/Svg/Icons/NewOffer.js.map +1 -1
  408. package/dist/components/uikit-sdk/Svg/Icons/PlaceholderMonkey.d.ts +1 -1
  409. package/dist/components/uikit-sdk/Svg/Icons/PlaceholderMonkey.js +2 -2
  410. package/dist/components/uikit-sdk/Svg/Icons/PlaceholderMonkey.js.map +1 -1
  411. package/dist/components/uikit-sdk/Svg/Icons/Question.js +1 -1
  412. package/dist/components/uikit-sdk/Svg/Icons/QuestionCircle.js +2 -2
  413. package/dist/components/uikit-sdk/Svg/Icons/QuestionCircle.js.map +1 -1
  414. package/dist/components/uikit-sdk/Svg/Icons/Robinhood.js +1 -1
  415. package/dist/components/uikit-sdk/Svg/Icons/Search.js +2 -2
  416. package/dist/components/uikit-sdk/Svg/Icons/Search.js.map +1 -1
  417. package/dist/components/uikit-sdk/Svg/Icons/SellingFast.js +1 -1
  418. package/dist/components/uikit-sdk/Svg/Icons/SellingFast.js.map +1 -1
  419. package/dist/components/uikit-sdk/Svg/Icons/ShortSupply.js +1 -1
  420. package/dist/components/uikit-sdk/Svg/Icons/Sort.js +2 -2
  421. package/dist/components/uikit-sdk/Svg/Icons/Sort.js.map +1 -1
  422. package/dist/components/uikit-sdk/Svg/Icons/Star.js +1 -1
  423. package/dist/components/uikit-sdk/Svg/Icons/StarFilled.js +1 -1
  424. package/dist/components/uikit-sdk/Svg/Icons/Success.js +2 -2
  425. package/dist/components/uikit-sdk/Svg/Icons/Success.js.map +1 -1
  426. package/dist/components/uikit-sdk/Svg/Icons/Tag.js +1 -1
  427. package/dist/components/uikit-sdk/Svg/Icons/Tick.js +2 -2
  428. package/dist/components/uikit-sdk/Svg/Icons/Tick.js.map +1 -1
  429. package/dist/components/uikit-sdk/Svg/Icons/Timer.js +1 -1
  430. package/dist/components/uikit-sdk/Svg/Icons/TurnArrow.js +2 -2
  431. package/dist/components/uikit-sdk/Svg/Icons/TurnArrow.js.map +1 -1
  432. package/dist/components/uikit-sdk/Svg/Icons/Twitter.js +2 -2
  433. package/dist/components/uikit-sdk/Svg/Icons/Twitter.js.map +1 -1
  434. package/dist/components/uikit-sdk/Svg/Icons/URL.js +2 -2
  435. package/dist/components/uikit-sdk/Svg/Icons/URL.js.map +1 -1
  436. package/dist/components/uikit-sdk/Svg/Icons/WhaleActivity.js +1 -1
  437. package/dist/components/uikit-sdk/Svg/Icons/WhaleActivity.js.map +1 -1
  438. package/dist/components/uikit-sdk/Svg/styles.d.ts +5 -2
  439. package/dist/components/uikit-sdk/Svg/styles.js +8 -7
  440. package/dist/components/uikit-sdk/Svg/styles.js.map +1 -1
  441. package/dist/components/uikit-sdk/Svg/tokens/APTOS.js +1 -1
  442. package/dist/components/uikit-sdk/Svg/tokens/ARBITRUM.js +1 -1
  443. package/dist/components/uikit-sdk/Svg/tokens/AVAX.js +1 -1
  444. package/dist/components/uikit-sdk/Svg/tokens/BASE.js +1 -1
  445. package/dist/components/uikit-sdk/Svg/tokens/BERA.js +1 -1
  446. package/dist/components/uikit-sdk/Svg/tokens/BLAST.js +1 -1
  447. package/dist/components/uikit-sdk/Svg/tokens/BNB.js +1 -1
  448. package/dist/components/uikit-sdk/Svg/tokens/CROSSFI.js +1 -1
  449. package/dist/components/uikit-sdk/Svg/tokens/ETH.js +1 -1
  450. package/dist/components/uikit-sdk/Svg/tokens/GraphLinq.js +1 -1
  451. package/dist/components/uikit-sdk/Svg/tokens/HYPEREVM.js +1 -1
  452. package/dist/components/uikit-sdk/Svg/tokens/INEVM.js +1 -1
  453. package/dist/components/uikit-sdk/Svg/tokens/IOTA.js +1 -1
  454. package/dist/components/uikit-sdk/Svg/tokens/KATANA.js +1 -1
  455. package/dist/components/uikit-sdk/Svg/tokens/LIGHTLINK.js +1 -1
  456. package/dist/components/uikit-sdk/Svg/tokens/LINEA.js +1 -1
  457. package/dist/components/uikit-sdk/Svg/tokens/MEGAETH.js +1 -1
  458. package/dist/components/uikit-sdk/Svg/tokens/MONAD.js +1 -1
  459. package/dist/components/uikit-sdk/Svg/tokens/POLYGON.js +1 -1
  460. package/dist/components/uikit-sdk/Svg/tokens/SOL.js +1 -1
  461. package/dist/components/uikit-sdk/Svg/tokens/SONIC.js +1 -1
  462. package/dist/components/uikit-sdk/Svg/tokens/SUI.js +1 -1
  463. package/dist/components/uikit-sdk/Svg/tokens/TLOS.js +1 -1
  464. package/dist/components/uikit-sdk/Svg/tokens/UNICHAIN.js +1 -1
  465. package/dist/components/uikit-sdk/SwiperDots/index.d.ts +1 -2
  466. package/dist/components/uikit-sdk/SwiperDots/index.js +3 -9
  467. package/dist/components/uikit-sdk/SwiperDots/index.js.map +1 -1
  468. package/dist/components/uikit-sdk/TabNav/index.js +3 -34
  469. package/dist/components/uikit-sdk/TabNav/index.js.map +1 -1
  470. package/dist/components/uikit-sdk/Tag/ListTag.d.ts +1 -2
  471. package/dist/components/uikit-sdk/Tag/ListTag.js +13 -16
  472. package/dist/components/uikit-sdk/Tag/ListTag.js.map +1 -1
  473. package/dist/components/uikit-sdk/Text/index.d.ts +1 -2
  474. package/dist/components/uikit-sdk/Text/index.js +21 -8
  475. package/dist/components/uikit-sdk/Text/index.js.map +1 -1
  476. package/dist/components/uikit-sdk/Text/types.d.ts +3 -2
  477. package/dist/components/uikit-sdk/Text/types.js.map +1 -1
  478. package/dist/components/uikit-sdk/Toggle/index.d.ts +1 -2
  479. package/dist/components/uikit-sdk/Toggle/index.js +7 -8
  480. package/dist/components/uikit-sdk/Toggle/index.js.map +1 -1
  481. package/dist/components/uikit-sdk/TokenImage/index.d.ts +1 -2
  482. package/dist/components/uikit-sdk/TokenImage/index.js +3 -45
  483. package/dist/components/uikit-sdk/TokenImage/index.js.map +1 -1
  484. package/dist/components/uikit-sdk/TooltipBubble/index.js +29 -53
  485. package/dist/components/uikit-sdk/TooltipBubble/index.js.map +1 -1
  486. package/dist/components/uikit-sdk/TooltipBubble/types.d.ts +5 -4
  487. package/dist/components/uikit-sdk/TooltipBubble/types.js.map +1 -1
  488. package/dist/config/constants/addresses.d.ts +1 -1
  489. package/dist/config/constants/addresses.js +22 -17
  490. package/dist/config/constants/addresses.js.map +1 -1
  491. package/dist/config/constants/chains.d.ts +0 -2
  492. package/dist/config/constants/chains.js +6 -2
  493. package/dist/config/constants/chains.js.map +1 -1
  494. package/dist/config/constants/networks.js +1 -0
  495. package/dist/config/constants/networks.js.map +1 -1
  496. package/dist/config/constants/queryKeys.d.ts +1 -0
  497. package/dist/config/constants/queryKeys.js +1 -0
  498. package/dist/config/constants/queryKeys.js.map +1 -1
  499. package/dist/config/constants/variables.d.ts +2 -4
  500. package/dist/config/constants/variables.js +15 -30
  501. package/dist/config/constants/variables.js.map +1 -1
  502. package/dist/constants/aptosConstants.d.ts +0 -2
  503. package/dist/constants/aptosConstants.js +1 -4
  504. package/dist/constants/aptosConstants.js.map +1 -1
  505. package/dist/contexts/ModalContext.d.ts +1 -1
  506. package/dist/contexts/ModalContext.js +1 -1
  507. package/dist/contexts/Popups.d.ts +1 -1
  508. package/dist/contexts/Popups.js +2 -2
  509. package/dist/contexts/Popups.js.map +1 -1
  510. package/dist/hooks/useSendReferenceId.js +2 -2
  511. package/dist/hooks/useSendReferenceId.js.map +1 -1
  512. package/dist/main.d.ts +1 -1
  513. package/dist/main.js +1 -1
  514. package/dist/main.js.map +1 -1
  515. package/dist/providers/index.d.ts +3 -4
  516. package/dist/providers/index.js +5 -39
  517. package/dist/providers/index.js.map +1 -1
  518. package/dist/state/balance/useCurrencyBalance.js +3 -23
  519. package/dist/state/balance/useCurrencyBalance.js.map +1 -1
  520. package/dist/state/balance/useUserTokensBalance.js +8 -78
  521. package/dist/state/balance/useUserTokensBalance.js.map +1 -1
  522. package/dist/state/bondApiStats/useGetBondApiStats.js +2 -3
  523. package/dist/state/bondApiStats/useGetBondApiStats.js.map +1 -1
  524. package/dist/state/bonds/fetchBondsData/bondPricing.d.ts +4 -0
  525. package/dist/state/bonds/fetchBondsData/bondPricing.js +39 -0
  526. package/dist/state/bonds/fetchBondsData/bondPricing.js.map +1 -0
  527. package/dist/state/bonds/useBondsData.js +25 -37
  528. package/dist/state/bonds/useBondsData.js.map +1 -1
  529. package/dist/state/bonds/useBondsList.js +2 -3
  530. package/dist/state/bonds/useBondsList.js.map +1 -1
  531. package/dist/state/bonds/useBondsListPreTGE.js +2 -3
  532. package/dist/state/bonds/useBondsListPreTGE.js.map +1 -1
  533. package/dist/state/bonds/useUserBonds.d.ts +3 -1
  534. package/dist/state/bonds/useUserBonds.js +25 -37
  535. package/dist/state/bonds/useUserBonds.js.map +1 -1
  536. package/dist/state/bonds/useUserBondsPreTGE.d.ts +1 -2
  537. package/dist/state/bonds/useUserBondsPreTGE.js +7 -203
  538. package/dist/state/bonds/useUserBondsPreTGE.js.map +1 -1
  539. package/dist/state/chainAccount/useChainAccount.d.ts +13 -0
  540. package/dist/state/chainAccount/useChainAccount.js +30 -0
  541. package/dist/state/chainAccount/useChainAccount.js.map +1 -0
  542. package/dist/state/hotBonds/useHotBonds.js +4 -4
  543. package/dist/state/hotBonds/useHotBonds.js.map +1 -1
  544. package/dist/state/recommendations/useGetBondRecommendations.js +2 -2
  545. package/dist/state/recommendations/useGetBondRecommendations.js.map +1 -1
  546. package/dist/state/tiers/tiers.d.ts +66 -0
  547. package/dist/state/tiers/tiers.js +97 -0
  548. package/dist/state/tiers/tiers.js.map +1 -0
  549. package/dist/state/tiers/useTierPoints.d.ts +2 -66
  550. package/dist/state/tiers/useTierPoints.js +13 -148
  551. package/dist/state/tiers/useTierPoints.js.map +1 -1
  552. package/dist/state/tokenPrices/resolveTokenPrice.d.ts +13 -0
  553. package/dist/state/tokenPrices/resolveTokenPrice.js +37 -0
  554. package/dist/state/tokenPrices/resolveTokenPrice.js.map +1 -0
  555. package/dist/state/tokenPrices/useTokenPrices.js +2 -3
  556. package/dist/state/tokenPrices/useTokenPrices.js.map +1 -1
  557. package/dist/state/useSDKConfig.d.ts +3 -2
  558. package/dist/state/useSDKConfig.js +53 -6
  559. package/dist/state/useSDKConfig.js.map +1 -1
  560. package/dist/styles.css +2 -1588
  561. package/dist/utils/bondPriceHelpers.js +1 -11
  562. package/dist/utils/bondPriceHelpers.js.map +1 -1
  563. package/dist/utils/campaignStyles.d.ts +5 -5
  564. package/dist/utils/campaignStyles.js.map +1 -1
  565. package/dist/utils/displayHelpers.js +1 -1
  566. package/dist/utils/displayHelpers.js.map +1 -1
  567. package/dist/utils/httpClient.d.ts +11 -0
  568. package/dist/utils/httpClient.js +48 -0
  569. package/dist/utils/httpClient.js.map +1 -0
  570. package/dist/utils/resolveColor.d.ts +1 -0
  571. package/dist/utils/resolveColor.js +9 -0
  572. package/dist/utils/resolveColor.js.map +1 -0
  573. package/dist/views/Bonds/Bonds.d.ts +1 -2
  574. package/dist/views/Bonds/Bonds.js +2 -11
  575. package/dist/views/Bonds/Bonds.js.map +1 -1
  576. package/dist/views/Bonds/components/BondRows/ActiveBondRows.js +6 -11
  577. package/dist/views/Bonds/components/BondRows/ActiveBondRows.js.map +1 -1
  578. package/dist/views/Bonds/components/BondRows/BondRow.js +23 -14
  579. package/dist/views/Bonds/components/BondRows/BondRow.js.map +1 -1
  580. package/dist/views/Bonds/components/BondRows/ChainTitle.d.ts +1 -2
  581. package/dist/views/Bonds/components/BondRows/ChainTitle.js +5 -13
  582. package/dist/views/Bonds/components/BondRows/ChainTitle.js.map +1 -1
  583. package/dist/views/Bonds/components/BondRows/ModalHandler.d.ts +1 -2
  584. package/dist/views/Bonds/components/BondRows/ModalHandler.js +9 -36
  585. package/dist/views/Bonds/components/BondRows/ModalHandler.js.map +1 -1
  586. package/dist/views/Bonds/components/BondRows/SoldOutRows.d.ts +1 -2
  587. package/dist/views/Bonds/components/BondRows/SoldOutRows.js +6 -8
  588. package/dist/views/Bonds/components/BondRows/SoldOutRows.js.map +1 -1
  589. package/dist/views/Bonds/components/BondsMenu/BondsMenu.js +4 -10
  590. package/dist/views/Bonds/components/BondsMenu/BondsMenu.js.map +1 -1
  591. package/dist/views/Bonds/components/BonusComponents/BonusComponent.d.ts +1 -2
  592. package/dist/views/Bonds/components/BonusComponents/BonusComponent.js +5 -25
  593. package/dist/views/Bonds/components/BonusComponents/BonusComponent.js.map +1 -1
  594. package/dist/views/Bonds/components/BonusComponents/BonusContainer.d.ts +3 -3
  595. package/dist/views/Bonds/components/BonusComponents/BonusContainer.js +6 -3
  596. package/dist/views/Bonds/components/BonusComponents/BonusContainer.js.map +1 -1
  597. package/dist/views/Bonds/components/BonusComponents/BonusTable.d.ts +1 -2
  598. package/dist/views/Bonds/components/BonusComponents/BonusTable.js +10 -22
  599. package/dist/views/Bonds/components/BonusComponents/BonusTable.js.map +1 -1
  600. package/dist/views/Bonds/components/BuyAgainRow/index.d.ts +1 -2
  601. package/dist/views/Bonds/components/BuyAgainRow/index.js +3 -22
  602. package/dist/views/Bonds/components/BuyAgainRow/index.js.map +1 -1
  603. package/dist/views/Bonds/components/ChainBanner/ChainBanner.d.ts +1 -2
  604. package/dist/views/Bonds/components/ChainBanner/ChainBanner.js +5 -11
  605. package/dist/views/Bonds/components/ChainBanner/ChainBanner.js.map +1 -1
  606. package/dist/views/Bonds/components/CheckURL/index.d.ts +1 -2
  607. package/dist/views/Bonds/components/CheckURL/index.js +9 -5
  608. package/dist/views/Bonds/components/CheckURL/index.js.map +1 -1
  609. package/dist/views/Bonds/components/HotBondCards/HotBondCard.d.ts +1 -2
  610. package/dist/views/Bonds/components/HotBondCards/HotBondCard.js +2 -19
  611. package/dist/views/Bonds/components/HotBondCards/HotBondCard.js.map +1 -1
  612. package/dist/views/Bonds/components/HotBondCards/index.d.ts +1 -2
  613. package/dist/views/Bonds/components/HotBondCards/index.js +4 -38
  614. package/dist/views/Bonds/components/HotBondCards/index.js.map +1 -1
  615. package/dist/views/Bonds/components/LoadingSkeleton/LoadingSkeleton.d.ts +1 -2
  616. package/dist/views/Bonds/components/LoadingSkeleton/LoadingSkeleton.js +2 -17
  617. package/dist/views/Bonds/components/LoadingSkeleton/LoadingSkeleton.js.map +1 -1
  618. package/dist/views/Bonds/components/RecommendationCards/SmallRecommendationCard.d.ts +1 -2
  619. package/dist/views/Bonds/components/RecommendationCards/SmallRecommendationCard.js +3 -3
  620. package/dist/views/Bonds/components/RecommendationCards/SmallRecommendationCard.js.map +1 -1
  621. package/dist/views/Bonds/components/RecommendationCards/index.d.ts +1 -2
  622. package/dist/views/Bonds/components/RecommendationCards/index.js +5 -15
  623. package/dist/views/Bonds/components/RecommendationCards/index.js.map +1 -1
  624. package/dist/views/Bonds/index.js +2 -2
  625. package/dist/views/Bonds/index.js.map +1 -1
  626. package/dist/views/Bonds/utils.js +2 -2
  627. package/dist/views/Bonds/utils.js.map +1 -1
  628. package/dist/views/BuyBond/BuyBondModal.js +3 -8
  629. package/dist/views/BuyBond/BuyBondModal.js.map +1 -1
  630. package/dist/views/BuyBond/ChainBuyComponent.d.ts +5 -0
  631. package/dist/views/BuyBond/ChainBuyComponent.js +11 -0
  632. package/dist/views/BuyBond/ChainBuyComponent.js.map +1 -0
  633. package/dist/views/BuyBond/ParticipationSuccessful.d.ts +1 -2
  634. package/dist/views/BuyBond/ParticipationSuccessful.js +8 -26
  635. package/dist/views/BuyBond/ParticipationSuccessful.js.map +1 -1
  636. package/dist/views/BuyBond/components/BondCards/BondCards.d.ts +1 -2
  637. package/dist/views/BuyBond/components/BondCards/BondCards.js +27 -54
  638. package/dist/views/BuyBond/components/BondCards/BondCards.js.map +1 -1
  639. package/dist/views/BuyBond/components/BondCards/BondCardsPreTGE.d.ts +1 -2
  640. package/dist/views/BuyBond/components/BondCards/BondCardsPreTGE.js +3 -56
  641. package/dist/views/BuyBond/components/BondCards/BondCardsPreTGE.js.map +1 -1
  642. package/dist/views/BuyBond/components/BondModalHeader.d.ts +1 -2
  643. package/dist/views/BuyBond/components/BondModalHeader.js +6 -49
  644. package/dist/views/BuyBond/components/BondModalHeader.js.map +1 -1
  645. package/dist/views/BuyBond/components/BondModalMinTierHeader.d.ts +1 -1
  646. package/dist/views/BuyBond/components/BondModalMinTierHeader.js +4 -9
  647. package/dist/views/BuyBond/components/BondModalMinTierHeader.js.map +1 -1
  648. package/dist/views/BuyBond/components/Estimations.d.ts +1 -2
  649. package/dist/views/BuyBond/components/Estimations.js +10 -39
  650. package/dist/views/BuyBond/components/Estimations.js.map +1 -1
  651. package/dist/views/BuyBond/components/ExpandedViewButton.d.ts +1 -2
  652. package/dist/views/BuyBond/components/ExpandedViewButton.js +2 -15
  653. package/dist/views/BuyBond/components/ExpandedViewButton.js.map +1 -1
  654. package/dist/views/BuyBond/components/L1xIframe/L1xIframe.d.ts +4 -0
  655. package/dist/views/BuyBond/components/L1xIframe/L1xIframe.js +12 -0
  656. package/dist/views/BuyBond/components/L1xIframe/L1xIframe.js.map +1 -0
  657. package/dist/views/BuyBond/components/NewRateModal/NewRateModal.d.ts +1 -2
  658. package/dist/views/BuyBond/components/NewRateModal/NewRateModal.js +2 -14
  659. package/dist/views/BuyBond/components/NewRateModal/NewRateModal.js.map +1 -1
  660. package/dist/views/BuyBond/components/NoBonusModal/NoBonusModal.js +2 -2
  661. package/dist/views/BuyBond/components/NoBonusModal/NoBonusModal.js.map +1 -1
  662. package/dist/views/BuyBond/components/PointsLeftForNextTier/PointsLeftForNextTier.js +14 -94
  663. package/dist/views/BuyBond/components/PointsLeftForNextTier/PointsLeftForNextTier.js.map +1 -1
  664. package/dist/views/BuyBond/components/ProjectDescription.d.ts +1 -2
  665. package/dist/views/BuyBond/components/ProjectDescription.js +2 -15
  666. package/dist/views/BuyBond/components/ProjectDescription.js.map +1 -1
  667. package/dist/views/BuyBond/index.d.ts +2 -2
  668. package/dist/views/BuyBond/index.js +2 -2
  669. package/dist/views/BuyBond/index.js.map +1 -1
  670. package/dist/views/BuyBond/utils.js +1 -1
  671. package/dist/views/BuyBond/utils.js.map +1 -1
  672. package/dist/views/FullBondsView/FullBondsView.d.ts +1 -2
  673. package/dist/views/FullBondsView/FullBondsView.js +2 -2
  674. package/dist/views/FullBondsView/FullBondsView.js.map +1 -1
  675. package/dist/views/FullBondsView/index.js +2 -2
  676. package/dist/views/FullBondsView/index.js.map +1 -1
  677. package/dist/views/ProjectView/ProjectView.js +3 -16
  678. package/dist/views/ProjectView/ProjectView.js.map +1 -1
  679. package/dist/views/ProjectView/components/BondLeaderboard/components/SalesTable.d.ts +1 -2
  680. package/dist/views/ProjectView/components/BondLeaderboard/components/SalesTable.js +5 -24
  681. package/dist/views/ProjectView/components/BondLeaderboard/components/SalesTable.js.map +1 -1
  682. package/dist/views/ProjectView/components/BondLeaderboard/components/TopSaleCard.d.ts +1 -2
  683. package/dist/views/ProjectView/components/BondLeaderboard/components/TopSaleCard.js +9 -21
  684. package/dist/views/ProjectView/components/BondLeaderboard/components/TopSaleCard.js.map +1 -1
  685. package/dist/views/ProjectView/components/BondLeaderboard/components/TopThreeSalesCards.d.ts +1 -2
  686. package/dist/views/ProjectView/components/BondLeaderboard/components/TopThreeSalesCards.js +2 -2
  687. package/dist/views/ProjectView/components/BondLeaderboard/components/TopThreeSalesCards.js.map +1 -1
  688. package/dist/views/ProjectView/components/BondLeaderboard/index.d.ts +1 -2
  689. package/dist/views/ProjectView/components/BondLeaderboard/index.js +2 -14
  690. package/dist/views/ProjectView/components/BondLeaderboard/index.js.map +1 -1
  691. package/dist/views/ProjectView/components/BondStats/LineChart.d.ts +10 -0
  692. package/dist/views/ProjectView/components/BondStats/LineChart.js +144 -0
  693. package/dist/views/ProjectView/components/BondStats/LineChart.js.map +1 -0
  694. package/dist/views/ProjectView/components/BondStats/index.d.ts +1 -2
  695. package/dist/views/ProjectView/components/BondStats/index.js +18 -47
  696. package/dist/views/ProjectView/components/BondStats/index.js.map +1 -1
  697. package/dist/views/ProjectView/components/BondStats/types.d.ts +2 -37
  698. package/dist/views/ProjectView/components/BondStats/types.js +1 -28
  699. package/dist/views/ProjectView/components/BondStats/types.js.map +1 -1
  700. package/dist/views/ProjectView/components/NavPanel/index.d.ts +1 -2
  701. package/dist/views/ProjectView/components/NavPanel/index.js +2 -10
  702. package/dist/views/ProjectView/components/NavPanel/index.js.map +1 -1
  703. package/dist/views/ProjectView/components/PriceChart/components/CandleStickChart.d.ts +1 -2
  704. package/dist/views/ProjectView/components/PriceChart/components/CandleStickChart.js +1 -1
  705. package/dist/views/ProjectView/components/PriceChart/components/LineChart.d.ts +1 -2
  706. package/dist/views/ProjectView/components/PriceChart/components/LineChart.js +1 -1
  707. package/dist/views/ProjectView/components/PriceChart/index.d.ts +1 -2
  708. package/dist/views/ProjectView/components/PriceChart/index.js +5 -4
  709. package/dist/views/ProjectView/components/PriceChart/index.js.map +1 -1
  710. package/dist/views/ProjectView/components/ProjectInfo/index.d.ts +1 -2
  711. package/dist/views/ProjectView/components/ProjectInfo/index.js +2 -3
  712. package/dist/views/ProjectView/components/ProjectInfo/index.js.map +1 -1
  713. package/dist/views/ProjectView/components/RecommendationCards/index.d.ts +1 -2
  714. package/dist/views/ProjectView/components/RecommendationCards/index.js +6 -20
  715. package/dist/views/ProjectView/components/RecommendationCards/index.js.map +1 -1
  716. package/dist/views/ProjectView/index.js +2 -2
  717. package/dist/views/ProjectView/index.js.map +1 -1
  718. package/dist/views/SingleBond/SingleBond.js +5 -11
  719. package/dist/views/SingleBond/SingleBond.js.map +1 -1
  720. package/dist/views/SingleBond/SoldOutBuyBondPlaceholder.js +9 -31
  721. package/dist/views/SingleBond/SoldOutBuyBondPlaceholder.js.map +1 -1
  722. package/dist/views/SingleBond/index.js +2 -2
  723. package/dist/views/SingleBond/index.js.map +1 -1
  724. package/dist/views/YourBonds/YourBonds.d.ts +1 -2
  725. package/dist/views/YourBonds/YourBonds.js +29 -36
  726. package/dist/views/YourBonds/YourBonds.js.map +1 -1
  727. package/dist/views/YourBonds/components/ClaimAll/ClaimAllModal.d.ts +1 -2
  728. package/dist/views/YourBonds/components/ClaimAll/ClaimAllModal.js +11 -197
  729. package/dist/views/YourBonds/components/ClaimAll/ClaimAllModal.js.map +1 -1
  730. package/dist/views/YourBonds/components/ClaimAll/index.d.ts +1 -2
  731. package/dist/views/YourBonds/components/ClaimAll/index.js +6 -16
  732. package/dist/views/YourBonds/components/ClaimAll/index.js.map +1 -1
  733. package/dist/views/YourBonds/components/ProfitCard/ProfitCard.d.ts +1 -2
  734. package/dist/views/YourBonds/components/ProfitCard/ProfitCard.js +3 -15
  735. package/dist/views/YourBonds/components/ProfitCard/ProfitCard.js.map +1 -1
  736. package/dist/views/YourBonds/components/YourBondsMenu/YourBondsMenu.d.ts +1 -2
  737. package/dist/views/YourBonds/components/YourBondsMenu/YourBondsMenu.js +3 -3
  738. package/dist/views/YourBonds/components/YourBondsMenu/YourBondsMenu.js.map +1 -1
  739. package/dist/views/YourBonds/index.js +2 -2
  740. package/dist/views/YourBonds/index.js.map +1 -1
  741. package/dist/views/YourBondsModal/YourBondsModal.d.ts +1 -2
  742. package/dist/views/YourBondsModal/YourBondsModal.js +9 -101
  743. package/dist/views/YourBondsModal/YourBondsModal.js.map +1 -1
  744. package/dist/views/YourBondsModal/components/LinkShare/LinkShare.d.ts +1 -1
  745. package/dist/views/YourBondsModal/components/LinkShare/LinkShare.js +3 -16
  746. package/dist/views/YourBondsModal/components/LinkShare/LinkShare.js.map +1 -1
  747. package/dist/views/YourBondsModal/components/LinkShare/templateImageShare.js +1 -2
  748. package/dist/views/YourBondsModal/components/LinkShare/templateImageShare.js.map +1 -1
  749. package/dist/views/YourBondsModal/components/LinkShare/utils.js +8 -7
  750. package/dist/views/YourBondsModal/components/LinkShare/utils.js.map +1 -1
  751. package/dist/views/YourBondsModal/components/NFTImage/NFTImage.d.ts +1 -2
  752. package/dist/views/YourBondsModal/components/NFTImage/NFTImage.js +8 -86
  753. package/dist/views/YourBondsModal/components/NFTImage/NFTImage.js.map +1 -1
  754. package/dist/views/YourBondsModal/components/Recommendations/CardRecommendation.d.ts +1 -1
  755. package/dist/views/YourBondsModal/components/Recommendations/CardRecommendation.js +2 -15
  756. package/dist/views/YourBondsModal/components/Recommendations/CardRecommendation.js.map +1 -1
  757. package/dist/views/YourBondsModal/components/Recommendations/RecSkeleton.d.ts +1 -2
  758. package/dist/views/YourBondsModal/components/Recommendations/RecSkeleton.js +2 -12
  759. package/dist/views/YourBondsModal/components/Recommendations/RecSkeleton.js.map +1 -1
  760. package/dist/views/YourBondsModal/components/Recommendations/Recommendations.d.ts +1 -2
  761. package/dist/views/YourBondsModal/components/Recommendations/Recommendations.js +5 -9
  762. package/dist/views/YourBondsModal/components/Recommendations/Recommendations.js.map +1 -1
  763. package/dist/views/YourBondsModal/components/TransferBondModal/index.js +5 -9
  764. package/dist/views/YourBondsModal/components/TransferBondModal/index.js.map +1 -1
  765. package/dist/views/YourBondsModal/components/YourBondModalHeader/YourBondModalHeader.d.ts +1 -2
  766. package/dist/views/YourBondsModal/components/YourBondModalHeader/YourBondModalHeader.js +2 -24
  767. package/dist/views/YourBondsModal/components/YourBondModalHeader/YourBondModalHeader.js.map +1 -1
  768. package/package.json +100 -21
  769. package/dist/components/ChainOptionList/styles.d.ts +0 -2
  770. package/dist/components/ChainOptionList/styles.js +0 -54
  771. package/dist/components/ChainOptionList/styles.js.map +0 -1
  772. package/dist/components/ConnectAptosWalletButton/ConnectAptosWalletButton.js.map +0 -1
  773. package/dist/components/ConnectSolanaWalletButton/ConnectSolanaWalletButton.js +0 -19
  774. package/dist/components/ConnectSolanaWalletButton/ConnectSolanaWalletButton.js.map +0 -1
  775. package/dist/components/ConnectoToVmBanners/ConnectToAptosBanner.d.ts +0 -1
  776. package/dist/components/ConnectoToVmBanners/ConnectToAptosBanner.js +0 -50
  777. package/dist/components/ConnectoToVmBanners/ConnectToAptosBanner.js.map +0 -1
  778. package/dist/components/ConnectoToVmBanners/ConnectToEvmBanner.d.ts +0 -1
  779. package/dist/components/ConnectoToVmBanners/ConnectToEvmBanner.js +0 -50
  780. package/dist/components/ConnectoToVmBanners/ConnectToEvmBanner.js.map +0 -1
  781. package/dist/components/ConnectoToVmBanners/ConnectToSolanaBanner.d.ts +0 -1
  782. package/dist/components/ConnectoToVmBanners/ConnectToSolanaBanner.js +0 -49
  783. package/dist/components/ConnectoToVmBanners/ConnectToSolanaBanner.js.map +0 -1
  784. package/dist/components/ConnectoToVmBanners/ConnectToSuiBanner.d.ts +0 -1
  785. package/dist/components/ConnectoToVmBanners/ConnectToSuiBanner.js +0 -45
  786. package/dist/components/ConnectoToVmBanners/ConnectToSuiBanner.js.map +0 -1
  787. package/dist/components/ProgressBar/styles.d.ts +0 -2
  788. package/dist/components/ProgressBar/styles.js +0 -15
  789. package/dist/components/ProgressBar/styles.js.map +0 -1
  790. package/dist/components/Toast/styles.d.ts +0 -3
  791. package/dist/components/Toast/styles.js +0 -30
  792. package/dist/components/Toast/styles.js.map +0 -1
  793. package/dist/components/Tooltip/styles.d.ts +0 -2
  794. package/dist/components/Tooltip/styles.js +0 -32
  795. package/dist/components/Tooltip/styles.js.map +0 -1
  796. package/dist/components/uikit-sdk/Button/styles.d.ts +0 -3
  797. package/dist/components/uikit-sdk/Button/styles.js +0 -31
  798. package/dist/components/uikit-sdk/Button/styles.js.map +0 -1
  799. package/dist/components/uikit-sdk/Modal/styles.d.ts +0 -3
  800. package/dist/components/uikit-sdk/Modal/styles.js +0 -47
  801. package/dist/components/uikit-sdk/Modal/styles.js.map +0 -1
  802. package/dist/components/uikit-sdk/Select/styles.d.ts +0 -4
  803. package/dist/components/uikit-sdk/Select/styles.js +0 -50
  804. package/dist/components/uikit-sdk/Select/styles.js.map +0 -1
  805. package/dist/components/uikit-sdk/Skeleton/styles.d.ts +0 -3
  806. package/dist/components/uikit-sdk/Skeleton/styles.js +0 -43
  807. package/dist/components/uikit-sdk/Skeleton/styles.js.map +0 -1
  808. package/dist/components/uikit-sdk/Toggle/styles.d.ts +0 -3
  809. package/dist/components/uikit-sdk/Toggle/styles.js +0 -22
  810. package/dist/components/uikit-sdk/Toggle/styles.js.map +0 -1
  811. package/dist/components/uikit-sdk/TooltipBubble/styles.d.ts +0 -4
  812. package/dist/components/uikit-sdk/TooltipBubble/styles.js +0 -108
  813. package/dist/components/uikit-sdk/TooltipBubble/styles.js.map +0 -1
  814. package/dist/config/constants/suiZapTokens.js.map +0 -1
  815. package/dist/constants/solanaConstants.js.map +0 -1
  816. package/dist/constants/suiConstants.js.map +0 -1
  817. package/dist/contexts/SwiperProvider.d.ts +0 -12
  818. package/dist/contexts/SwiperProvider.js +0 -21
  819. package/dist/contexts/SwiperProvider.js.map +0 -1
  820. package/dist/hooks/accounts/useEVMAccount.js.map +0 -1
  821. package/dist/hooks/accounts/useSOLAccount.js.map +0 -1
  822. package/dist/hooks/accounts/useSUIAccount.d.ts +0 -7
  823. package/dist/hooks/accounts/useSUIAccount.js.map +0 -1
  824. package/dist/hooks/useMonitorTx.js.map +0 -1
  825. package/dist/hooks/useSwiper.d.ts +0 -2
  826. package/dist/hooks/useSwiper.js +0 -13
  827. package/dist/hooks/useSwiper.js.map +0 -1
  828. package/dist/providers/AptosWalletProvider.d.ts +0 -5
  829. package/dist/providers/SolanaWalletProvider.d.ts +0 -5
  830. package/dist/providers/SuiWalletProvider.d.ts +0 -5
  831. package/dist/state/allowance/useAllowance.js.map +0 -1
  832. package/dist/state/balance/useCurrencyBalanceAptos.js.map +0 -1
  833. package/dist/state/balance/useCurrencyBalanceSolana.js.map +0 -1
  834. package/dist/state/balance/useCurrencyBalanceSui.js.map +0 -1
  835. package/dist/state/bonds/fetchBondsData/cleanBillsData.d.ts +0 -4
  836. package/dist/state/bonds/fetchBondsData/cleanBillsData.js +0 -142
  837. package/dist/state/bonds/fetchBondsData/cleanBillsData.js.map +0 -1
  838. package/dist/state/bonds/fetchBondsData/fetchBondsDataAptos.js.map +0 -1
  839. package/dist/state/bonds/fetchBondsData/fetchBondsDataEVM.js +0 -89
  840. package/dist/state/bonds/fetchBondsData/fetchBondsDataEVM.js.map +0 -1
  841. package/dist/state/bonds/fetchBondsData/fetchBondsDataPreTGE.js.map +0 -1
  842. package/dist/state/bonds/fetchBondsData/fetchBondsDataSOL.d.ts +0 -3
  843. package/dist/state/bonds/fetchBondsData/fetchBondsDataSOL.js +0 -68
  844. package/dist/state/bonds/fetchBondsData/fetchBondsDataSOL.js.map +0 -1
  845. package/dist/state/bonds/fetchBondsData/fetchBondsDataSui.js.map +0 -1
  846. package/dist/state/bonds/fetchUsersBonds/fetchUsersBondsAptos.js.map +0 -1
  847. package/dist/state/bonds/fetchUsersBonds/fetchUsersBondsEVM.js.map +0 -1
  848. package/dist/state/bonds/fetchUsersBonds/fetchUsersBondsSOL.js.map +0 -1
  849. package/dist/state/bonds/fetchUsersBonds/fetchUsersBondsSUI.js.map +0 -1
  850. package/dist/state/bonds/useTierProofSignature.js.map +0 -1
  851. package/dist/state/zap/useAptosZapQuote.js.map +0 -1
  852. package/dist/state/zap/useJupiterSolanaQuote.js.map +0 -1
  853. package/dist/state/zap/useSoulZapBondQuote.js.map +0 -1
  854. package/dist/state/zap/useSuiZapQuote.js.map +0 -1
  855. package/dist/theme/base.d.ts +0 -109
  856. package/dist/theme/base.js +0 -125
  857. package/dist/theme/base.js.map +0 -1
  858. package/dist/theme/colors.d.ts +0 -20
  859. package/dist/theme/colors.js +0 -25
  860. package/dist/theme/colors.js.map +0 -1
  861. package/dist/theme/components.d.ts +0 -411
  862. package/dist/theme/components.js +0 -365
  863. package/dist/theme/components.js.map +0 -1
  864. package/dist/theme/index.d.ts +0 -2
  865. package/dist/theme/index.js +0 -12
  866. package/dist/theme/index.js.map +0 -1
  867. package/dist/types/bondCodec.js.map +0 -1
  868. package/dist/types/bondIssuanceCodec.js.map +0 -1
  869. package/dist/types/bondPricingCodec.js.map +0 -1
  870. package/dist/types/bondTermCodec.js.map +0 -1
  871. package/dist/utils/aptosHelpers.js.map +0 -1
  872. package/dist/utils/calculateSolanaTrueBillPrice.js.map +0 -1
  873. package/dist/utils/derivePda.js.map +0 -1
  874. package/dist/utils/getDotPos.d.ts +0 -1
  875. package/dist/utils/getDotPos.js +0 -12
  876. package/dist/utils/getDotPos.js.map +0 -1
  877. package/dist/utils/getSolanaAccount.js.map +0 -1
  878. package/dist/utils/multicall.js.map +0 -1
  879. package/dist/utils/solanaAtaHelper.js.map +0 -1
  880. package/dist/utils/solanaMulticall.js.map +0 -1
  881. package/dist/utils/solanaRpc.d.ts +0 -1
  882. package/dist/utils/solanaRpc.js.map +0 -1
  883. package/dist/utils/suiHelpers.js.map +0 -1
  884. package/dist/views/Bonds/components/BondRows/ModalHandlerPreTGE.js.map +0 -1
  885. package/dist/views/Bonds/components/HotBondCards/styles.d.ts +0 -35
  886. package/dist/views/Bonds/components/HotBondCards/styles.js +0 -38
  887. package/dist/views/Bonds/components/HotBondCards/styles.js.map +0 -1
  888. package/dist/views/Bonds/components/RecommendationCards/styles.d.ts +0 -2
  889. package/dist/views/Bonds/components/RecommendationCards/styles.js +0 -24
  890. package/dist/views/Bonds/components/RecommendationCards/styles.js.map +0 -1
  891. package/dist/views/BuyBond/BuyComponent.d.ts +0 -11
  892. package/dist/views/BuyBond/BuyComponent.js.map +0 -1
  893. package/dist/views/BuyBond/BuyComponentAptos.js.map +0 -1
  894. package/dist/views/BuyBond/BuyComponentPreTGE.js +0 -147
  895. package/dist/views/BuyBond/BuyComponentPreTGE.js.map +0 -1
  896. package/dist/views/BuyBond/BuyComponentSolana.js.map +0 -1
  897. package/dist/views/BuyBond/BuyComponentSui.js.map +0 -1
  898. package/dist/views/BuyBond/components/GetUpToComponent/GetUpToComponent.js +0 -61
  899. package/dist/views/BuyBond/components/GetUpToComponent/GetUpToComponent.js.map +0 -1
  900. package/dist/views/BuyBond/styles.d.ts +0 -2
  901. package/dist/views/BuyBond/styles.js +0 -33
  902. package/dist/views/BuyBond/styles.js.map +0 -1
  903. package/dist/views/LifiModal/LifiModal.d.ts +0 -7
  904. package/dist/views/LifiModal/LifiModal.js.map +0 -1
  905. package/dist/views/ProjectView/components/BondLeaderboard/components/styles.d.ts +0 -2
  906. package/dist/views/ProjectView/components/BondLeaderboard/components/styles.js +0 -51
  907. package/dist/views/ProjectView/components/BondLeaderboard/components/styles.js.map +0 -1
  908. package/dist/views/ProjectView/components/BondStats/styles.d.ts +0 -2
  909. package/dist/views/ProjectView/components/BondStats/styles.js +0 -49
  910. package/dist/views/ProjectView/components/BondStats/styles.js.map +0 -1
  911. package/dist/views/ProjectView/components/PriceChart/styles.d.ts +0 -2
  912. package/dist/views/ProjectView/components/PriceChart/styles.js +0 -44
  913. package/dist/views/ProjectView/components/PriceChart/styles.js.map +0 -1
  914. package/dist/views/ProjectView/components/ProjectInfo/styles.d.ts +0 -2
  915. package/dist/views/ProjectView/components/ProjectInfo/styles.js +0 -21
  916. package/dist/views/ProjectView/components/ProjectInfo/styles.js.map +0 -1
  917. package/dist/views/ProjectView/styles.d.ts +0 -2
  918. package/dist/views/ProjectView/styles.js +0 -10
  919. package/dist/views/ProjectView/styles.js.map +0 -1
  920. package/dist/views/TransactionModal/TransactionModal.js +0 -195
  921. package/dist/views/TransactionModal/TransactionModal.js.map +0 -1
  922. package/dist/views/YourBonds/components/UserBondRow/PreTGEActions.d.ts +0 -6
  923. package/dist/views/YourBonds/components/UserBondRow/PreTGEActions.js.map +0 -1
  924. package/dist/views/YourBonds/components/UserBondRow/UserBondRow.d.ts +0 -6
  925. package/dist/views/YourBonds/components/UserBondRow/UserBondRow.js +0 -136
  926. package/dist/views/YourBonds/components/UserBondRow/UserBondRow.js.map +0 -1
  927. package/dist/views/YourBonds/components/UserBondRow/UserBondRowAptos.d.ts +0 -6
  928. package/dist/views/YourBonds/components/UserBondRow/UserBondRowAptos.js +0 -109
  929. package/dist/views/YourBonds/components/UserBondRow/UserBondRowAptos.js.map +0 -1
  930. package/dist/views/YourBonds/components/UserBondRow/UserBondRowPreTGE.d.ts +0 -6
  931. package/dist/views/YourBonds/components/UserBondRow/UserBondRowPreTGE.js +0 -43
  932. package/dist/views/YourBonds/components/UserBondRow/UserBondRowPreTGE.js.map +0 -1
  933. package/dist/views/YourBonds/components/UserBondRow/UserBondRowSolana.d.ts +0 -6
  934. package/dist/views/YourBonds/components/UserBondRow/UserBondRowSolana.js.map +0 -1
  935. package/dist/views/YourBonds/components/UserBondRow/UserBondRowSui.d.ts +0 -6
  936. package/dist/views/YourBonds/components/UserBondRow/UserBondRowSui.js +0 -126
  937. package/dist/views/YourBonds/components/UserBondRow/UserBondRowSui.js.map +0 -1
  938. package/dist/views/YourBonds/components/UserBondRow/UserBondRowYield.d.ts +0 -6
  939. package/dist/views/YourBonds/components/UserBondRow/UserBondRowYield.js +0 -50
  940. package/dist/views/YourBonds/components/UserBondRow/UserBondRowYield.js.map +0 -1
  941. package/dist/views/YourBonds/components/UserBondRow/index.d.ts +0 -5
  942. package/dist/views/YourBondsModal/components/Actions/Actions.d.ts +0 -6
  943. package/dist/views/YourBondsModal/components/Actions/Actions.js.map +0 -1
  944. package/dist/views/YourBondsModal/components/Actions/ActionsAptos.d.ts +0 -6
  945. package/dist/views/YourBondsModal/components/Actions/ActionsAptos.js.map +0 -1
  946. package/dist/views/YourBondsModal/components/Actions/ActionsSolana.d.ts +0 -6
  947. package/dist/views/YourBondsModal/components/Actions/ActionsSolana.js.map +0 -1
  948. package/dist/views/YourBondsModal/components/Actions/ActionsSui.d.ts +0 -6
  949. package/dist/views/YourBondsModal/components/Actions/ActionsSui.js.map +0 -1
  950. package/dist/views/YourBondsModal/components/TransferBondModal/TransferAction.js.map +0 -1
  951. package/dist/views/YourBondsModal/components/TransferBondModal/TransferActionAptos.js.map +0 -1
  952. package/dist/views/YourBondsModal/components/TransferBondModal/TransferActionSolana.js.map +0 -1
  953. package/dist/views/YourBondsModal/components/TransferBondModal/TransferActionSui.js.map +0 -1
  954. package/dist/views/YourBondsModalYield/YourBondsModalYield.js +0 -220
  955. package/dist/views/YourBondsModalYield/YourBondsModalYield.js.map +0 -1
  956. package/dist/views/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.js +0 -71
  957. package/dist/views/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.js.map +0 -1
  958. package/dist/views/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.js +0 -32
  959. package/dist/views/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.js.map +0 -1
  960. /package/dist/{views/BuyBond → adapters/aptos}/BuyComponentAptos.d.ts +0 -0
  961. /package/dist/{types → adapters/aptos}/aptosBonds.d.ts +0 -0
  962. /package/dist/{hooks/accounts → adapters/aptos}/useAPTAccount.d.ts +0 -0
  963. /package/dist/{state/zap → adapters/aptos}/useAptosZapQuote.d.ts +0 -0
  964. /package/dist/{state/balance → adapters/aptos}/useCurrencyBalanceAptos.d.ts +0 -0
  965. /package/dist/{utils → adapters/evm}/multicall.d.ts +0 -0
  966. /package/dist/{state/allowance → adapters/evm}/useAllowance.d.ts +0 -0
  967. /package/dist/{hooks/accounts → adapters/evm}/useEVMAccount.d.ts +0 -0
  968. /package/dist/{hooks/accounts → adapters/evm}/useEVMAccount.js +0 -0
  969. /package/dist/{hooks → adapters/evm}/useMonitorTx.d.ts +0 -0
  970. /package/dist/{state/zap → adapters/evm}/useSoulZapBondQuote.d.ts +0 -0
  971. /package/dist/{state/bonds → adapters/evm}/useTierProofSignature.d.ts +0 -0
  972. /package/dist/{views/BuyBond → adapters/solana}/BuyComponentSolana.d.ts +0 -0
  973. /package/dist/{utils → adapters/solana}/calculateSolanaTrueBillPrice.d.ts +0 -0
  974. /package/dist/{types → adapters/solana/codecs}/index.d.ts +0 -0
  975. /package/dist/{utils → adapters/solana}/derivePda.d.ts +0 -0
  976. /package/dist/{utils → adapters/solana}/derivePda.js +0 -0
  977. /package/dist/{types → adapters/solana}/helius.d.ts +0 -0
  978. /package/dist/{utils → adapters/solana}/solanaAtaHelper.d.ts +0 -0
  979. /package/dist/{utils → adapters/solana}/solanaAtaHelper.js +0 -0
  980. /package/dist/{types → adapters/solana}/solanaBonds.d.ts +0 -0
  981. /package/dist/{constants → adapters/solana}/solanaConstants.d.ts +0 -0
  982. /package/dist/{utils → adapters/solana}/solanaMulticall.d.ts +0 -0
  983. /package/dist/{utils → adapters/solana}/solanaMulticall.js +0 -0
  984. /package/dist/{state/zap → adapters/solana}/useJupiterSolanaQuote.d.ts +0 -0
  985. /package/dist/{state/zap → adapters/solana}/useJupiterSolanaQuote.js +0 -0
  986. /package/dist/{hooks/accounts → adapters/solana}/useSOLAccount.d.ts +0 -0
  987. /package/dist/{hooks/accounts → adapters/solana}/useSOLAccount.js +0 -0
  988. /package/dist/{views/BuyBond → adapters/sui}/BuyComponentSui.d.ts +0 -0
  989. /package/dist/{constants → adapters/sui}/suiConstants.d.ts +0 -0
  990. /package/dist/{constants → adapters/sui}/suiConstants.js +0 -0
  991. /package/dist/{utils → adapters/sui}/suiHelpers.d.ts +0 -0
  992. /package/dist/{config/constants → adapters/sui}/suiZapTokens.d.ts +0 -0
  993. /package/dist/{config/constants → adapters/sui}/suiZapTokens.js +0 -0
  994. /package/dist/{state/balance → adapters/sui}/useCurrencyBalanceSui.d.ts +0 -0
  995. /package/dist/{state/zap → adapters/sui}/useSuiZapQuote.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"useBondsData.js","sources":["../../../src/state/bonds/useBondsData.ts"],"sourcesContent":["import { QueryClient, useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { BondsData } from '../../types/bonds'\nimport axios from 'axios'\nimport { SDKProps } from '../useSDKConfig'\nimport useTokenPrices, { TokenPrices } from '../tokenPrices/useTokenPrices'\nimport useBondsList from './useBondsList'\nimport { BillsConfig, ChainId, PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport useBondsListPreTGE from '../bonds/useBondsListPreTGE'\nimport { fetchBondsDataPreTGE } from './fetchBondsData/fetchBondsDataPreTGE'\nimport { fetchBondsDataEVM } from './fetchBondsData/fetchBondsDataEVM'\nimport { fetchBondsDataAptos } from './fetchBondsData/fetchBondsDataAptos'\nimport { fetchBondsDataSUI } from './fetchBondsData/fetchBondsDataSui'\nimport { fetchBondsDataSOL } from './fetchBondsData/fetchBondsDataSOL'\n\nexport default function useBondsData(): UseQueryResult<BondsData[]> {\n const { data: bondList } = useBondsList()\n const { data: preTGEList } = useBondsListPreTGE()\n const { data: tokenPrices } = useTokenPrices()\n const tokenPricesKey = Object.keys(tokenPrices ?? {})?.length\n\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_DATA],\n queryFn: ({ client }) => calculateBondsData(client),\n refetchInterval: 25000, // i.e. 25 sec\n enabled: !!bondList && !!preTGEList && !!tokenPricesKey,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n refetchOnReconnect: false,\n retry: 0,\n staleTime: 25000, // i.e. 25 sec\n })\n}\n\nexport const calculateBondsData = async (queryClient: QueryClient): Promise<BondsData[]> => {\n // ----------------------- Step 1 -----------------------\n // Fetch necessary data from the queryClient\n const { chains, urls } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const realTimeApiUrl = urls['realTimeApi']\n const apiUrl = urls['apiV2']\n\n // ----------------------- Step 2 -----------------------\n // Fetch EVM & SOL data from realtime\n let evmSolBondsData: BondsData[] = []\n\n try {\n // For EVM & SOL we first try to fetch from realtime, if it fails we trigger the fallback strategy.\n const realTimeApiResponse = await axios.get(`${realTimeApiUrl}/bonds`)\n evmSolBondsData = realTimeApiResponse.data.bonds.filter((bond: BondsData) => chains.includes(bond.chainId))\n } catch {\n // Fallback strategy\n console.time('Fallback BondsData')\n const bondList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST]) as Record<ChainId, BillsConfig[]>\n const preTGEList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST_PRE_TGE]) as PreTGEConfig[]\n const tokenPrices = queryClient?.getQueryData([QUERY_KEYS.TOKEN_PRICES]) as Partial<Record<ChainId, TokenPrices[]>>\n const billData = await Promise.all([\n ...chains\n .filter((c) => c !== ChainId.APTOS && c !== ChainId.SUI)\n .map(async (chainId: ChainId) => {\n if (!bondList[chainId]) return []\n return chainId === ChainId.SOL\n ? await fetchBondsDataSOL(bondList[chainId], apiUrl, tokenPrices[chainId])\n : await fetchBondsDataEVM(chainId, bondList[chainId], apiUrl, tokenPrices[chainId])\n }),\n ...chains.map(async (chainId: ChainId) => {\n const filteredBonds = preTGEList?.filter((bond) => bond.chainId === chainId) ?? []\n return await fetchBondsDataPreTGE(chainId, tokenPrices, filteredBonds, apiUrl)\n }),\n ])\n console.timeEnd('Fallback BondsData')\n evmSolBondsData = billData.flat()\n }\n\n // ----------------------- Step 3 -----------------------\n // Fetch Aptos & Sui Bonds data\n let aptosBonds: BondsData[] = []\n let suiBonds: BondsData[] = []\n const includesAptos = chains.includes(ChainId.APTOS)\n const includesSui = chains.includes(ChainId.SUI)\n\n if (includesAptos || includesSui) {\n try {\n const bondList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST]) as Record<ChainId, BillsConfig[]>\n const tokenPrices = queryClient?.getQueryData([QUERY_KEYS.TOKEN_PRICES]) as Partial<\n Record<ChainId, TokenPrices[]>\n >\n if (includesAptos && includesSui) {\n const [aptos, sui] = await Promise.all([\n fetchBondsDataAptos(bondList[ChainId.APTOS], tokenPrices[ChainId.APTOS]),\n fetchBondsDataSUI(bondList[ChainId.SUI], tokenPrices[ChainId.SUI]),\n ])\n aptosBonds = aptos\n suiBonds = sui\n } else if (includesAptos) {\n aptosBonds = await fetchBondsDataAptos(bondList[ChainId.APTOS], tokenPrices[ChainId.APTOS])\n } else if (includesSui) {\n suiBonds = await fetchBondsDataSUI(bondList[ChainId.SUI], tokenPrices[ChainId.SUI])\n }\n } catch (e) {\n console.error(e)\n }\n }\n\n return [...evmSolBondsData, ...aptosBonds, ...suiBonds]\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useBondsData.js","sources":["../../../src/state/bonds/useBondsData.ts"],"sourcesContent":["import { QueryClient, useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { BondsData } from '../../types/bonds'\nimport { apiGet } from '../../utils/httpClient'\nimport { SDKProps } from '../useSDKConfig'\nimport useTokenPrices, { TokenPrices } from '../tokenPrices/useTokenPrices'\nimport useBondsList from './useBondsList'\nimport { BillsConfig, ChainId, PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport useBondsListPreTGE from '../bonds/useBondsListPreTGE'\nimport { getAdapterForChain } from '../../adapters/registry'\n\nexport default function useBondsData(): UseQueryResult<BondsData[]> {\n const { data: bondList } = useBondsList()\n const { data: preTGEList } = useBondsListPreTGE()\n const { data: tokenPrices } = useTokenPrices()\n const tokenPricesKey = Object.keys(tokenPrices ?? {})?.length\n\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_DATA],\n queryFn: ({ client }) => calculateBondsData(client),\n refetchInterval: 25000, // i.e. 25 sec\n enabled: !!bondList && !!preTGEList && !!tokenPricesKey,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n refetchOnReconnect: false,\n retry: 0,\n staleTime: 25000, // i.e. 25 sec\n })\n}\n\nexport const calculateBondsData = async (queryClient: QueryClient): Promise<BondsData[]> => {\n // ----------------------- Step 1 -----------------------\n // Fetch necessary data from the queryClient\n const { chains, urls } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const realTimeApiUrl = urls['realTimeApi']\n const apiUrl = urls['apiV2']\n\n // Adapters that don't use the realtime API are read on-chain in step 3. Chains without a registered adapter are\n // unsupported.\n const usesRealtimeApi = (chainId: ChainId) => getAdapterForChain(chainId)?.usesRealtimeApi ?? false\n\n // ----------------------- Step 2 -----------------------\n // Fetch the realtime-API adapters' bonds (EVM incl. PreTGE, Solana)\n let evmSolBondsData: BondsData[] = []\n\n try {\n // We first try to fetch from realtime; if it fails we fall back to each adapter's on-chain reads.\n const realTimeApiResponse = await apiGet<{ bonds: BondsData[] }>(`${realTimeApiUrl}/bonds`)\n evmSolBondsData = realTimeApiResponse.bonds.filter(\n (bond: BondsData) => chains.includes(bond.chainId) && usesRealtimeApi(bond.chainId),\n )\n } catch {\n // Fallback strategy\n console.time('Fallback BondsData')\n const bondList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST]) as Record<ChainId, BillsConfig[]>\n const preTGEList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST_PRE_TGE]) as PreTGEConfig[]\n const tokenPrices = queryClient?.getQueryData([QUERY_KEYS.TOKEN_PRICES]) as Partial<Record<ChainId, TokenPrices[]>>\n const billData = await Promise.all([\n ...chains\n .filter((c) => usesRealtimeApi(c))\n .map(async (chainId: ChainId) => {\n if (!bondList[chainId]) return []\n return await getAdapterForChain(chainId)!.fetchBondsData(\n chainId,\n bondList[chainId],\n tokenPrices[chainId],\n apiUrl,\n )\n }),\n ...chains.map(async (chainId: ChainId) => {\n const preTGE = getAdapterForChain(chainId)?.preTGE\n if (!preTGE) return []\n const filteredBonds = preTGEList?.filter((bond) => bond.chainId === chainId) ?? []\n return await preTGE.fetchBondsData(chainId, tokenPrices, filteredBonds, apiUrl)\n }),\n ])\n console.timeEnd('Fallback BondsData')\n evmSolBondsData = billData.flat()\n }\n\n // ----------------------- Step 3 -----------------------\n // Fetch on-chain-only bonds: adapters that don't use the realtime API (e.g. Aptos, Sui)\n let onChainBonds: BondsData[] = []\n const onChainAdapterChains = (chains as ChainId[]).filter((chainId) => {\n const adapter = getAdapterForChain(chainId)\n return !!adapter && !adapter.usesRealtimeApi\n })\n\n if (onChainAdapterChains.length > 0) {\n try {\n const bondList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST]) as Record<ChainId, BillsConfig[]>\n const tokenPrices = queryClient?.getQueryData([QUERY_KEYS.TOKEN_PRICES]) as Partial<\n Record<ChainId, TokenPrices[]>\n >\n const results = await Promise.all(\n onChainAdapterChains.map((chainId) =>\n getAdapterForChain(chainId)!.fetchBondsData(chainId, bondList[chainId] ?? [], tokenPrices[chainId], apiUrl),\n ),\n )\n onChainBonds = results.flat()\n } catch (e) {\n console.error(e)\n }\n }\n\n return [...evmSolBondsData, ...onChainBonds]\n}\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { useQuery } from '@tanstack/react-query';
2
2
  import { QUERY_KEYS } from '../../config/constants/queryKeys.js';
3
- import axios from 'axios';
3
+ import { apiGet } from '../../utils/httpClient.js';
4
4
  import { BillVersion } from '@ape.swap/apeswap-lists';
5
5
  import { ACF_TO_ABOND } from '../../config/constants/addresses.js';
6
6
 
@@ -16,8 +16,7 @@ function useBondsList() {
16
16
  const getBondsList = async (queryClient) => {
17
17
  const { urls, customBranch, chains } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]);
18
18
  const realTimeApiURL = urls['realTimeApi'];
19
- const response = await axios.get(`${realTimeApiURL}/utils/bonds${customBranch ? `?branch=${customBranch}` : ''}`);
20
- const bondList = response.data;
19
+ const bondList = await apiGet(`${realTimeApiURL}/utils/bonds${customBranch ? `?branch=${customBranch}` : ''}`);
21
20
  return bondList.reduce((acc, bond) => {
22
21
  // Exclude ACF to ABOND bonds, fixed price bonds, and migration bonds
23
22
  if (bond.contractAddress[bond.chainId]?.toLowerCase() === ACF_TO_ABOND.toLowerCase() ||
@@ -1 +1 @@
1
- {"version":3,"file":"useBondsList.js","sources":["../../../src/state/bonds/useBondsList.ts"],"sourcesContent":["import { QueryClient, useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport axios from 'axios'\nimport { BillsConfig, BillVersion, ChainId } from '@ape.swap/apeswap-lists'\nimport { SDKProps } from '../useSDKConfig'\nimport { ACF_TO_ABOND } from '../../config/constants/addresses'\n\nexport default function useBondsList(): UseQueryResult<Record<ChainId, BillsConfig[]>> {\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_LIST],\n queryFn: ({ client }) => getBondsList(client),\n staleTime: Infinity,\n refetchInterval: 600000, // 10 min\n refetchOnWindowFocus: false,\n })\n}\n\nconst getBondsList = async (queryClient: QueryClient): Promise<Record<ChainId, BillsConfig[]>> => {\n const { urls, customBranch, chains } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const realTimeApiURL = urls['realTimeApi']\n\n const response = await axios.get(`${realTimeApiURL}/utils/bonds${customBranch ? `?branch=${customBranch}` : ''}`)\n const bondList: BillsConfig[] = response.data\n return bondList.reduce(\n (acc, bond) => {\n // Exclude ACF to ABOND bonds, fixed price bonds, and migration bonds\n if (\n bond.contractAddress[bond.chainId]?.toLowerCase() === ACF_TO_ABOND.toLowerCase() ||\n bond.billVersion === BillVersion.FixedPrice ||\n bond.billType === 'migration'\n ) {\n return acc\n }\n\n // Only process bonds that belong to the chains selected by the user\n if (chains.includes(bond.chainId)) {\n // Initialize acc[bond.chainId] if it doesn't exist yet\n if (!acc[bond.chainId]) {\n acc[bond.chainId] = []\n }\n\n // Safely push the bond to the array\n acc[bond.chainId].push(bond)\n }\n return acc\n },\n {} as Record<number, BillsConfig[]>,\n )\n}\n"],"names":[],"mappings":";;;;;;AAOc,SAAU,YAAY,GAAA;AAClC,IAAA,OAAO,QAAQ,CAAC;AACd,QAAA,QAAQ,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QACjC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,YAAY,CAAC,MAAM,CAAC;AAC7C,QAAA,SAAS,EAAE,QAAQ;QACnB,eAAe,EAAE,MAAM;AACvB,QAAA,oBAAoB,EAAE,KAAK;AAC5B,KAAA,CAAC;AACJ;AAEA,MAAM,YAAY,GAAG,OAAO,WAAwB,KAA6C;AAC/F,IAAA,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAa;AACrG,IAAA,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;IAE1C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA,EAAG,cAAc,CAAA,YAAA,EAAe,YAAY,GAAG,CAAA,QAAA,EAAW,YAAY,CAAA,CAAE,GAAG,EAAE,CAAA,CAAE,CAAC;AACjH,IAAA,MAAM,QAAQ,GAAkB,QAAQ,CAAC,IAAI;IAC7C,OAAO,QAAQ,CAAC,MAAM,CACpB,CAAC,GAAG,EAAE,IAAI,KAAI;;AAEZ,QAAA,IACE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,KAAK,YAAY,CAAC,WAAW,EAAE;AAChF,YAAA,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,UAAU;AAC3C,YAAA,IAAI,CAAC,QAAQ,KAAK,WAAW,EAC7B;AACA,YAAA,OAAO,GAAG;QACZ;;QAGA,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;;YAEjC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;AACtB,gBAAA,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;YACxB;;YAGA,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC9B;AACA,QAAA,OAAO,GAAG;IACZ,CAAC,EACD,EAAmC,CACpC;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"useBondsList.js","sources":["../../../src/state/bonds/useBondsList.ts"],"sourcesContent":["import { QueryClient, useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { apiGet } from '../../utils/httpClient'\nimport { BillsConfig, BillVersion, ChainId } from '@ape.swap/apeswap-lists'\nimport { SDKProps } from '../useSDKConfig'\nimport { ACF_TO_ABOND } from '../../config/constants/addresses'\n\nexport default function useBondsList(): UseQueryResult<Record<ChainId, BillsConfig[]>> {\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_LIST],\n queryFn: ({ client }) => getBondsList(client),\n staleTime: Infinity,\n refetchInterval: 600000, // 10 min\n refetchOnWindowFocus: false,\n })\n}\n\nconst getBondsList = async (queryClient: QueryClient): Promise<Record<ChainId, BillsConfig[]>> => {\n const { urls, customBranch, chains } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const realTimeApiURL = urls['realTimeApi']\n\n const bondList = await apiGet<BillsConfig[]>(\n `${realTimeApiURL}/utils/bonds${customBranch ? `?branch=${customBranch}` : ''}`,\n )\n return bondList.reduce(\n (acc, bond) => {\n // Exclude ACF to ABOND bonds, fixed price bonds, and migration bonds\n if (\n bond.contractAddress[bond.chainId]?.toLowerCase() === ACF_TO_ABOND.toLowerCase() ||\n bond.billVersion === BillVersion.FixedPrice ||\n bond.billType === 'migration'\n ) {\n return acc\n }\n\n // Only process bonds that belong to the chains selected by the user\n if (chains.includes(bond.chainId)) {\n // Initialize acc[bond.chainId] if it doesn't exist yet\n if (!acc[bond.chainId]) {\n acc[bond.chainId] = []\n }\n\n // Safely push the bond to the array\n acc[bond.chainId].push(bond)\n }\n return acc\n },\n {} as Record<number, BillsConfig[]>,\n )\n}\n"],"names":[],"mappings":";;;;;;AAOc,SAAU,YAAY,GAAA;AAClC,IAAA,OAAO,QAAQ,CAAC;AACd,QAAA,QAAQ,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QACjC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,YAAY,CAAC,MAAM,CAAC;AAC7C,QAAA,SAAS,EAAE,QAAQ;QACnB,eAAe,EAAE,MAAM;AACvB,QAAA,oBAAoB,EAAE,KAAK;AAC5B,KAAA,CAAC;AACJ;AAEA,MAAM,YAAY,GAAG,OAAO,WAAwB,KAA6C;AAC/F,IAAA,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAa;AACrG,IAAA,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;IAE1C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAC3B,CAAA,EAAG,cAAc,eAAe,YAAY,GAAG,CAAA,QAAA,EAAW,YAAY,CAAA,CAAE,GAAG,EAAE,CAAA,CAAE,CAChF;IACD,OAAO,QAAQ,CAAC,MAAM,CACpB,CAAC,GAAG,EAAE,IAAI,KAAI;;AAEZ,QAAA,IACE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,KAAK,YAAY,CAAC,WAAW,EAAE;AAChF,YAAA,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,UAAU;AAC3C,YAAA,IAAI,CAAC,QAAQ,KAAK,WAAW,EAC7B;AACA,YAAA,OAAO,GAAG;QACZ;;QAGA,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;;YAEjC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;AACtB,gBAAA,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;YACxB;;YAGA,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC9B;AACA,QAAA,OAAO,GAAG;IACZ,CAAC,EACD,EAAmC,CACpC;AACH,CAAC;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { useQueryClient, useQuery } from '@tanstack/react-query';
2
2
  import { QUERY_KEYS } from '../../config/constants/queryKeys.js';
3
- import axios from 'axios';
3
+ import { apiGet } from '../../utils/httpClient.js';
4
4
 
5
5
  function useBondsListPreTGE() {
6
6
  const queryClient = useQueryClient();
@@ -15,8 +15,7 @@ function useBondsListPreTGE() {
15
15
  const getPreTGEList = async (queryClient) => {
16
16
  const { urls, customBranch } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]);
17
17
  const realTimeApiURL = urls['realTimeApi'];
18
- const response = await axios.get(`${realTimeApiURL}/utils/pre-tge-bonds${customBranch ? `?branch=${customBranch}` : ''}`);
19
- return response.data;
18
+ return apiGet(`${realTimeApiURL}/utils/pre-tge-bonds${customBranch ? `?branch=${customBranch}` : ''}`);
20
19
  };
21
20
 
22
21
  export { useBondsListPreTGE as default };
@@ -1 +1 @@
1
- {"version":3,"file":"useBondsListPreTGE.js","sources":["../../../src/state/bonds/useBondsListPreTGE.ts"],"sourcesContent":["import { QueryClient, useQuery, useQueryClient, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport axios from 'axios'\nimport { PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport { SDKProps } from '../useSDKConfig'\n\nexport default function useBondsListPreTGE(): UseQueryResult<PreTGEConfig[]> {\n const queryClient = useQueryClient()\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_LIST_PRE_TGE],\n queryFn: () => getPreTGEList(queryClient),\n staleTime: Infinity,\n refetchInterval: 300000, // 5 min\n refetchOnWindowFocus: false,\n })\n}\n\nconst getPreTGEList = async (queryClient: QueryClient): Promise<PreTGEConfig[]> => {\n const { urls, customBranch } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const realTimeApiURL = urls['realTimeApi']\n const response = await axios.get(\n `${realTimeApiURL}/utils/pre-tge-bonds${customBranch ? `?branch=${customBranch}` : ''}`,\n )\n return response.data\n}\n"],"names":[],"mappings":";;;;AAMc,SAAU,kBAAkB,GAAA;AACxC,IAAA,MAAM,WAAW,GAAG,cAAc,EAAE;AACpC,IAAA,OAAO,QAAQ,CAAC;AACd,QAAA,QAAQ,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;AACzC,QAAA,OAAO,EAAE,MAAM,aAAa,CAAC,WAAW,CAAC;AACzC,QAAA,SAAS,EAAE,QAAQ;QACnB,eAAe,EAAE,MAAM;AACvB,QAAA,oBAAoB,EAAE,KAAK;AAC5B,KAAA,CAAC;AACJ;AAEA,MAAM,aAAa,GAAG,OAAO,WAAwB,KAA6B;AAChF,IAAA,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAa;AAC7F,IAAA,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;IAC1C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAC9B,CAAA,EAAG,cAAc,CAAA,oBAAA,EAAuB,YAAY,GAAG,CAAA,QAAA,EAAW,YAAY,CAAA,CAAE,GAAG,EAAE,CAAA,CAAE,CACxF;IACD,OAAO,QAAQ,CAAC,IAAI;AACtB,CAAC;;;;"}
1
+ {"version":3,"file":"useBondsListPreTGE.js","sources":["../../../src/state/bonds/useBondsListPreTGE.ts"],"sourcesContent":["import { QueryClient, useQuery, useQueryClient, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { apiGet } from '../../utils/httpClient'\nimport { PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport { SDKProps } from '../useSDKConfig'\n\nexport default function useBondsListPreTGE(): UseQueryResult<PreTGEConfig[]> {\n const queryClient = useQueryClient()\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_LIST_PRE_TGE],\n queryFn: () => getPreTGEList(queryClient),\n staleTime: Infinity,\n refetchInterval: 300000, // 5 min\n refetchOnWindowFocus: false,\n })\n}\n\nconst getPreTGEList = async (queryClient: QueryClient): Promise<PreTGEConfig[]> => {\n const { urls, customBranch } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const realTimeApiURL = urls['realTimeApi']\n return apiGet<PreTGEConfig[]>(\n `${realTimeApiURL}/utils/pre-tge-bonds${customBranch ? `?branch=${customBranch}` : ''}`,\n )\n}\n"],"names":[],"mappings":";;;;AAMc,SAAU,kBAAkB,GAAA;AACxC,IAAA,MAAM,WAAW,GAAG,cAAc,EAAE;AACpC,IAAA,OAAO,QAAQ,CAAC;AACd,QAAA,QAAQ,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;AACzC,QAAA,OAAO,EAAE,MAAM,aAAa,CAAC,WAAW,CAAC;AACzC,QAAA,SAAS,EAAE,QAAQ;QACnB,eAAe,EAAE,MAAM;AACvB,QAAA,oBAAoB,EAAE,KAAK;AAC5B,KAAA,CAAC;AACJ;AAEA,MAAM,aAAa,GAAG,OAAO,WAAwB,KAA6B;AAChF,IAAA,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAa;AAC7F,IAAA,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;AAC1C,IAAA,OAAO,MAAM,CACX,CAAA,EAAG,cAAc,CAAA,oBAAA,EAAuB,YAAY,GAAG,CAAA,QAAA,EAAW,YAAY,EAAE,GAAG,EAAE,CAAA,CAAE,CACxF;AACH,CAAC;;;;"}
@@ -1,5 +1,7 @@
1
1
  import { QueryClient, UseQueryResult } from '@tanstack/react-query';
2
2
  import { BillsConfig, ChainId } from '@ape.swap/apeswap-lists';
3
3
  import { UserBill } from '../../types/yourbonds';
4
+ import type { Ecosystem } from '../../adapters/types';
4
5
  export default function useUserBonds(): UseQueryResult<UserBill[]>;
5
- export declare const getUserBonds: (account: string, solanaAccount: string, aptosAccount: string, suiAccount: string, bondList: Record<ChainId, BillsConfig[]>, queryClient: QueryClient) => Promise<UserBill[]>;
6
+ /** @param accounts the connected account of each family, by ecosystem (see useChainAccount) */
7
+ export declare const getUserBonds: (accounts: Partial<Record<Ecosystem, string | null>>, bondList: Record<ChainId, BillsConfig[]>, queryClient: QueryClient) => Promise<UserBill[]>;
@@ -4,24 +4,17 @@ import { ChainId } from '@ape.swap/apeswap-lists';
4
4
  import useBondsList from './useBondsList.js';
5
5
  import useTokenPrices from '../tokenPrices/useTokenPrices.js';
6
6
  import { reportError } from '../../utils/reportError.js';
7
- import useEVMAccount from '../../hooks/accounts/useEVMAccount.js';
8
- import useSOLAccount from '../../hooks/accounts/useSOLAccount.js';
9
- import useAPTAccount from '../../hooks/accounts/useAPTAccount.js';
10
- import useSUIAccount from '../../hooks/accounts/useSUIAccount.js';
11
- import axios from 'axios';
12
- import { fetchUsersBondsSOL } from './fetchUsersBonds/fetchUsersBondsSOL.js';
13
- import { fetchUsersBondsAptos } from './fetchUsersBonds/fetchUsersBondsAptos.js';
14
- import { fetchUsersBondsSUI } from './fetchUsersBonds/fetchUsersBondsSUI.js';
15
- import { fetchUsersBondsEVM } from './fetchUsersBonds/fetchUsersBondsEVM.js';
7
+ import useChainAccount from '../chainAccount/useChainAccount.js';
8
+ import { apiPost } from '../../utils/httpClient.js';
9
+ import { getAdapterForChain } from '../../adapters/registry.js';
16
10
 
17
11
  function useUserBonds() {
18
12
  // First fetch the full list of bonds
19
13
  const { data: bondList } = useBondsList();
20
- const { address: addressEVM } = useEVMAccount();
21
- const { publicKey } = useSOLAccount();
22
- const addressSOL = publicKey?.toBase58();
23
- const { address: addressAptos } = useAPTAccount();
24
- const { address: addressSUI } = useSUIAccount();
14
+ const { address: addressEVM } = useChainAccount('evm');
15
+ const { address: addressSOL } = useChainAccount('sol');
16
+ const { address: addressAptos } = useChainAccount('aptos');
17
+ const { address: addressSUI } = useChainAccount('sui');
25
18
  const { data: tokenPrices } = useTokenPrices();
26
19
  return useQuery({
27
20
  queryKey: [
@@ -32,7 +25,7 @@ function useUserBonds() {
32
25
  addressSUI,
33
26
  Object.keys(tokenPrices ?? {})?.length ?? null,
34
27
  ],
35
- queryFn: ({ client }) => getUserBonds(addressEVM, addressSOL, addressAptos, addressSUI, bondList, client),
28
+ queryFn: ({ client }) => getUserBonds({ evm: addressEVM, sol: addressSOL, aptos: addressAptos, sui: addressSUI }, bondList, client),
36
29
  enabled: !!bondList && !!(addressEVM || addressSOL || addressAptos || addressSUI) && !!tokenPrices,
37
30
  refetchInterval: 120000,
38
31
  refetchOnWindowFocus: false,
@@ -41,7 +34,8 @@ function useUserBonds() {
41
34
  retry: 1,
42
35
  });
43
36
  }
44
- const getUserBonds = async (account, solanaAccount, aptosAccount, suiAccount, bondList, queryClient) => {
37
+ /** @param accounts the connected account of each family, by ecosystem (see useChainAccount) */
38
+ const getUserBonds = async (accounts, bondList, queryClient) => {
45
39
  const { chains, urls } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]);
46
40
  const apiUrl = urls['apiV2'];
47
41
  const tokenPrices = queryClient?.getQueryData([QUERY_KEYS.TOKEN_PRICES]);
@@ -49,17 +43,10 @@ const getUserBonds = async (account, solanaAccount, aptosAccount, suiAccount, bo
49
43
  const results = await Promise.allSettled(chains
50
44
  .filter((chain) => bondList[chain])
51
45
  .map((chain) => {
52
- if (chain === ChainId.SOL) {
53
- return fetchUsersBondsSOL(solanaAccount, bondList[chain], tokenPrices);
54
- }
55
- else if (chain === ChainId.APTOS) {
56
- return fetchUsersBondsAptos(aptosAccount, bondList[chain], tokenPrices);
57
- }
58
- else if (chain === ChainId.SUI) {
59
- return fetchUsersBondsSUI(suiAccount, bondList[chain], tokenPrices);
60
- }
61
- else
62
- return fetchUsersBondsEVM(chain, account, bondList[chain], tokenPrices);
46
+ // Chains without a registered adapter are unsupported
47
+ const adapter = getAdapterForChain(chain);
48
+ const account = adapter && accounts[adapter.ecosystem];
49
+ return adapter && account ? adapter.fetchUserBonds(chain, account, bondList[chain], tokenPrices) : [];
63
50
  }));
64
51
  // Filter out only fulfilled promises
65
52
  const fulfilledResults = results
@@ -67,10 +54,11 @@ const getUserBonds = async (account, solanaAccount, aptosAccount, suiAccount, bo
67
54
  .map((result) => result.value);
68
55
  const onChainData = fulfilledResults.flat().flatMap((result) => result.userOwnedBills);
69
56
  // Prepare body for batch API call
70
- // api-v2 won't support Aptos/Sui. Bills are read on-chain, no /bills/multi-batch
71
- // enrichment. Aptos/Sui bills use the placeholder image from their constants.
57
+ // api-v2 doesn't support adapters with enrichUserBondsViaApi: false (e.g. Aptos, Sui). Their bills are read
58
+ // on-chain, with no /bills/multi-batch enrichment, and use the placeholder image from their constants.
59
+ const enrichViaApi = (chainId) => getAdapterForChain(chainId)?.enrichUserBondsViaApi ?? true;
72
60
  const body = Object.values(onChainData
73
- .filter((data) => data?.bond?.chainId !== ChainId.APTOS && data?.bond?.chainId !== ChainId.SUI)
61
+ .filter((data) => enrichViaApi(data?.bond?.chainId))
74
62
  .reduce((acc, data) => {
75
63
  const contract = data?.bond?.chainId === ChainId.SOL ? data.bond.contractAddress[data.bond.chainId] : data.billNftAddress;
76
64
  const key = `${data?.bond?.chainId}-${contract}`;
@@ -84,21 +72,21 @@ const getUserBonds = async (account, solanaAccount, aptosAccount, suiAccount, bo
84
72
  acc[key].billIds.push(parseInt(data.id));
85
73
  return acc;
86
74
  }, {}));
87
- let response;
75
+ let responseData;
88
76
  try {
89
- response = await axios.post(`${apiUrl}/bills/multi-batch`, body, { timeout: 40000 });
77
+ responseData = await apiPost(`${apiUrl}/bills/multi-batch`, body, { timeoutMs: 40000 });
90
78
  }
91
79
  catch (e) {
92
80
  console.error(e);
93
81
  return onChainData;
94
82
  }
95
83
  // Enrich on-chain data with API data.
96
- // Aptos/Sui bills are not sent to api-v2 (no support), so keep their existing
97
- // nftData populated by fetchBillsUser{Aptos,Sui} instead of overwriting with undefined.
84
+ // Bills that weren't sent to api-v2 keep the nftData their fetcher populated instead of being overwritten with
85
+ // undefined.
98
86
  const enrichedData = onChainData.map((userBond) => {
99
- if (userBond.bond?.chainId === ChainId.APTOS || userBond.bond?.chainId === ChainId.SUI)
87
+ if (!enrichViaApi(userBond.bond?.chainId))
100
88
  return userBond;
101
- const nftDataResponse = response.data?.find((nft) => {
89
+ const nftDataResponse = responseData?.find((nft) => {
102
90
  const contract = nft.contract.toLowerCase();
103
91
  const chain = nft.chainId;
104
92
  // API uses contractAddress for Solana bonds instead of NFT Address
@@ -119,7 +107,7 @@ const getUserBonds = async (account, solanaAccount, aptosAccount, suiAccount, bo
119
107
  apiUrl,
120
108
  error: e,
121
109
  extraInfo: { type: 'getUserBonds', bondList, chains, e },
122
- account,
110
+ account: accounts.evm ?? undefined,
123
111
  });
124
112
  throw new Error('Failed to fetch user bonds');
125
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useUserBonds.js","sources":["../../../src/state/bonds/useUserBonds.ts"],"sourcesContent":["import { QueryClient, useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { BillsConfig, ChainId } from '@ape.swap/apeswap-lists'\nimport useBondsList from './useBondsList'\nimport { UserBill, UserBillNftData } from '../../types/yourbonds'\nimport { SDKProps } from '../useSDKConfig'\nimport useTokenPrices, { TokenPrices } from '../tokenPrices/useTokenPrices'\nimport { reportError } from '../../utils/reportError'\nimport useEVMAccount from '../../hooks/accounts/useEVMAccount'\nimport useSOLAccount from '../../hooks/accounts/useSOLAccount'\nimport useAPTAccount from '../../hooks/accounts/useAPTAccount'\nimport useSUIAccount from '../../hooks/accounts/useSUIAccount'\nimport axios from 'axios'\nimport { fetchUsersBondsSOL } from './fetchUsersBonds/fetchUsersBondsSOL'\nimport { fetchUsersBondsAptos } from './fetchUsersBonds/fetchUsersBondsAptos'\nimport { fetchUsersBondsSUI } from './fetchUsersBonds/fetchUsersBondsSUI'\nimport { fetchUsersBondsEVM } from './fetchUsersBonds/fetchUsersBondsEVM'\n\nexport default function useUserBonds(): UseQueryResult<UserBill[]> {\n // First fetch the full list of bonds\n const { data: bondList } = useBondsList()\n const { address: addressEVM } = useEVMAccount()\n const { publicKey } = useSOLAccount()\n const addressSOL = publicKey?.toBase58()\n const { address: addressAptos } = useAPTAccount()\n const { address: addressSUI } = useSUIAccount()\n const { data: tokenPrices } = useTokenPrices()\n return useQuery({\n queryKey: [\n QUERY_KEYS.USER_BONDS,\n addressEVM,\n addressSOL,\n addressAptos,\n addressSUI,\n Object.keys(tokenPrices ?? {})?.length ?? null,\n ],\n queryFn: ({ client }) => getUserBonds(addressEVM!, addressSOL!, addressAptos!, addressSUI!, bondList!, client),\n enabled: !!bondList && !!(addressEVM || addressSOL || addressAptos || addressSUI) && !!tokenPrices,\n refetchInterval: 120000,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n refetchOnReconnect: false,\n retry: 1,\n })\n}\n\nexport const getUserBonds = async (\n account: string,\n solanaAccount: string,\n aptosAccount: string,\n suiAccount: string,\n bondList: Record<ChainId, BillsConfig[]>,\n queryClient: QueryClient,\n): Promise<UserBill[]> => {\n const { chains, urls } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const apiUrl = urls['apiV2']\n const tokenPrices: Partial<Record<ChainId, TokenPrices[]>> = queryClient?.getQueryData([QUERY_KEYS.TOKEN_PRICES])!\n\n try {\n const results = await Promise.allSettled(\n chains\n .filter((chain: ChainId) => bondList[chain])\n .map((chain: ChainId) => {\n if (chain === ChainId.SOL) {\n return fetchUsersBondsSOL(solanaAccount, bondList[chain], tokenPrices)\n } else if (chain === ChainId.APTOS) {\n return fetchUsersBondsAptos(aptosAccount, bondList[chain], tokenPrices)\n } else if (chain === ChainId.SUI) {\n return fetchUsersBondsSUI(suiAccount, bondList[chain], tokenPrices)\n } else return fetchUsersBondsEVM(chain, account, bondList[chain], tokenPrices)\n }),\n )\n\n // Filter out only fulfilled promises\n const fulfilledResults = results\n .filter((result): result is PromiseFulfilledResult<any> => result.status === 'fulfilled')\n .map((result) => result.value)\n\n const onChainData: UserBill[] = fulfilledResults.flat().flatMap((result) => result.userOwnedBills)\n\n // Prepare body for batch API call\n // api-v2 won't support Aptos/Sui. Bills are read on-chain, no /bills/multi-batch\n // enrichment. Aptos/Sui bills use the placeholder image from their constants.\n const body = Object.values(\n onChainData\n .filter((data) => data?.bond?.chainId !== ChainId.APTOS && data?.bond?.chainId !== ChainId.SUI)\n .reduce(\n (acc, data) => {\n const contract =\n data?.bond?.chainId === ChainId.SOL ? data.bond.contractAddress[data.bond.chainId] : data.billNftAddress\n const key = `${data?.bond?.chainId}-${contract}`\n\n if (!acc[key]) {\n acc[key] = {\n chainId: data?.bond?.chainId as number,\n contract: contract as string,\n billIds: [],\n }\n }\n\n acc[key].billIds.push(parseInt(data.id))\n return acc\n },\n {} as Record<string, { chainId: number; contract: string; billIds: number[] }>,\n ),\n )\n let response\n\n try {\n response = await axios.post(`${apiUrl}/bills/multi-batch`, body, { timeout: 40000 })\n } catch (e) {\n console.error(e)\n return onChainData\n }\n // Enrich on-chain data with API data.\n // Aptos/Sui bills are not sent to api-v2 (no support), so keep their existing\n // nftData populated by fetchBillsUser{Aptos,Sui} instead of overwriting with undefined.\n const enrichedData: UserBill[] = onChainData.map((userBond) => {\n if (userBond.bond?.chainId === ChainId.APTOS || userBond.bond?.chainId === ChainId.SUI) return userBond\n\n const nftDataResponse = response.data?.find((nft: any) => {\n const contract = nft.contract.toLowerCase()\n const chain = nft.chainId\n\n // API uses contractAddress for Solana bonds instead of NFT Address\n const contractToCompare =\n chain === ChainId.SOL ? userBond.bond?.contractAddress[ChainId.SOL] : userBond.billNftAddress\n return contractToCompare?.toLowerCase() === contract && userBond.bond?.chainId === chain\n })\n const nftData: UserBillNftData | undefined = nftDataResponse?.bills?.find(\n (billApiData: UserBillNftData) => billApiData.tokenId === parseInt(userBond.id),\n )\n return {\n ...userBond,\n nftData,\n }\n })\n\n return enrichedData\n } catch (e) {\n console.error(e)\n reportError({\n apiUrl,\n error: e,\n extraInfo: { type: 'getUserBonds', bondList, chains, e },\n account,\n })\n throw new Error('Failed to fetch user bonds')\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useUserBonds.js","sources":["../../../src/state/bonds/useUserBonds.ts"],"sourcesContent":["import { QueryClient, useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { BillsConfig, ChainId } from '@ape.swap/apeswap-lists'\nimport useBondsList from './useBondsList'\nimport { UserBill, UserBillNftData } from '../../types/yourbonds'\nimport { SDKProps } from '../useSDKConfig'\nimport useTokenPrices, { TokenPrices } from '../tokenPrices/useTokenPrices'\nimport { reportError } from '../../utils/reportError'\nimport useChainAccount from '../chainAccount/useChainAccount'\nimport { apiPost } from '../../utils/httpClient'\nimport { getAdapterForChain } from '../../adapters/registry'\nimport type { Ecosystem } from '../../adapters/types'\n\nexport default function useUserBonds(): UseQueryResult<UserBill[]> {\n // First fetch the full list of bonds\n const { data: bondList } = useBondsList()\n const { address: addressEVM } = useChainAccount('evm')\n const { address: addressSOL } = useChainAccount('sol')\n const { address: addressAptos } = useChainAccount('aptos')\n const { address: addressSUI } = useChainAccount('sui')\n const { data: tokenPrices } = useTokenPrices()\n return useQuery({\n queryKey: [\n QUERY_KEYS.USER_BONDS,\n addressEVM,\n addressSOL,\n addressAptos,\n addressSUI,\n Object.keys(tokenPrices ?? {})?.length ?? null,\n ],\n queryFn: ({ client }) =>\n getUserBonds({ evm: addressEVM, sol: addressSOL, aptos: addressAptos, sui: addressSUI }, bondList!, client),\n enabled: !!bondList && !!(addressEVM || addressSOL || addressAptos || addressSUI) && !!tokenPrices,\n refetchInterval: 120000,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n refetchOnReconnect: false,\n retry: 1,\n })\n}\n\n/** @param accounts the connected account of each family, by ecosystem (see useChainAccount) */\nexport const getUserBonds = async (\n accounts: Partial<Record<Ecosystem, string | null>>,\n bondList: Record<ChainId, BillsConfig[]>,\n queryClient: QueryClient,\n): Promise<UserBill[]> => {\n const { chains, urls } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const apiUrl = urls['apiV2']\n const tokenPrices: Partial<Record<ChainId, TokenPrices[]>> = queryClient?.getQueryData([QUERY_KEYS.TOKEN_PRICES])!\n\n try {\n const results = await Promise.allSettled(\n chains\n .filter((chain: ChainId) => bondList[chain])\n .map((chain: ChainId) => {\n // Chains without a registered adapter are unsupported\n const adapter = getAdapterForChain(chain)\n const account = adapter && accounts[adapter.ecosystem]\n return adapter && account ? adapter.fetchUserBonds(chain, account, bondList[chain], tokenPrices) : []\n }),\n )\n\n // Filter out only fulfilled promises\n const fulfilledResults = results\n .filter((result): result is PromiseFulfilledResult<any> => result.status === 'fulfilled')\n .map((result) => result.value)\n\n const onChainData: UserBill[] = fulfilledResults.flat().flatMap((result) => result.userOwnedBills)\n\n // Prepare body for batch API call\n // api-v2 doesn't support adapters with enrichUserBondsViaApi: false (e.g. Aptos, Sui). Their bills are read\n // on-chain, with no /bills/multi-batch enrichment, and use the placeholder image from their constants.\n const enrichViaApi = (chainId?: ChainId) => getAdapterForChain(chainId as ChainId)?.enrichUserBondsViaApi ?? true\n const body = Object.values(\n onChainData\n .filter((data) => enrichViaApi(data?.bond?.chainId))\n .reduce(\n (acc, data) => {\n const contract =\n data?.bond?.chainId === ChainId.SOL ? data.bond.contractAddress[data.bond.chainId] : data.billNftAddress\n const key = `${data?.bond?.chainId}-${contract}`\n\n if (!acc[key]) {\n acc[key] = {\n chainId: data?.bond?.chainId as number,\n contract: contract as string,\n billIds: [],\n }\n }\n\n acc[key].billIds.push(parseInt(data.id))\n return acc\n },\n {} as Record<string, { chainId: number; contract: string; billIds: number[] }>,\n ),\n )\n let responseData\n\n try {\n responseData = await apiPost<any[]>(`${apiUrl}/bills/multi-batch`, body, { timeoutMs: 40000 })\n } catch (e) {\n console.error(e)\n return onChainData\n }\n // Enrich on-chain data with API data.\n // Bills that weren't sent to api-v2 keep the nftData their fetcher populated instead of being overwritten with\n // undefined.\n const enrichedData: UserBill[] = onChainData.map((userBond) => {\n if (!enrichViaApi(userBond.bond?.chainId)) return userBond\n\n const nftDataResponse = responseData?.find((nft: any) => {\n const contract = nft.contract.toLowerCase()\n const chain = nft.chainId\n\n // API uses contractAddress for Solana bonds instead of NFT Address\n const contractToCompare =\n chain === ChainId.SOL ? userBond.bond?.contractAddress[ChainId.SOL] : userBond.billNftAddress\n return contractToCompare?.toLowerCase() === contract && userBond.bond?.chainId === chain\n })\n const nftData: UserBillNftData | undefined = nftDataResponse?.bills?.find(\n (billApiData: UserBillNftData) => billApiData.tokenId === parseInt(userBond.id),\n )\n return {\n ...userBond,\n nftData,\n }\n })\n\n return enrichedData\n } catch (e) {\n console.error(e)\n reportError({\n apiUrl,\n error: e,\n extraInfo: { type: 'getUserBonds', bondList, chains, e },\n account: accounts.evm ?? undefined,\n })\n throw new Error('Failed to fetch user bonds')\n }\n}\n"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { UseQueryResult } from '@tanstack/react-query';
2
2
  import { PreTGEConfig } from '@ape.swap/apeswap-lists';
3
3
  import { UserBill } from '../../types/yourbonds';
4
4
  import { YieldData } from '../../types/bonds';
5
- interface AccountInfo {
5
+ export interface AccountInfo {
6
6
  hasRedeemed: boolean;
7
7
  hasRefunded?: boolean;
8
8
  payout: string;
@@ -25,4 +25,3 @@ export interface PreTGEUserBonds extends PreTGEConfig {
25
25
  endTime?: number;
26
26
  }
27
27
  export default function useUserBondsPreTGE(): UseQueryResult<PreTGEUserBonds[]>;
28
- export {};
@@ -1,223 +1,27 @@
1
1
  import { useQuery } from '@tanstack/react-query';
2
2
  import { QUERY_KEYS } from '../../config/constants/queryKeys.js';
3
- import multicall from '../../utils/multicall.js';
4
- import LaunchBondABI_V_2_4_1 from '../../config/abi/launchBond_v2_4_1.json.js';
5
- import Vault_Shares_ABI from '../../config/abi/Vault_Shares.json.js';
6
- import { reportError } from '../../utils/reportError.js';
7
3
  import { useURLByEnvironment, useSDKConfig } from '../useSDKConfig.js';
8
4
  import useBondsListPreTGE from './useBondsListPreTGE.js';
9
- import { getBalanceNumber } from '../../utils/getBalanceNumber.js';
10
5
  import useTokenPrices from '../tokenPrices/useTokenPrices.js';
11
- import useEVMAccount from '../../hooks/accounts/useEVMAccount.js';
6
+ import { getAdapterByEcosystem } from '../../adapters/registry.js';
7
+ import useChainAccount from '../chainAccount/useChainAccount.js';
12
8
 
13
9
  function useUserBondsPreTGE() {
14
10
  const { data: preTGEList } = useBondsListPreTGE();
15
11
  const { data: tokenPrices } = useTokenPrices();
16
- const { address } = useEVMAccount();
12
+ const { address } = useChainAccount('evm');
17
13
  const apiUrl = useURLByEnvironment('apiV2');
18
14
  const { chains } = useSDKConfig();
15
+ // PreTGE / launch bonds live on EVM contracts, so they're read by the EVM adapter
16
+ const preTGE = getAdapterByEcosystem('evm')?.preTGE;
19
17
  return useQuery({
20
18
  queryKey: [QUERY_KEYS.PRE_TGE_USER_BONDS, preTGEList?.length ?? '', address, Object.keys(tokenPrices ?? {})],
21
- queryFn: () => fetchPreTGEUserBonds(chains, tokenPrices, preTGEList, address, apiUrl),
19
+ queryFn: () => preTGE.fetchUserBonds(chains, tokenPrices, preTGEList, address, apiUrl),
22
20
  refetchInterval: 30000,
23
21
  refetchOnWindowFocus: false,
24
- enabled: !!preTGEList && preTGEList.length > 0 && !!address && !!tokenPrices,
22
+ enabled: !!preTGE && !!preTGEList && preTGEList.length > 0 && !!address && !!tokenPrices,
25
23
  });
26
24
  }
27
- const fetchPreTGEUserBonds = async (chains, tokenPrices, preTGEList, account, apiUrl) => {
28
- try {
29
- const preTGEBonds = preTGEList.filter((bond) => chains.includes(bond.chainId));
30
- const results = await Promise.all(preTGEBonds.map(async (bond) => {
31
- try {
32
- const calls = [
33
- {
34
- address: bond.contractAddress[bond.chainId] ?? '',
35
- name: 'getBillIds',
36
- params: [account],
37
- },
38
- {
39
- address: bond.contractAddress[bond.chainId] ?? '',
40
- name: 'accountInfo',
41
- params: [account],
42
- },
43
- {
44
- address: bond.contractAddress[bond.chainId] ?? '',
45
- name: 'hasRedeemed',
46
- params: [account],
47
- },
48
- {
49
- address: bond.contractAddress[bond.chainId] ?? '',
50
- name: 'finalized',
51
- },
52
- {
53
- address: bond.contractAddress[bond.chainId] ?? '',
54
- name: 'terms',
55
- },
56
- {
57
- address: bond.contractAddress[bond.chainId] ?? '',
58
- name: 'trueBillPrice',
59
- },
60
- ];
61
- const res = await multicall(bond.chainId, LaunchBondABI_V_2_4_1, calls);
62
- const billId = res?.[0]?.[0]?.[0]?.toString();
63
- let userOwnedBillsData;
64
- if (billId) {
65
- const billDataCalls = [
66
- {
67
- address: bond.contractAddress[bond.chainId] ?? '',
68
- name: 'getBillInfo',
69
- params: [billId],
70
- },
71
- {
72
- address: bond.contractAddress[bond.chainId] ?? '',
73
- name: 'billNft',
74
- },
75
- {
76
- address: bond.contractAddress[bond.chainId] ?? '',
77
- name: 'claimablePayout',
78
- params: [billId],
79
- },
80
- ];
81
- const billData = await multicall(bond.chainId, LaunchBondABI_V_2_4_1, billDataCalls);
82
- userOwnedBillsData = {
83
- address: bond.contractAddress[bond.chainId] ?? '',
84
- id: billId,
85
- payout: (BigInt(billData[0][0]?.payout.toString()) - BigInt(billData[0][0]?.payoutClaimed.toString())).toString(),
86
- payoutClaimed: billData[0][0]?.payoutClaimed.toString(),
87
- billNftAddress: billData[1][0]?.toString(),
88
- // vesting: billData[0][0]?.vesting?.toString(),
89
- vestingTerm: billData[0][0]?.vestingTerm?.toString(),
90
- lastBlockTimestamp: billData[0][0]?.lastClaimTimestamp?.toString(),
91
- vestingStartTimestamp: billData[0][0]?.vestingStartTimestamp?.toString(),
92
- truePricePaid: billData[0][0]?.truePricePaid?.toString(),
93
- pendingRewards: billData[2][0]?.toString(),
94
- };
95
- }
96
- const accountInfo = {
97
- hasRedeemed: res[2][0],
98
- payout: res[1][0].toString(),
99
- depositAmount: res[1][1].toString(),
100
- payoutClaimed: res[1][2].toString(),
101
- vesting: res[1][3].toString(),
102
- vestingTerm: res[1][4].toString(),
103
- vestingStartTimestamp: res[1][5].toString(),
104
- lastClaimTimestamp: res[1][6].toString(),
105
- truePricePaid: res[1][7].toString(),
106
- };
107
- const finalized = res[3][0];
108
- const terms = res[4];
109
- const endTime = parseInt(terms[0]);
110
- const startTime = parseInt(terms[1]);
111
- const vestingTerm = parseInt(res[4][2]);
112
- const trueBillPrice = res[5]?.[0]?.toString();
113
- const initPrice = getBalanceNumber(trueBillPrice, bond?.lpToken?.decimals?.[bond?.chainId]);
114
- const initialRelease = terms?.[5];
115
- const earnTokenAddress = bond.yieldBond
116
- ? bond.underlyingEarnToken?.address[bond.chainId]?.toLowerCase()
117
- : bond.earnToken.address[bond.chainId]?.toLowerCase();
118
- const earnTokenPrice = tokenPrices?.[bond?.chainId]?.find((tokenPrice) => tokenPrice.tokenAddress?.toLowerCase() === earnTokenAddress)?.price;
119
- const now = Math.floor(Date.now() / 1000);
120
- const progress = Math.min(1, Math.max(0, (now - startTime) / (endTime - startTime)));
121
- const currentAPR = bond.startAPR != null && bond.endAPR != null && endTime > startTime
122
- ? bond.startAPR + (bond.endAPR - bond.startAPR) * progress
123
- : 0;
124
- const apr = bond.finalAPR || currentAPR;
125
- let depositedAssets = 0;
126
- let claimableRewards = '0';
127
- let futureRewards = 0;
128
- let rewardDistributionEnd = 0;
129
- let claimed = 0;
130
- let vaultTokenBalance = '0';
131
- if (bond.yieldBond) {
132
- const calls = [
133
- {
134
- address: bond.earnToken.address[bond.chainId] ?? '',
135
- name: 'maxWithdraw',
136
- params: [account],
137
- },
138
- {
139
- address: bond.earnToken.address[bond.chainId] ?? '',
140
- name: 'pendingRewards',
141
- params: [account],
142
- },
143
- {
144
- address: bond.earnToken.address[bond.chainId] ?? '',
145
- name: 'claimedAssets',
146
- params: [account],
147
- },
148
- {
149
- address: bond.earnToken.address[bond.chainId] ?? '',
150
- name: 'vestingEnd',
151
- },
152
- {
153
- address: bond.earnToken.address[bond.chainId] ?? '',
154
- name: 'balanceOf',
155
- params: [account],
156
- },
157
- {
158
- address: bond.earnToken.address[bond.chainId] ?? '',
159
- name: 'earned',
160
- params: [account],
161
- },
162
- ];
163
- const res = await multicall(bond.chainId, Vault_Shares_ABI, calls);
164
- depositedAssets = getBalanceNumber(res[0][0].toString());
165
- futureRewards = getBalanceNumber(res[1][0].toString());
166
- claimed = getBalanceNumber(res[2][0].toString());
167
- rewardDistributionEnd = parseInt(res[3][0]);
168
- vaultTokenBalance = res[4][0].toString();
169
- claimableRewards = res[5][0].toString();
170
- }
171
- return {
172
- ...bond,
173
- accountInfo,
174
- userOwnedBillsData,
175
- endTime,
176
- finalized,
177
- vestingTerm,
178
- initPrice,
179
- initialRelease: initialRelease / 10000,
180
- earnTokenPrice: bond.yieldBond
181
- ? earnTokenPrice
182
- : !earnTokenPrice || earnTokenPrice === 0
183
- ? initPrice
184
- : earnTokenPrice,
185
- yieldData: {
186
- apr,
187
- claimableRewards: accountInfo.hasRedeemed ? claimableRewards : '0',
188
- rewardDistributionEnd,
189
- claimed,
190
- depositedAssets,
191
- vaultTokenBalance,
192
- futureRewards,
193
- },
194
- };
195
- }
196
- catch (e) {
197
- console.error(e);
198
- reportError({
199
- apiUrl,
200
- error: e,
201
- extraInfo: { type: 'fetchPreTGEUserBonds', bond, e },
202
- account,
203
- chainId: bond.chainId,
204
- });
205
- return undefined;
206
- }
207
- }));
208
- return results.filter((bond) => bond !== undefined);
209
- }
210
- catch (e) {
211
- console.log(e);
212
- reportError({
213
- apiUrl,
214
- error: e,
215
- extraInfo: { type: 'fetchPreTGEUserBonds', e },
216
- account,
217
- });
218
- return [];
219
- }
220
- };
221
25
 
222
26
  export { useUserBondsPreTGE as default };
223
27
  //# sourceMappingURL=useUserBondsPreTGE.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useUserBondsPreTGE.js","sources":["../../../src/state/bonds/useUserBondsPreTGE.ts"],"sourcesContent":["import { useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { ChainId, PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport multicall from '../../utils/multicall'\nimport launchBondsABI_V2_4_1 from '../../config/abi/launchBond_v2_4_1.json'\nimport Vault_Shares_ABI from '../../config/abi/Vault_Shares.json'\nimport { UserBill } from '../../types/yourbonds'\nimport { reportError } from '../../utils/reportError'\nimport { useSDKConfig, useURLByEnvironment } from '../useSDKConfig'\nimport useBondsListPreTGE from './useBondsListPreTGE'\nimport { getBalanceNumber } from '../../utils/getBalanceNumber'\nimport useTokenPrices, { TokenPrices } from '../tokenPrices/useTokenPrices'\nimport useEVMAccount from '../../hooks/accounts/useEVMAccount'\nimport { YieldData } from '../../types/bonds'\n\ninterface AccountInfo {\n hasRedeemed: boolean\n hasRefunded?: boolean\n payout: string\n depositAmount: string\n payoutClaimed: string\n vesting: string\n vestingTerm: string\n vestingStartTimestamp: string\n lastClaimTimestamp: string\n truePricePaid: string\n}\n\nexport interface PreTGEUserBonds extends PreTGEConfig {\n accountInfo?: AccountInfo\n userOwnedBillsData?: UserBill\n finalized?: boolean\n initPrice?: number\n initialRelease?: number\n earnTokenPrice?: number\n yieldData?: YieldData\n endTime?: number\n}\n\nexport default function useUserBondsPreTGE(): UseQueryResult<PreTGEUserBonds[]> {\n const { data: preTGEList } = useBondsListPreTGE()\n const { data: tokenPrices } = useTokenPrices()\n const { address } = useEVMAccount()\n const apiUrl = useURLByEnvironment('apiV2')\n const { chains } = useSDKConfig()\n\n return useQuery({\n queryKey: [QUERY_KEYS.PRE_TGE_USER_BONDS, preTGEList?.length ?? '', address, Object.keys(tokenPrices ?? {})],\n queryFn: () => fetchPreTGEUserBonds(chains!, tokenPrices!, preTGEList!, address as string, apiUrl),\n refetchInterval: 30000,\n refetchOnWindowFocus: false,\n enabled: !!preTGEList && preTGEList.length > 0 && !!address && !!tokenPrices,\n })\n}\n\nconst fetchPreTGEUserBonds = async (\n chains: number[],\n tokenPrices: Partial<Record<ChainId, TokenPrices[]>>,\n preTGEList: PreTGEConfig[],\n account: string,\n apiUrl: string,\n): Promise<PreTGEUserBonds[]> => {\n try {\n const preTGEBonds = preTGEList.filter((bond) => chains.includes(bond.chainId))\n const results: (PreTGEUserBonds | undefined)[] = await Promise.all(\n preTGEBonds.map(async (bond): Promise<PreTGEUserBonds | undefined> => {\n try {\n const calls = [\n {\n address: bond.contractAddress[bond.chainId] ?? '',\n name: 'getBillIds',\n params: [account],\n },\n {\n address: bond.contractAddress[bond.chainId] ?? '',\n name: 'accountInfo',\n params: [account],\n },\n {\n address: bond.contractAddress[bond.chainId] ?? '',\n name: 'hasRedeemed',\n params: [account],\n },\n {\n address: bond.contractAddress[bond.chainId] ?? '',\n name: 'finalized',\n },\n {\n address: bond.contractAddress[bond.chainId] ?? '',\n name: 'terms',\n },\n {\n address: bond.contractAddress[bond.chainId] ?? '',\n name: 'trueBillPrice',\n },\n ]\n\n const res = await multicall(bond.chainId, launchBondsABI_V2_4_1, calls)\n const billId = res?.[0]?.[0]?.[0]?.toString()\n\n let userOwnedBillsData\n if (billId) {\n const billDataCalls: any = [\n {\n address: bond.contractAddress[bond.chainId] ?? '',\n name: 'getBillInfo',\n params: [billId],\n },\n {\n address: bond.contractAddress[bond.chainId] ?? '',\n name: 'billNft',\n },\n {\n address: bond.contractAddress[bond.chainId] ?? '',\n name: 'claimablePayout',\n params: [billId],\n },\n ]\n const billData = await multicall(bond.chainId, launchBondsABI_V2_4_1, billDataCalls)\n userOwnedBillsData = {\n address: bond.contractAddress[bond.chainId] ?? '',\n id: billId,\n payout: (\n BigInt(billData[0][0]?.payout.toString()) - BigInt(billData[0][0]?.payoutClaimed.toString())\n ).toString(),\n payoutClaimed: billData[0][0]?.payoutClaimed.toString(),\n billNftAddress: billData[1][0]?.toString(),\n // vesting: billData[0][0]?.vesting?.toString(),\n vestingTerm: billData[0][0]?.vestingTerm?.toString(),\n lastBlockTimestamp: billData[0][0]?.lastClaimTimestamp?.toString(),\n vestingStartTimestamp: billData[0][0]?.vestingStartTimestamp?.toString(),\n truePricePaid: billData[0][0]?.truePricePaid?.toString(),\n pendingRewards: billData[2][0]?.toString(),\n }\n }\n const accountInfo: AccountInfo = {\n hasRedeemed: res[2][0],\n payout: res[1][0].toString(),\n depositAmount: res[1][1].toString(),\n payoutClaimed: res[1][2].toString(),\n vesting: res[1][3].toString(),\n vestingTerm: res[1][4].toString(),\n vestingStartTimestamp: res[1][5].toString(),\n lastClaimTimestamp: res[1][6].toString(),\n truePricePaid: res[1][7].toString(),\n }\n\n const finalized: boolean = res[3][0]\n const terms = res[4]\n const endTime = parseInt(terms[0])\n const startTime = parseInt(terms[1])\n const vestingTerm = parseInt(res[4][2])\n const trueBillPrice = res[5]?.[0]?.toString()\n const initPrice = getBalanceNumber(trueBillPrice, bond?.lpToken?.decimals?.[bond?.chainId] as number)\n const initialRelease = terms?.[5]\n const earnTokenAddress = bond.yieldBond\n ? bond.underlyingEarnToken?.address[bond.chainId]?.toLowerCase()\n : bond.earnToken.address[bond.chainId]?.toLowerCase()\n const earnTokenPrice = tokenPrices?.[bond?.chainId]?.find(\n (tokenPrice) => tokenPrice.tokenAddress?.toLowerCase() === earnTokenAddress,\n )?.price\n\n const now = Math.floor(Date.now() / 1000)\n const progress = Math.min(1, Math.max(0, (now - startTime) / (endTime - startTime)))\n const currentAPR =\n bond.startAPR != null && bond.endAPR != null && endTime > startTime\n ? bond.startAPR + (bond.endAPR - bond.startAPR) * progress\n : 0\n const apr = bond.finalAPR || currentAPR\n\n let depositedAssets = 0\n let claimableRewards = '0'\n let futureRewards = 0\n let rewardDistributionEnd = 0\n let claimed = 0\n let vaultTokenBalance = '0'\n if (bond.yieldBond) {\n const calls = [\n {\n address: bond.earnToken.address[bond.chainId] ?? '',\n name: 'maxWithdraw',\n params: [account],\n },\n {\n address: bond.earnToken.address[bond.chainId] ?? '',\n name: 'pendingRewards',\n params: [account],\n },\n {\n address: bond.earnToken.address[bond.chainId] ?? '',\n name: 'claimedAssets',\n params: [account],\n },\n {\n address: bond.earnToken.address[bond.chainId] ?? '',\n name: 'vestingEnd',\n },\n {\n address: bond.earnToken.address[bond.chainId] ?? '',\n name: 'balanceOf',\n params: [account],\n },\n {\n address: bond.earnToken.address[bond.chainId] ?? '',\n name: 'earned',\n params: [account],\n },\n ]\n const res = await multicall(bond.chainId, Vault_Shares_ABI, calls)\n depositedAssets = getBalanceNumber(res[0][0].toString())\n futureRewards = getBalanceNumber(res[1][0].toString())\n claimed = getBalanceNumber(res[2][0].toString())\n rewardDistributionEnd = parseInt(res[3][0])\n vaultTokenBalance = res[4][0].toString()\n claimableRewards = res[5][0].toString()\n }\n\n return {\n ...bond,\n accountInfo,\n userOwnedBillsData,\n endTime,\n finalized,\n vestingTerm,\n initPrice,\n initialRelease: initialRelease / 10000,\n earnTokenPrice: bond.yieldBond\n ? earnTokenPrice\n : !earnTokenPrice || earnTokenPrice === 0\n ? initPrice\n : earnTokenPrice,\n yieldData: {\n apr,\n claimableRewards: accountInfo.hasRedeemed ? claimableRewards : '0',\n rewardDistributionEnd,\n claimed,\n depositedAssets,\n vaultTokenBalance,\n futureRewards,\n },\n }\n } catch (e) {\n console.error(e)\n reportError({\n apiUrl,\n error: e,\n extraInfo: { type: 'fetchPreTGEUserBonds', bond, e },\n account,\n chainId: bond.chainId,\n })\n return undefined\n }\n }),\n )\n\n return results.filter((bond) => bond !== undefined)\n } catch (e) {\n console.log(e)\n reportError({\n apiUrl,\n error: e,\n extraInfo: { type: 'fetchPreTGEUserBonds', e },\n account,\n })\n return []\n }\n}\n"],"names":["launchBondsABI_V2_4_1"],"mappings":"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"}
1
+ {"version":3,"file":"useUserBondsPreTGE.js","sources":["../../../src/state/bonds/useUserBondsPreTGE.ts"],"sourcesContent":["import { useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport { UserBill } from '../../types/yourbonds'\nimport { useSDKConfig, useURLByEnvironment } from '../useSDKConfig'\nimport useBondsListPreTGE from './useBondsListPreTGE'\nimport useTokenPrices from '../tokenPrices/useTokenPrices'\nimport { getAdapterByEcosystem } from '../../adapters/registry'\nimport useChainAccount from '../chainAccount/useChainAccount'\nimport { YieldData } from '../../types/bonds'\n\nexport interface AccountInfo {\n hasRedeemed: boolean\n hasRefunded?: boolean\n payout: string\n depositAmount: string\n payoutClaimed: string\n vesting: string\n vestingTerm: string\n vestingStartTimestamp: string\n lastClaimTimestamp: string\n truePricePaid: string\n}\n\nexport interface PreTGEUserBonds extends PreTGEConfig {\n accountInfo?: AccountInfo\n userOwnedBillsData?: UserBill\n finalized?: boolean\n initPrice?: number\n initialRelease?: number\n earnTokenPrice?: number\n yieldData?: YieldData\n endTime?: number\n}\n\nexport default function useUserBondsPreTGE(): UseQueryResult<PreTGEUserBonds[]> {\n const { data: preTGEList } = useBondsListPreTGE()\n const { data: tokenPrices } = useTokenPrices()\n const { address } = useChainAccount('evm')\n const apiUrl = useURLByEnvironment('apiV2')\n const { chains } = useSDKConfig()\n // PreTGE / launch bonds live on EVM contracts, so they're read by the EVM adapter\n const preTGE = getAdapterByEcosystem('evm')?.preTGE\n\n return useQuery({\n queryKey: [QUERY_KEYS.PRE_TGE_USER_BONDS, preTGEList?.length ?? '', address, Object.keys(tokenPrices ?? {})],\n queryFn: () => preTGE!.fetchUserBonds(chains!, tokenPrices!, preTGEList!, address as string, apiUrl),\n refetchInterval: 30000,\n refetchOnWindowFocus: false,\n enabled: !!preTGE && !!preTGEList && preTGEList.length > 0 && !!address && !!tokenPrices,\n })\n}\n"],"names":[],"mappings":";;;;;;;;AAmCc,SAAU,kBAAkB,GAAA;IACxC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,kBAAkB,EAAE;IACjD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,cAAc,EAAE;IAC9C,MAAM,EAAE,OAAO,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC;AAC1C,IAAA,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC;AAC3C,IAAA,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE;;IAEjC,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,EAAE,MAAM;AAEnD,IAAA,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,CAAC,UAAU,CAAC,kBAAkB,EAAE,UAAU,EAAE,MAAM,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;AAC5G,QAAA,OAAO,EAAE,MAAM,MAAO,CAAC,cAAc,CAAC,MAAO,EAAE,WAAY,EAAE,UAAW,EAAE,OAAiB,EAAE,MAAM,CAAC;AACpG,QAAA,eAAe,EAAE,KAAK;AACtB,QAAA,oBAAoB,EAAE,KAAK;QAC3B,OAAO,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,WAAW;AACzF,KAAA,CAAC;AACJ;;;;"}
@@ -0,0 +1,13 @@
1
+ import type { Ecosystem } from '../../adapters/types';
2
+ export interface ChainAccount {
3
+ address: string | null;
4
+ connected: boolean;
5
+ chainId?: number;
6
+ }
7
+ /**
8
+ * The connected account of a chain family, as published by that family's adapter `AccountBridge`. Returns a
9
+ * disconnected account when the family's adapter isn't registered. Chain-agnostic: safe to call from core code.
10
+ */
11
+ export default function useChainAccount(ecosystem: Ecosystem): ChainAccount;
12
+ /** For adapter `AccountBridge`s: keeps the family's account in the query cache in sync with its wallet library. */
13
+ export declare const usePublishChainAccount: (ecosystem: Ecosystem, { address, connected, chainId }: ChainAccount) => void;