@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
@@ -15,16 +15,6 @@ const findHighestTrueBondPrice = (userPoints, trueBondPrices) => {
15
15
  // Find the highest points among the eligible prices
16
16
  return eligiblePrices.reduce((highest, current) => (BigInt(current.points) > BigInt(highest.points) ? current : highest));
17
17
  };
18
- /**
19
- * Finds the TrueBondPrices element with the highest points in the array, regardless of user points.
20
- * @param bondData - Bond Data containing an array of TrueBondPrices to analyze.
21
- * @returns The TrueBondPrices element with the highest points, or `undefined` if no data is available.
22
- */
23
- const findHighestTrueBondPriceUserAgnostic = (bondData) => {
24
- if (!bondData?.trueBondPrices?.length)
25
- return undefined;
26
- return bondData.trueBondPrices.reduce((highest, current) => BigInt(current.points) > BigInt(highest.points) ? current : highest);
27
- };
28
18
 
29
- export { findHighestTrueBondPrice, findHighestTrueBondPriceUserAgnostic };
19
+ export { findHighestTrueBondPrice };
30
20
  //# sourceMappingURL=bondPriceHelpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bondPriceHelpers.js","sources":["../../src/utils/bondPriceHelpers.ts"],"sourcesContent":["import { BondsData, TrueBondPrices } from '../types/bonds'\n\n/**\n * Finds the highest TrueBondPrices element where userPoints is higher than points in the array.\n * @param userPoints - The user's points as a string representing an integer.\n * @param trueBondPrices - Array of TrueBondPrices to analyze.\n * @returns The highest TrueBondPrices element where userPoints is higher than the item's points, or `undefined` if none matches.\n */\nexport const findHighestTrueBondPrice = (\n userPoints?: string | null,\n trueBondPrices?: TrueBondPrices[],\n): TrueBondPrices | undefined => {\n if (!userPoints || !trueBondPrices) return undefined\n\n const userPointsBigInt = BigInt(userPoints)\n\n // Filter higher discounts that the user can't access\n const eligiblePrices = trueBondPrices.filter((price) => userPointsBigInt >= BigInt(price.points))\n if (!eligiblePrices || eligiblePrices.length === 0) return undefined\n\n // Find the highest points among the eligible prices\n return eligiblePrices.reduce((highest, current) => (BigInt(current.points) > BigInt(highest.points) ? current : highest))\n}\n\n/**\n * Finds the TrueBondPrices element with the highest points in the array, regardless of user points.\n * @param bondData - Bond Data containing an array of TrueBondPrices to analyze.\n * @returns The TrueBondPrices element with the highest points, or `undefined` if no data is available.\n */\nexport const findHighestTrueBondPriceUserAgnostic = (bondData?: BondsData): TrueBondPrices | undefined => {\n if (!bondData?.trueBondPrices?.length) return undefined\n\n return bondData.trueBondPrices.reduce((highest, current) =>\n BigInt(current.points) > BigInt(highest.points) ? current : highest,\n )\n}\n"],"names":[],"mappings":"AAEA;;;;;AAKG;MACU,wBAAwB,GAAG,CACtC,UAA0B,EAC1B,cAAiC,KACH;AAC9B,IAAA,IAAI,CAAC,UAAU,IAAI,CAAC,cAAc;AAAE,QAAA,OAAO,SAAS;AAEpD,IAAA,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,CAAC;;IAG3C,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,gBAAgB,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACjG,IAAA,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,SAAS;;AAGpE,IAAA,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC;AAC3H;AAEA;;;;AAIG;AACI,MAAM,oCAAoC,GAAG,CAAC,QAAoB,KAAgC;AACvG,IAAA,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,MAAM;AAAE,QAAA,OAAO,SAAS;AAEvD,IAAA,OAAO,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,KACrD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,GAAG,OAAO,CACpE;AACH;;;;"}
1
+ {"version":3,"file":"bondPriceHelpers.js","sources":["../../src/utils/bondPriceHelpers.ts"],"sourcesContent":["import { BondsData, TrueBondPrices } from '../types/bonds'\n\n/**\n * Finds the highest TrueBondPrices element where userPoints is higher than points in the array.\n * @param userPoints - The user's points as a string representing an integer.\n * @param trueBondPrices - Array of TrueBondPrices to analyze.\n * @returns The highest TrueBondPrices element where userPoints is higher than the item's points, or `undefined` if none matches.\n */\nexport const findHighestTrueBondPrice = (\n userPoints?: string | null,\n trueBondPrices?: TrueBondPrices[],\n): TrueBondPrices | undefined => {\n if (!userPoints || !trueBondPrices) return undefined\n\n const userPointsBigInt = BigInt(userPoints)\n\n // Filter higher discounts that the user can't access\n const eligiblePrices = trueBondPrices.filter((price) => userPointsBigInt >= BigInt(price.points))\n if (!eligiblePrices || eligiblePrices.length === 0) return undefined\n\n // Find the highest points among the eligible prices\n return eligiblePrices.reduce((highest, current) => (BigInt(current.points) > BigInt(highest.points) ? current : highest))\n}\n\n/**\n * Finds the TrueBondPrices element with the highest points in the array, regardless of user points.\n * @param bondData - Bond Data containing an array of TrueBondPrices to analyze.\n * @returns The TrueBondPrices element with the highest points, or `undefined` if no data is available.\n */\nexport const findHighestTrueBondPriceUserAgnostic = (bondData?: BondsData): TrueBondPrices | undefined => {\n if (!bondData?.trueBondPrices?.length) return undefined\n\n return bondData.trueBondPrices.reduce((highest, current) =>\n BigInt(current.points) > BigInt(highest.points) ? current : highest,\n )\n}\n"],"names":[],"mappings":"AAEA;;;;;AAKG;MACU,wBAAwB,GAAG,CACtC,UAA0B,EAC1B,cAAiC,KACH;AAC9B,IAAA,IAAI,CAAC,UAAU,IAAI,CAAC,cAAc;AAAE,QAAA,OAAO,SAAS;AAEpD,IAAA,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,CAAC;;IAG3C,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,gBAAgB,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACjG,IAAA,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,SAAS;;AAGpE,IAAA,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC;AAC3H;;;;"}
@@ -1,8 +1,8 @@
1
- import { ThemeUIStyleObject } from 'theme-ui';
1
+ import React from 'react';
2
2
  import { MarketingCampaign } from '@ape.swap/apeswap-lists';
3
- export declare const MCTagStyles: Partial<Record<MarketingCampaign, ThemeUIStyleObject>>;
4
- export declare const MCBuyComponentStyles: Partial<Record<MarketingCampaign, ThemeUIStyleObject>>;
5
- export declare const MCBondRowStyles: Partial<Record<MarketingCampaign, ThemeUIStyleObject>>;
3
+ export declare const MCTagStyles: Partial<Record<MarketingCampaign, React.CSSProperties>>;
4
+ export declare const MCBuyComponentStyles: Partial<Record<MarketingCampaign, React.CSSProperties>>;
5
+ export declare const MCBondRowStyles: Partial<Record<MarketingCampaign, React.CSSProperties>>;
6
6
  export declare const MCColorMapping: {
7
7
  white3: {
8
8
  Christmas2025: string;
@@ -11,5 +11,5 @@ export declare const MCColorMapping: {
11
11
  Christmas2025: string;
12
12
  };
13
13
  };
14
- export declare const MCTokenIconStyles: Partial<Record<MarketingCampaign, ThemeUIStyleObject>>;
14
+ export declare const MCTokenIconStyles: Partial<Record<MarketingCampaign, React.CSSProperties>>;
15
15
  export declare const MCTagNameMapping: Partial<Record<MarketingCampaign, string>>;
@@ -1 +1 @@
1
- {"version":3,"file":"campaignStyles.js","sources":["../../src/utils/campaignStyles.ts"],"sourcesContent":["import { ThemeUIStyleObject } from 'theme-ui'\nimport { MarketingCampaign } from '@ape.swap/apeswap-lists'\n\n// Styles of the tag component.\nexport const MCTagStyles: Partial<Record<MarketingCampaign, ThemeUIStyleObject>> = {\n [MarketingCampaign.Christmas2025]: {\n background: '#DF4141',\n color: '#fff',\n },\n}\n\n// Styles of the buy bond modal.\nexport const MCBuyComponentStyles: Partial<Record<MarketingCampaign, ThemeUIStyleObject>> = {\n [MarketingCampaign.Christmas2025]: {\n backgroundImage: 'url(https://ape.bond/images/mc/christmas-buy.png)',\n backgroundSize: 'cover',\n opacity: 1,\n },\n}\n\nexport const MCBondRowStyles: Partial<Record<MarketingCampaign, ThemeUIStyleObject>> = {\n [MarketingCampaign.Christmas2025]: {\n backgroundImage: 'url(https://ape.bond/images/mc/christmas-row.png)',\n backgroundSize: 'cover',\n opacity: 1,\n },\n}\n\nexport const MCColorMapping = {\n white3: {\n [MarketingCampaign.Christmas2025]: '#348C9E33 !important',\n },\n white4: {\n [MarketingCampaign.Christmas2025]: '#348C9E33 !important',\n },\n}\n\n// Styles of the token image displayed in the buy bond modal.\nexport const MCTokenIconStyles: Partial<Record<MarketingCampaign, ThemeUIStyleObject>> = {\n [MarketingCampaign.Christmas2025]: {\n position: 'absolute',\n top: '-25px',\n left: '18%',\n width: '100%',\n height: '50px',\n zIndex: 10,\n backgroundImage: 'url(https://ape.bond/images/mc/christmas-hat.png)',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'contain',\n backgroundPosition: 'center',\n },\n}\n\nexport const MCTagNameMapping: Partial<Record<MarketingCampaign, string>> = {\n [MarketingCampaign.Christmas2025]: 'Christmas Sale',\n}\n"],"names":[],"mappings":";;AAGA;AACO,MAAM,WAAW,GAA2D;AACjF,IAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG;AACjC,QAAA,UAAU,EAAE,SAAS;AACrB,QAAA,KAAK,EAAE,MAAM;AACd,KAAA;;AAGH;AACO,MAAM,oBAAoB,GAA2D;AAC1F,IAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG;AACjC,QAAA,eAAe,EAAE,mDAAmD;AACpE,QAAA,cAAc,EAAE,OAAO;AACvB,QAAA,OAAO,EAAE,CAAC;AACX,KAAA;;AAGI,MAAM,eAAe,GAA2D;AACrF,IAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG;AACjC,QAAA,eAAe,EAAE,mDAAmD;AACpE,QAAA,cAAc,EAAE,OAAO;AACvB,QAAA,OAAO,EAAE,CAAC;AACX,KAAA;;AAGI,MAAM,cAAc,GAAG;AAC5B,IAAA,MAAM,EAAE;AACN,QAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG,sBAAsB;AAC1D,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG,sBAAsB;AAC1D,KAAA;;AAGH;AACO,MAAM,iBAAiB,GAA2D;AACvF,IAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG;AACjC,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,GAAG,EAAE,OAAO;AACZ,QAAA,IAAI,EAAE,KAAK;AACX,QAAA,KAAK,EAAE,MAAM;AACb,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,MAAM,EAAE,EAAE;AACV,QAAA,eAAe,EAAE,mDAAmD;AACpE,QAAA,gBAAgB,EAAE,WAAW;AAC7B,QAAA,cAAc,EAAE,SAAS;AACzB,QAAA,kBAAkB,EAAE,QAAQ;AAC7B,KAAA;;AAGI,MAAM,gBAAgB,GAA+C;AAC1E,IAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG,gBAAgB;;;;;"}
1
+ {"version":3,"file":"campaignStyles.js","sources":["../../src/utils/campaignStyles.ts"],"sourcesContent":["import React from 'react'\nimport { MarketingCampaign } from '@ape.swap/apeswap-lists'\n\n// Styles of the tag component.\nexport const MCTagStyles: Partial<Record<MarketingCampaign, React.CSSProperties>> = {\n [MarketingCampaign.Christmas2025]: {\n background: '#DF4141',\n color: '#fff',\n },\n}\n\n// Styles of the buy bond modal.\nexport const MCBuyComponentStyles: Partial<Record<MarketingCampaign, React.CSSProperties>> = {\n [MarketingCampaign.Christmas2025]: {\n backgroundImage: 'url(https://ape.bond/images/mc/christmas-buy.png)',\n backgroundSize: 'cover',\n opacity: 1,\n },\n}\n\nexport const MCBondRowStyles: Partial<Record<MarketingCampaign, React.CSSProperties>> = {\n [MarketingCampaign.Christmas2025]: {\n backgroundImage: 'url(https://ape.bond/images/mc/christmas-row.png)',\n backgroundSize: 'cover',\n opacity: 1,\n },\n}\n\nexport const MCColorMapping = {\n white3: {\n [MarketingCampaign.Christmas2025]: '#348C9E33 !important',\n },\n white4: {\n [MarketingCampaign.Christmas2025]: '#348C9E33 !important',\n },\n}\n\n// Styles of the token image displayed in the buy bond modal.\nexport const MCTokenIconStyles: Partial<Record<MarketingCampaign, React.CSSProperties>> = {\n [MarketingCampaign.Christmas2025]: {\n position: 'absolute',\n top: '-25px',\n left: '18%',\n width: '100%',\n height: '50px',\n zIndex: 10,\n backgroundImage: 'url(https://ape.bond/images/mc/christmas-hat.png)',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'contain',\n backgroundPosition: 'center',\n },\n}\n\nexport const MCTagNameMapping: Partial<Record<MarketingCampaign, string>> = {\n [MarketingCampaign.Christmas2025]: 'Christmas Sale',\n}\n"],"names":[],"mappings":";;AAGA;AACO,MAAM,WAAW,GAA4D;AAClF,IAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG;AACjC,QAAA,UAAU,EAAE,SAAS;AACrB,QAAA,KAAK,EAAE,MAAM;AACd,KAAA;;AAGH;AACO,MAAM,oBAAoB,GAA4D;AAC3F,IAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG;AACjC,QAAA,eAAe,EAAE,mDAAmD;AACpE,QAAA,cAAc,EAAE,OAAO;AACvB,QAAA,OAAO,EAAE,CAAC;AACX,KAAA;;AAGI,MAAM,eAAe,GAA4D;AACtF,IAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG;AACjC,QAAA,eAAe,EAAE,mDAAmD;AACpE,QAAA,cAAc,EAAE,OAAO;AACvB,QAAA,OAAO,EAAE,CAAC;AACX,KAAA;;AAGI,MAAM,cAAc,GAAG;AAC5B,IAAA,MAAM,EAAE;AACN,QAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG,sBAAsB;AAC1D,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG,sBAAsB;AAC1D,KAAA;;AAGH;AACO,MAAM,iBAAiB,GAA4D;AACxF,IAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG;AACjC,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,GAAG,EAAE,OAAO;AACZ,QAAA,IAAI,EAAE,KAAK;AACX,QAAA,KAAK,EAAE,MAAM;AACb,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,MAAM,EAAE,EAAE;AACV,QAAA,eAAe,EAAE,mDAAmD;AACpE,QAAA,gBAAgB,EAAE,WAAW;AAC7B,QAAA,cAAc,EAAE,SAAS;AACzB,QAAA,kBAAkB,EAAE,QAAQ;AAC7B,KAAA;;AAGI,MAAM,gBAAgB,GAA+C;AAC1E,IAAA,CAAC,iBAAiB,CAAC,aAAa,GAAG,gBAAgB;;;;;"}
@@ -3,7 +3,7 @@ import { getFirstNonZeroDigits } from './roundNumber.js';
3
3
  import { getTimePeriods } from './getTimePeriods.js';
4
4
  import { formatNumberSI } from './formatNumber.js';
5
5
  import { LaunchBondTiers } from '@ape.swap/apeswap-lists';
6
- import { TIERS_WEIGHT } from '../state/tiers/useTierPoints.js';
6
+ import { TIERS_WEIGHT } from '../state/tiers/tiers.js';
7
7
  import { findHighestTrueBondPrice } from './bondPriceHelpers.js';
8
8
  import { toFixedString, parseUnits, mulDivRound } from './fixedPoint.js';
9
9
 
@@ -1 +1 @@
1
- {"version":3,"file":"displayHelpers.js","sources":["../../src/utils/displayHelpers.ts"],"sourcesContent":["import { UserBill } from '../types/yourbonds'\nimport { getBalanceNumber } from './getBalanceNumber'\nimport { BondsData } from '../types/bonds'\nimport { getFirstNonZeroDigits } from './roundNumber'\nimport { getTimePeriods } from './getTimePeriods'\nimport { formatNumberSI } from './formatNumber'\nimport { BillsConfig, LaunchBondTiers } from '@ape.swap/apeswap-lists'\nimport { TIERS_WEIGHT } from '../state/tiers/useTierPoints'\nimport { findHighestTrueBondPrice } from './bondPriceHelpers'\nimport { mulDivRound, parseUnits, toFixedString } from './fixedPoint'\n\nconst PRECISION_18 = 10n ** 18n\n// Scale used to carry percentage ratios (tier boost, fee) into integer math alongside\n// wei-scale trueBondPrice values, so the huge integer never round-trips through a float.\nconst RATIO_SCALE = 1_000_000_000_000n // 1e12\nconst scaleRatio = (ratio: number): bigint => parseUnits(ratio.toString(), 12)\n\nexport const claimable = (userBill?: UserBill) => {\n return getBalanceNumber(\n userBill?.pendingRewards ?? '0',\n userBill?.bond?.earnToken?.decimals?.[userBill?.bond?.chainId] ?? 18,\n )\n}\n\nexport const claimableUSD = (userBill?: UserBill) => {\n const claimableTokens = claimable(userBill)\n return claimableTokens * parseFloat(userBill?.bond?.payoutTokenPrice ?? '0')\n}\n\nexport const earnTokenPrice = (bond: BondsData) => {\n return formatNumberSI(bond?.payoutTokenPrice ?? '0')\n}\n\n// Amount of unvested (locked) tokens\nexport const pending = (userBill?: UserBill) => {\n return (\n getBalanceNumber(userBill?.payout ?? 0, userBill?.bond?.earnToken?.decimals?.[userBill?.bond?.chainId] ?? 18) -\n claimable(userBill)\n )\n}\n\nexport const pendingUSD = (userBill?: UserBill) => {\n const pendingTokens = pending(userBill)\n return pendingTokens * parseFloat(userBill?.bond?.payoutTokenPrice ?? '0')\n}\n\nexport const claimed = (userBill?: UserBill) => {\n return getBalanceNumber(\n userBill?.payoutClaimed ?? '0',\n userBill?.bond?.earnToken?.decimals?.[userBill?.bond?.chainId] ?? 18,\n )\n}\n\nexport const claimedUSD = (userBill?: UserBill) => {\n const claimedTokens = claimed(userBill)\n return claimedTokens * parseFloat(userBill?.bond?.payoutTokenPrice ?? '0')\n}\n\nexport const getPercentageVested = (bond?: UserBill) => {\n const vestingTerm = parseInt(bond?.vestingTerm ?? '0')\n const timeLeftForFullyVested = getTimeLeftForFullyVested(bond)\n if (timeLeftForFullyVested <= 0) return 100\n return ((vestingTerm - timeLeftForFullyVested) / vestingTerm) * 100\n}\n\nexport const getTimeLeftForFullyVested = (bond?: UserBill) => {\n const vestingTerm = parseInt(bond?.vestingTerm ?? '0')\n const purchaseTimestamp = parseInt(bond?.vestingStartTimestamp ?? '0')\n const now = Math.round(Date.now() / 1000)\n return purchaseTimestamp + vestingTerm - now\n}\n\nexport const getPendingVestingString = (bond?: UserBill) => {\n const timeLeftForFullyVested = getTimeLeftForFullyVested(bond)\n const vestingTime = getTimePeriods(timeLeftForFullyVested, true)\n return `${vestingTime.days}d, ${vestingTime.hours}h, ${vestingTime.minutes}m`\n}\n\nexport const getVestingTermsString = (bond?: BondsData | BillsConfig) => {\n const vestingTerm = bond?.vestingTerm ?? 0\n const vestingCliff = bond?.vestingCliff ?? 0\n if (!vestingCliff) {\n const vestingTime = getTimePeriods(vestingTerm, true)\n return `${vestingTime.days} D`\n } else if (vestingCliff) {\n // TODO: remove this hardcoded shit\n if (bond?.earnToken.symbol === 'AIX') {\n return `${getTimePeriods(vestingCliff, true).days} D`\n }\n const vestingTime = getTimePeriods(vestingTerm - vestingCliff, true)\n const vestingCliffString = getTimePeriods(vestingCliff, true)\n return `${vestingCliffString.days + vestingTime.days} D`\n }\n return '-'\n}\n\nexport const getVestingTermsTooltipString = (bond?: BondsData | BillsConfig) => {\n const vestingTerm = bond?.vestingTerm ?? 0\n const vestingCliff = bond?.vestingCliff\n if (!vestingCliff) return undefined\n const vestingTime = getTimePeriods(vestingTerm - vestingCliff, true)\n const vestingCliffString = getTimePeriods(vestingCliff, true)\n if (vestingTerm - vestingCliff === 0) {\n return `${vestingCliffString.days}-day cliff, then instant release of all tokens.`\n }\n return `${vestingCliffString.days}-day cliff + ${vestingTime.days}-day linear vesting.`\n}\n\n// Applies tier-boost and fee percentage multipliers to a wei-scale (1e18) trueBondPrice,\n// keeping the huge integer exact until the final getBalanceNumber() conversion.\nconst trueBondPriceWithFeeNumber = (\n trueBondPrice: string | undefined,\n tierBoostRate: number,\n feeInPayout: number,\n): number => {\n const priceBig = BigInt(trueBondPrice ?? '0')\n const tierAdjusted = mulDivRound(priceBig, scaleRatio((100 + tierBoostRate) / 100), RATIO_SCALE)\n const feeAdjusted = mulDivRound(tierAdjusted, scaleRatio((100 + feeInPayout) / 100), RATIO_SCALE)\n return getBalanceNumber(feeAdjusted)\n}\n\nexport const discountEarnTokenPrice = (bond: BondsData, useTiers?: boolean) => {\n const feeInPayout = bond?.feeInPayout ?? 0\n const tierBoostRate = bond?.tierBoostRate ?? 0\n const principalTokenPrice = parseFloat(bond.principalTokenPrice ?? '0')\n const trueBondPrice = findHighestTrueBondPrice(\n useTiers ? TIERS_WEIGHT[LaunchBondTiers.Legend] : '0',\n bond?.trueBondPrices,\n )?.trueBondPrice\n const trueBondPriceWithFee = trueBondPriceWithFeeNumber(trueBondPrice, tierBoostRate, feeInPayout)\n return formatNumberSI(principalTokenPrice * trueBondPriceWithFee, 3)\n}\n\nexport const discountEarnTokenPriceForUser = (bond: BondsData, useTiers?: boolean, userTier?: LaunchBondTiers) => {\n const feeInPayout = bond?.feeInPayout ?? 0\n const tierBoostRate = bond?.tierBoostRate ?? 0\n const principalTokenPrice = parseFloat(bond.principalTokenPrice ?? '0')\n const trueBondPrice = findHighestTrueBondPrice(\n useTiers && userTier ? TIERS_WEIGHT[userTier] : '0',\n bond?.trueBondPrices,\n )?.trueBondPrice\n const trueBondPriceWithFee = trueBondPriceWithFeeNumber(trueBondPrice, tierBoostRate, feeInPayout)\n return getFirstNonZeroDigits(principalTokenPrice * trueBondPriceWithFee)\n}\n\nconst SAFETY_THRESHOLD = 5 // in USD\n\n// bond?.tokensRemaining is already a human-decimal string (divided by decimals upstream);\n// bond?.maxPayout is a raw wei-scale integer.\nconst getSafetyAvailable = (bond?: BondsData, allowLowValueBonds?: boolean): number => {\n const available = Number(bond?.tokensRemaining ?? '0')\n const payoutTokenPrice = Number(bond?.payoutTokenPrice ?? 0)\n const threshold = allowLowValueBonds ? 0 : SAFETY_THRESHOLD\n const thresholdToShow = payoutTokenPrice > 0 ? threshold / payoutTokenPrice : 0\n const feeInPayoutAdjuster = (100 - (bond?.feeInPayout ?? 0)) / 100\n const safeAvailable = available * feeInPayoutAdjuster - thresholdToShow\n if (available === 0) return 0\n return safeAvailable < 0 ? 0 : safeAvailable\n}\n\nconst getSafetyPurchaseLimit = (bond?: BondsData, allowLowValueBonds?: boolean): number => {\n const threshold = allowLowValueBonds ? 0 : SAFETY_THRESHOLD\n const payoutTokenPrice = Number(bond?.payoutTokenPrice ?? 0)\n const thresholdToShow = payoutTokenPrice > 0 ? threshold / payoutTokenPrice : 0\n const maxPayout = getBalanceNumber(bond?.maxPayout ?? 0, bond?.earnToken?.decimals?.[bond?.chainId] ?? 18)\n return maxPayout - thresholdToShow\n}\n\nexport const getMaxBuy = (bond?: BondsData, allowLowValueBonds?: boolean): number => {\n const safeAvailable = getSafetyAvailable(bond, allowLowValueBonds)\n const safePurchaseLimit = getSafetyPurchaseLimit(bond, allowLowValueBonds)\n\n return safePurchaseLimit < safeAvailable ? safePurchaseLimit : safeAvailable\n}\n\nexport function formatUSDNumber(input: string): string {\n const number = Number(input)\n if (Number.isNaN(number)) return '0'\n\n // If the number is greater than 0 but less than 0.01\n if (number > 0 && number < 0.01) {\n return '< 0.01'\n }\n // If the number is greater than 1k, round to no decimals.\n if (number > 1000) {\n return number.toLocaleString('en-US', { maximumFractionDigits: 0 })\n }\n // Note: Between 1k and 0.01 show 2 decimals\n return parseFloat(toFixedString(number, 2)).toLocaleString('en-US')\n}\n\nconst youSpendUSD = (bond: BondsData, inputValue: string) => {\n return (parseFloat(inputValue) * parseFloat(bond?.principalTokenPrice ?? '0')).toString()\n}\n\n// receives depositAmount and returns the payoutTokens the user will receive. IT DOES SUBTRACT FEE IN PAYOUT\nexport const getPayoutAmount = (bond?: BondsData, inputValue?: string, userPoints?: string | null) => {\n if (!inputValue || !bond || !userPoints || !bond.trueBondPrices) return 0\n\n const bigValue = parseUnits(inputValue, 18)\n const fee = bond?.feeInPayout ?? 0\n const trueBondPriceObject = findHighestTrueBondPrice(userPoints, bond?.trueBondPrices)\n const trueBondPrice = BigInt(trueBondPriceObject?.trueBondPrice ?? '0')\n\n const reverseFeeScaled = parseUnits((fee / 100 / (1 - fee / 100)).toString(), 18)\n const trueBondPriceWithFee = trueBondPrice + mulDivRound(trueBondPrice, reverseFeeScaled, PRECISION_18)\n if (trueBondPriceWithFee === 0n) return 0\n\n const billValueScaled = mulDivRound(bigValue, PRECISION_18, trueBondPriceWithFee)\n return getBalanceNumber(billValueScaled, 18)\n}\n\nconst youGetUSD = (bond?: BondsData, inputValue?: string, userPoints?: string) => {\n if (!inputValue || !bond || !userPoints || !bond.trueBondPrices) return 0\n const payoutAmount = getPayoutAmount(bond, inputValue, userPoints)\n return payoutAmount * parseFloat(bond?.payoutTokenPrice ?? '0')\n}\n\nexport const getRawBonus = (bond?: BondsData, inputValue?: string, userPoints?: string) => {\n if (!bond || !inputValue || !userPoints) return '0'\n const premiumUSD = youGetUSD(bond, inputValue, userPoints) - parseFloat(youSpendUSD(bond, inputValue))\n return premiumUSD.toString()\n}\n\nexport const getBonusColor = (premiumString: string): string => {\n return parseFloat(premiumString) < 0 ? 'premium-negative' : 'premium-positive'\n}\n\n/**\n * Calculates the principal token amount needed to receive a target payout amount.\n * This is the reverse of getRawPayoutAmount function (does NOT include fees).\n *\n * @param bond - The bond data\n * @param targetPayoutAmount - The desired payout amount in payout tokens\n * @param userPoints - User's tier points\n * @returns The principal token amount needed, or 0 if calculation cannot be performed\n */\nexport const getPrincipalAmount = (\n bond?: BondsData,\n targetPayoutAmount?: number | string,\n userPoints?: string | null,\n): number => {\n if (!targetPayoutAmount || !bond || !userPoints || !bond.trueBondPrices) return 0\n\n const billValue = parseUnits(targetPayoutAmount.toString(), 18)\n const fee = bond?.feeInPayout ?? 0\n const trueBondPriceObject = findHighestTrueBondPrice(userPoints, bond?.trueBondPrices)\n const trueBondPrice = BigInt(trueBondPriceObject?.trueBondPrice ?? '0')\n\n if (trueBondPrice === 0n) return 0\n\n const reverseFeeScaled = parseUnits((fee / 100 / (1 - fee / 100)).toString(), 18)\n const trueBondPriceWithFee = trueBondPrice + mulDivRound(trueBondPrice, reverseFeeScaled, PRECISION_18)\n\n // Reverse the formula: bigValue = billValue * (trueBondPrice + trueBondPrice * reverseFee)\n const bigValueScaled = mulDivRound(billValue, trueBondPriceWithFee, PRECISION_18)\n\n // Convert from 18 decimals back to regular amount\n return getBalanceNumber(bigValueScaled, 18)\n}\n\nexport const getRemainingTokensString = (bond: BondsData, allowLowValueBonds?: boolean) => {\n const remainingTokens = getSafetyAvailable(bond, allowLowValueBonds)\n // const remainingTokens = parseFloat(bond?.tokensRemaining ?? '0')\n const remainingTokensUsd = remainingTokens * parseFloat(bond.payoutTokenPrice ?? '0')\n\n return `${formatNumberSI(remainingTokens, 0)} ${bond.earnToken.symbol} ($${formatNumberSI(remainingTokensUsd, 0)})`\n}\n\nexport const remainingPercentage = (bond: BondsData): number => {\n const totalMaxPayout = getBalanceNumber(bond.maxTotalPayout ?? '0', bond.earnToken.decimals?.[bond.chainId] ?? 18)\n const remainingTokens = Number(bond.tokensRemaining ?? '0')\n\n return (remainingTokens / totalMaxPayout) * 100\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"displayHelpers.js","sources":["../../src/utils/displayHelpers.ts"],"sourcesContent":["import { UserBill } from '../types/yourbonds'\nimport { getBalanceNumber } from './getBalanceNumber'\nimport { BondsData } from '../types/bonds'\nimport { getFirstNonZeroDigits } from './roundNumber'\nimport { getTimePeriods } from './getTimePeriods'\nimport { formatNumberSI } from './formatNumber'\nimport { BillsConfig, LaunchBondTiers } from '@ape.swap/apeswap-lists'\nimport { TIERS_WEIGHT } from '../state/tiers/tiers'\nimport { findHighestTrueBondPrice } from './bondPriceHelpers'\nimport { mulDivRound, parseUnits, toFixedString } from './fixedPoint'\n\nconst PRECISION_18 = 10n ** 18n\n// Scale used to carry percentage ratios (tier boost, fee) into integer math alongside\n// wei-scale trueBondPrice values, so the huge integer never round-trips through a float.\nconst RATIO_SCALE = 1_000_000_000_000n // 1e12\nconst scaleRatio = (ratio: number): bigint => parseUnits(ratio.toString(), 12)\n\nexport const claimable = (userBill?: UserBill) => {\n return getBalanceNumber(\n userBill?.pendingRewards ?? '0',\n userBill?.bond?.earnToken?.decimals?.[userBill?.bond?.chainId] ?? 18,\n )\n}\n\nexport const claimableUSD = (userBill?: UserBill) => {\n const claimableTokens = claimable(userBill)\n return claimableTokens * parseFloat(userBill?.bond?.payoutTokenPrice ?? '0')\n}\n\nexport const earnTokenPrice = (bond: BondsData) => {\n return formatNumberSI(bond?.payoutTokenPrice ?? '0')\n}\n\n// Amount of unvested (locked) tokens\nexport const pending = (userBill?: UserBill) => {\n return (\n getBalanceNumber(userBill?.payout ?? 0, userBill?.bond?.earnToken?.decimals?.[userBill?.bond?.chainId] ?? 18) -\n claimable(userBill)\n )\n}\n\nexport const pendingUSD = (userBill?: UserBill) => {\n const pendingTokens = pending(userBill)\n return pendingTokens * parseFloat(userBill?.bond?.payoutTokenPrice ?? '0')\n}\n\nexport const claimed = (userBill?: UserBill) => {\n return getBalanceNumber(\n userBill?.payoutClaimed ?? '0',\n userBill?.bond?.earnToken?.decimals?.[userBill?.bond?.chainId] ?? 18,\n )\n}\n\nexport const claimedUSD = (userBill?: UserBill) => {\n const claimedTokens = claimed(userBill)\n return claimedTokens * parseFloat(userBill?.bond?.payoutTokenPrice ?? '0')\n}\n\nexport const getPercentageVested = (bond?: UserBill) => {\n const vestingTerm = parseInt(bond?.vestingTerm ?? '0')\n const timeLeftForFullyVested = getTimeLeftForFullyVested(bond)\n if (timeLeftForFullyVested <= 0) return 100\n return ((vestingTerm - timeLeftForFullyVested) / vestingTerm) * 100\n}\n\nexport const getTimeLeftForFullyVested = (bond?: UserBill) => {\n const vestingTerm = parseInt(bond?.vestingTerm ?? '0')\n const purchaseTimestamp = parseInt(bond?.vestingStartTimestamp ?? '0')\n const now = Math.round(Date.now() / 1000)\n return purchaseTimestamp + vestingTerm - now\n}\n\nexport const getPendingVestingString = (bond?: UserBill) => {\n const timeLeftForFullyVested = getTimeLeftForFullyVested(bond)\n const vestingTime = getTimePeriods(timeLeftForFullyVested, true)\n return `${vestingTime.days}d, ${vestingTime.hours}h, ${vestingTime.minutes}m`\n}\n\nexport const getVestingTermsString = (bond?: BondsData | BillsConfig) => {\n const vestingTerm = bond?.vestingTerm ?? 0\n const vestingCliff = bond?.vestingCliff ?? 0\n if (!vestingCliff) {\n const vestingTime = getTimePeriods(vestingTerm, true)\n return `${vestingTime.days} D`\n } else if (vestingCliff) {\n // TODO: remove this hardcoded shit\n if (bond?.earnToken.symbol === 'AIX') {\n return `${getTimePeriods(vestingCliff, true).days} D`\n }\n const vestingTime = getTimePeriods(vestingTerm - vestingCliff, true)\n const vestingCliffString = getTimePeriods(vestingCliff, true)\n return `${vestingCliffString.days + vestingTime.days} D`\n }\n return '-'\n}\n\nexport const getVestingTermsTooltipString = (bond?: BondsData | BillsConfig) => {\n const vestingTerm = bond?.vestingTerm ?? 0\n const vestingCliff = bond?.vestingCliff\n if (!vestingCliff) return undefined\n const vestingTime = getTimePeriods(vestingTerm - vestingCliff, true)\n const vestingCliffString = getTimePeriods(vestingCliff, true)\n if (vestingTerm - vestingCliff === 0) {\n return `${vestingCliffString.days}-day cliff, then instant release of all tokens.`\n }\n return `${vestingCliffString.days}-day cliff + ${vestingTime.days}-day linear vesting.`\n}\n\n// Applies tier-boost and fee percentage multipliers to a wei-scale (1e18) trueBondPrice,\n// keeping the huge integer exact until the final getBalanceNumber() conversion.\nconst trueBondPriceWithFeeNumber = (\n trueBondPrice: string | undefined,\n tierBoostRate: number,\n feeInPayout: number,\n): number => {\n const priceBig = BigInt(trueBondPrice ?? '0')\n const tierAdjusted = mulDivRound(priceBig, scaleRatio((100 + tierBoostRate) / 100), RATIO_SCALE)\n const feeAdjusted = mulDivRound(tierAdjusted, scaleRatio((100 + feeInPayout) / 100), RATIO_SCALE)\n return getBalanceNumber(feeAdjusted)\n}\n\nexport const discountEarnTokenPrice = (bond: BondsData, useTiers?: boolean) => {\n const feeInPayout = bond?.feeInPayout ?? 0\n const tierBoostRate = bond?.tierBoostRate ?? 0\n const principalTokenPrice = parseFloat(bond.principalTokenPrice ?? '0')\n const trueBondPrice = findHighestTrueBondPrice(\n useTiers ? TIERS_WEIGHT[LaunchBondTiers.Legend] : '0',\n bond?.trueBondPrices,\n )?.trueBondPrice\n const trueBondPriceWithFee = trueBondPriceWithFeeNumber(trueBondPrice, tierBoostRate, feeInPayout)\n return formatNumberSI(principalTokenPrice * trueBondPriceWithFee, 3)\n}\n\nexport const discountEarnTokenPriceForUser = (bond: BondsData, useTiers?: boolean, userTier?: LaunchBondTiers) => {\n const feeInPayout = bond?.feeInPayout ?? 0\n const tierBoostRate = bond?.tierBoostRate ?? 0\n const principalTokenPrice = parseFloat(bond.principalTokenPrice ?? '0')\n const trueBondPrice = findHighestTrueBondPrice(\n useTiers && userTier ? TIERS_WEIGHT[userTier] : '0',\n bond?.trueBondPrices,\n )?.trueBondPrice\n const trueBondPriceWithFee = trueBondPriceWithFeeNumber(trueBondPrice, tierBoostRate, feeInPayout)\n return getFirstNonZeroDigits(principalTokenPrice * trueBondPriceWithFee)\n}\n\nconst SAFETY_THRESHOLD = 5 // in USD\n\n// bond?.tokensRemaining is already a human-decimal string (divided by decimals upstream);\n// bond?.maxPayout is a raw wei-scale integer.\nconst getSafetyAvailable = (bond?: BondsData, allowLowValueBonds?: boolean): number => {\n const available = Number(bond?.tokensRemaining ?? '0')\n const payoutTokenPrice = Number(bond?.payoutTokenPrice ?? 0)\n const threshold = allowLowValueBonds ? 0 : SAFETY_THRESHOLD\n const thresholdToShow = payoutTokenPrice > 0 ? threshold / payoutTokenPrice : 0\n const feeInPayoutAdjuster = (100 - (bond?.feeInPayout ?? 0)) / 100\n const safeAvailable = available * feeInPayoutAdjuster - thresholdToShow\n if (available === 0) return 0\n return safeAvailable < 0 ? 0 : safeAvailable\n}\n\nconst getSafetyPurchaseLimit = (bond?: BondsData, allowLowValueBonds?: boolean): number => {\n const threshold = allowLowValueBonds ? 0 : SAFETY_THRESHOLD\n const payoutTokenPrice = Number(bond?.payoutTokenPrice ?? 0)\n const thresholdToShow = payoutTokenPrice > 0 ? threshold / payoutTokenPrice : 0\n const maxPayout = getBalanceNumber(bond?.maxPayout ?? 0, bond?.earnToken?.decimals?.[bond?.chainId] ?? 18)\n return maxPayout - thresholdToShow\n}\n\nexport const getMaxBuy = (bond?: BondsData, allowLowValueBonds?: boolean): number => {\n const safeAvailable = getSafetyAvailable(bond, allowLowValueBonds)\n const safePurchaseLimit = getSafetyPurchaseLimit(bond, allowLowValueBonds)\n\n return safePurchaseLimit < safeAvailable ? safePurchaseLimit : safeAvailable\n}\n\nexport function formatUSDNumber(input: string): string {\n const number = Number(input)\n if (Number.isNaN(number)) return '0'\n\n // If the number is greater than 0 but less than 0.01\n if (number > 0 && number < 0.01) {\n return '< 0.01'\n }\n // If the number is greater than 1k, round to no decimals.\n if (number > 1000) {\n return number.toLocaleString('en-US', { maximumFractionDigits: 0 })\n }\n // Note: Between 1k and 0.01 show 2 decimals\n return parseFloat(toFixedString(number, 2)).toLocaleString('en-US')\n}\n\nconst youSpendUSD = (bond: BondsData, inputValue: string) => {\n return (parseFloat(inputValue) * parseFloat(bond?.principalTokenPrice ?? '0')).toString()\n}\n\n// receives depositAmount and returns the payoutTokens the user will receive. IT DOES SUBTRACT FEE IN PAYOUT\nexport const getPayoutAmount = (bond?: BondsData, inputValue?: string, userPoints?: string | null) => {\n if (!inputValue || !bond || !userPoints || !bond.trueBondPrices) return 0\n\n const bigValue = parseUnits(inputValue, 18)\n const fee = bond?.feeInPayout ?? 0\n const trueBondPriceObject = findHighestTrueBondPrice(userPoints, bond?.trueBondPrices)\n const trueBondPrice = BigInt(trueBondPriceObject?.trueBondPrice ?? '0')\n\n const reverseFeeScaled = parseUnits((fee / 100 / (1 - fee / 100)).toString(), 18)\n const trueBondPriceWithFee = trueBondPrice + mulDivRound(trueBondPrice, reverseFeeScaled, PRECISION_18)\n if (trueBondPriceWithFee === 0n) return 0\n\n const billValueScaled = mulDivRound(bigValue, PRECISION_18, trueBondPriceWithFee)\n return getBalanceNumber(billValueScaled, 18)\n}\n\nconst youGetUSD = (bond?: BondsData, inputValue?: string, userPoints?: string) => {\n if (!inputValue || !bond || !userPoints || !bond.trueBondPrices) return 0\n const payoutAmount = getPayoutAmount(bond, inputValue, userPoints)\n return payoutAmount * parseFloat(bond?.payoutTokenPrice ?? '0')\n}\n\nexport const getRawBonus = (bond?: BondsData, inputValue?: string, userPoints?: string) => {\n if (!bond || !inputValue || !userPoints) return '0'\n const premiumUSD = youGetUSD(bond, inputValue, userPoints) - parseFloat(youSpendUSD(bond, inputValue))\n return premiumUSD.toString()\n}\n\nexport const getBonusColor = (premiumString: string): string => {\n return parseFloat(premiumString) < 0 ? 'premium-negative' : 'premium-positive'\n}\n\n/**\n * Calculates the principal token amount needed to receive a target payout amount.\n * This is the reverse of getRawPayoutAmount function (does NOT include fees).\n *\n * @param bond - The bond data\n * @param targetPayoutAmount - The desired payout amount in payout tokens\n * @param userPoints - User's tier points\n * @returns The principal token amount needed, or 0 if calculation cannot be performed\n */\nexport const getPrincipalAmount = (\n bond?: BondsData,\n targetPayoutAmount?: number | string,\n userPoints?: string | null,\n): number => {\n if (!targetPayoutAmount || !bond || !userPoints || !bond.trueBondPrices) return 0\n\n const billValue = parseUnits(targetPayoutAmount.toString(), 18)\n const fee = bond?.feeInPayout ?? 0\n const trueBondPriceObject = findHighestTrueBondPrice(userPoints, bond?.trueBondPrices)\n const trueBondPrice = BigInt(trueBondPriceObject?.trueBondPrice ?? '0')\n\n if (trueBondPrice === 0n) return 0\n\n const reverseFeeScaled = parseUnits((fee / 100 / (1 - fee / 100)).toString(), 18)\n const trueBondPriceWithFee = trueBondPrice + mulDivRound(trueBondPrice, reverseFeeScaled, PRECISION_18)\n\n // Reverse the formula: bigValue = billValue * (trueBondPrice + trueBondPrice * reverseFee)\n const bigValueScaled = mulDivRound(billValue, trueBondPriceWithFee, PRECISION_18)\n\n // Convert from 18 decimals back to regular amount\n return getBalanceNumber(bigValueScaled, 18)\n}\n\nexport const getRemainingTokensString = (bond: BondsData, allowLowValueBonds?: boolean) => {\n const remainingTokens = getSafetyAvailable(bond, allowLowValueBonds)\n // const remainingTokens = parseFloat(bond?.tokensRemaining ?? '0')\n const remainingTokensUsd = remainingTokens * parseFloat(bond.payoutTokenPrice ?? '0')\n\n return `${formatNumberSI(remainingTokens, 0)} ${bond.earnToken.symbol} ($${formatNumberSI(remainingTokensUsd, 0)})`\n}\n\nexport const remainingPercentage = (bond: BondsData): number => {\n const totalMaxPayout = getBalanceNumber(bond.maxTotalPayout ?? '0', bond.earnToken.decimals?.[bond.chainId] ?? 18)\n const remainingTokens = Number(bond.tokensRemaining ?? '0')\n\n return (remainingTokens / totalMaxPayout) * 100\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export declare class HttpError extends Error {
2
+ status: number;
3
+ constructor(status: number, statusText: string);
4
+ }
5
+ export declare function apiGet<T = any>(url: string, opts?: {
6
+ timeoutMs?: number;
7
+ }): Promise<T>;
8
+ export declare function apiPost<T = any>(url: string, body?: unknown, opts?: {
9
+ timeoutMs?: number;
10
+ headers?: Record<string, string>;
11
+ }): Promise<T>;
@@ -0,0 +1,48 @@
1
+ // Thin fetch wrapper matching the subset of axios behavior this SDK relies on:
2
+ // throws on non-2xx responses, and parses the body as JSON when possible,
3
+ // falling back to raw text otherwise (mirrors axios's default transformResponse).
4
+ class HttpError extends Error {
5
+ constructor(status, statusText) {
6
+ super(`Request failed with status ${status}${statusText ? ` (${statusText})` : ''}`);
7
+ this.status = status;
8
+ }
9
+ }
10
+ async function parseBody(res) {
11
+ const text = await res.text();
12
+ if (!text)
13
+ return undefined;
14
+ try {
15
+ return JSON.parse(text);
16
+ }
17
+ catch {
18
+ return text;
19
+ }
20
+ }
21
+ async function request(url, init, timeoutMs) {
22
+ const controller = timeoutMs ? new AbortController() : undefined;
23
+ const timeoutId = timeoutMs ? setTimeout(() => controller.abort(), timeoutMs) : undefined;
24
+ try {
25
+ const res = await fetch(url, { ...init, signal: controller?.signal });
26
+ const body = await parseBody(res);
27
+ if (!res.ok)
28
+ throw new HttpError(res.status, res.statusText);
29
+ return body;
30
+ }
31
+ finally {
32
+ if (timeoutId)
33
+ clearTimeout(timeoutId);
34
+ }
35
+ }
36
+ function apiGet(url, opts) {
37
+ return request(url, { method: 'GET' }, opts?.timeoutMs);
38
+ }
39
+ function apiPost(url, body, opts) {
40
+ return request(url, {
41
+ method: 'POST',
42
+ body: body !== undefined && body !== null ? JSON.stringify(body) : undefined,
43
+ headers: { 'Content-Type': 'application/json', ...(opts?.headers ?? {}) },
44
+ }, opts?.timeoutMs);
45
+ }
46
+
47
+ export { HttpError, apiGet, apiPost };
48
+ //# sourceMappingURL=httpClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpClient.js","sources":["../../src/utils/httpClient.ts"],"sourcesContent":["// Thin fetch wrapper matching the subset of axios behavior this SDK relies on:\n// throws on non-2xx responses, and parses the body as JSON when possible,\n// falling back to raw text otherwise (mirrors axios's default transformResponse).\n\nexport class HttpError extends Error {\n status: number\n\n constructor(status: number, statusText: string) {\n super(`Request failed with status ${status}${statusText ? ` (${statusText})` : ''}`)\n this.status = status\n }\n}\n\nasync function parseBody(res: Response): Promise<any> {\n const text = await res.text()\n if (!text) return undefined\n try {\n return JSON.parse(text)\n } catch {\n return text\n }\n}\n\nasync function request<T>(url: string, init: RequestInit, timeoutMs?: number): Promise<T> {\n const controller = timeoutMs ? new AbortController() : undefined\n const timeoutId = timeoutMs ? setTimeout(() => controller!.abort(), timeoutMs) : undefined\n\n try {\n const res = await fetch(url, { ...init, signal: controller?.signal })\n const body = await parseBody(res)\n if (!res.ok) throw new HttpError(res.status, res.statusText)\n return body as T\n } finally {\n if (timeoutId) clearTimeout(timeoutId)\n }\n}\n\nexport function apiGet<T = any>(url: string, opts?: { timeoutMs?: number }): Promise<T> {\n return request<T>(url, { method: 'GET' }, opts?.timeoutMs)\n}\n\nexport function apiPost<T = any>(\n url: string,\n body?: unknown,\n opts?: { timeoutMs?: number; headers?: Record<string, string> },\n): Promise<T> {\n return request<T>(\n url,\n {\n method: 'POST',\n body: body !== undefined && body !== null ? JSON.stringify(body) : undefined,\n headers: { 'Content-Type': 'application/json', ...(opts?.headers ?? {}) },\n },\n opts?.timeoutMs,\n )\n}\n"],"names":[],"mappings":"AAAA;AACA;AACA;AAEM,MAAO,SAAU,SAAQ,KAAK,CAAA;IAGlC,WAAA,CAAY,MAAc,EAAE,UAAkB,EAAA;AAC5C,QAAA,KAAK,CAAC,CAAA,2BAAA,EAA8B,MAAM,CAAA,EAAG,UAAU,GAAG,CAAA,EAAA,EAAK,UAAU,GAAG,GAAG,EAAE,CAAA,CAAE,CAAC;AACpF,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;IACtB;AACD;AAED,eAAe,SAAS,CAAC,GAAa,EAAA;AACpC,IAAA,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE;AAC7B,IAAA,IAAI,CAAC,IAAI;AAAE,QAAA,OAAO,SAAS;AAC3B,IAAA,IAAI;AACF,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB;AAAE,IAAA,MAAM;AACN,QAAA,OAAO,IAAI;IACb;AACF;AAEA,eAAe,OAAO,CAAI,GAAW,EAAE,IAAiB,EAAE,SAAkB,EAAA;AAC1E,IAAA,MAAM,UAAU,GAAG,SAAS,GAAG,IAAI,eAAe,EAAE,GAAG,SAAS;IAChE,MAAM,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC,MAAM,UAAW,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,GAAG,SAAS;AAE1F,IAAA,IAAI;AACF,QAAA,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACrE,QAAA,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC;QACjC,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC;AAC5D,QAAA,OAAO,IAAS;IAClB;YAAU;AACR,QAAA,IAAI,SAAS;YAAE,YAAY,CAAC,SAAS,CAAC;IACxC;AACF;AAEM,SAAU,MAAM,CAAU,GAAW,EAAE,IAA6B,EAAA;AACxE,IAAA,OAAO,OAAO,CAAI,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC;AAC5D;SAEgB,OAAO,CACrB,GAAW,EACX,IAAc,EACd,IAA+D,EAAA;IAE/D,OAAO,OAAO,CACZ,GAAG,EACH;AACE,QAAA,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS;AAC5E,QAAA,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,IAAI,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,EAAE;AAC1E,KAAA,EACD,IAAI,EAAE,SAAS,CAChB;AACH;;;;"}
@@ -0,0 +1 @@
1
+ export declare const resolveColor: (color?: string) => string | undefined;
@@ -0,0 +1,9 @@
1
+ const camelToKebab = (str) => str.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();
2
+ const resolveColor = (color) => {
3
+ if (!color || !/^[a-zA-Z][a-zA-Z0-9]*$/.test(color))
4
+ return color;
5
+ return `var(--ape-color-${camelToKebab(color)}, ${color})`;
6
+ };
7
+
8
+ export { resolveColor };
9
+ //# sourceMappingURL=resolveColor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveColor.js","sources":["../../src/utils/resolveColor.ts"],"sourcesContent":["const camelToKebab = (str: string) => str.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase()\n\nexport const resolveColor = (color?: string) => {\n if (!color || !/^[a-zA-Z][a-zA-Z0-9]*$/.test(color)) return color\n return `var(--ape-color-${camelToKebab(color)}, ${color})`\n}\n"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG,CAAC,GAAW,KAAK,GAAG,CAAC,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE;AAEvF,MAAM,YAAY,GAAG,CAAC,KAAc,KAAI;IAC7C,IAAI,CAAC,KAAK,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC;AAAE,QAAA,OAAO,KAAK;IACjE,OAAO,CAAA,gBAAA,EAAmB,YAAY,CAAC,KAAK,CAAC,CAAA,EAAA,EAAK,KAAK,GAAG;AAC5D;;;;"}
@@ -1,9 +1,8 @@
1
- import React from 'react';
2
1
  type SortableKeys = 'bonus' | 'arr' | 'terms' | 'tokensRemaining';
3
2
  type SortDirection = 'asc' | 'desc';
4
3
  export interface SortOptions {
5
4
  key: SortableKeys;
6
5
  direction: SortDirection;
7
6
  }
8
- declare const Bonds: () => React.JSX.Element;
7
+ declare const Bonds: () => import("react/jsx-runtime").JSX.Element;
9
8
  export default Bonds;
@@ -1,4 +1,4 @@
1
- import { jsxs, jsx } from 'theme-ui/jsx-runtime';
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { useState, useMemo, useCallback, useEffect } from 'react';
3
3
  import { useTopTags } from '../../hooks/useTopTags.js';
4
4
  import { sortBonds, isBondSupported, isBondSoldOut } from './utils.js';
@@ -158,16 +158,7 @@ const Bonds = () => {
158
158
  tryScroll();
159
159
  }
160
160
  }, [bondData?.length]);
161
- return (jsxs(Flex, { className: "bonds-container", children: [jsx(CheckUrl, {}), jsx(BondsMenu, { searchQuery: searchQuery, setSearchQuery: setSearchQuery, setChainFilterOption: setChainFilterOption, chainFilterOption: chainFilterOption ?? ['All Chains'], filterOptions: filterOptions, filterOption: filterOption, setFilterOption: handleChangeFilterOption, onSort: handleSortOptions }), SDKConfig.useHotBonds && !SDKConfig.bondPartner && filterOption !== 'SOLD OUT' && jsx(BuyAgainRow, {}), Object.keys(billsToRender)?.length > 0 ? (jsx(Flex, { className: "bondrowsbychain", children: validatedChains?.map((chain) => filterOption === 'SOLD OUT' ? (Object.entries(billsToRender[chain] ?? {}).map((groupedBonds) => (jsx(SoldOutRows, { bonds: groupedBonds[1] }, groupedBonds[0])))) : (jsx(ActiveBondRows, { chain: chain, bonds: (billsToRender[chain] ?? []), hideTitles: searchQuery !== '', showHotBonds: !searchQuery && SDKConfig.useHotBonds && SDKConfig?.hotBondChains?.includes(chain) }, chain))) })) : searchQuery || !chainFilterOption.includes('All Chains') ? (jsx(Flex, { className: "placeholder-monkey-wrapper", children: jsx(PlaceholderMonkey, { text: 'No results, change filters.' }) })) : filterOption === 'FAVORITES' ? (jsxs(Flex, { sx: {
162
- width: '100%',
163
- height: '300px',
164
- background: 'white2',
165
- borderRadius: 'normal',
166
- justifyContent: 'center',
167
- alignItems: 'center',
168
- flexDirection: 'column',
169
- mt: '10px',
170
- }, children: [jsx(StarFilled, { width: 75, height: 75 }), jsx(Flex, { sx: { mt: '10px' }, children: `You don't have any Favorite Bonds yet!` }), jsx(Flex, { sx: { fontSize: '12px', fontWeight: 400, color: 'textDisabledButton', mt: '10px' }, children: `Click on the 'star' or 'fire' icon to add Bonds to the list.` })] })) : (jsx(LoadingSkeleton, {})), SDKConfig.useHotBonds && jsx(RecommendationCards, {}), jsx(Flex, { sx: { width: '100%', justifyContent: 'center', my: '15px' }, className: "powered-by-apebond", children: jsx("img", { src: "https://res.cloudinary.com/dswmrqgwy/image/upload/v1741643990/poweredbyapebondsdk_cxiouj.png", alt: "powered-by-apebond", style: { width: '200px', height: 'auto' } }) })] }));
161
+ return (jsxs(Flex, { className: "bonds-container ape:w-full ape:flex ape:flex-col ape:px-[10px]", children: [jsx(CheckUrl, {}), jsx(BondsMenu, { searchQuery: searchQuery, setSearchQuery: setSearchQuery, setChainFilterOption: setChainFilterOption, chainFilterOption: chainFilterOption ?? ['All Chains'], filterOptions: filterOptions, filterOption: filterOption, setFilterOption: handleChangeFilterOption, onSort: handleSortOptions }), SDKConfig.useHotBonds && !SDKConfig.bondPartner && filterOption !== 'SOLD OUT' && jsx(BuyAgainRow, {}), Object.keys(billsToRender)?.length > 0 ? (jsx(Flex, { className: "bondrowsbychain ape:w-full ape:flex-col ape:mt-[5px]", children: validatedChains?.map((chain) => filterOption === 'SOLD OUT' ? (Object.entries(billsToRender[chain] ?? {}).map((groupedBonds) => (jsx(SoldOutRows, { bonds: groupedBonds[1] }, groupedBonds[0])))) : (jsx(ActiveBondRows, { chain: chain, bonds: (billsToRender[chain] ?? []), hideTitles: searchQuery !== '', showHotBonds: !searchQuery && SDKConfig.useHotBonds && SDKConfig?.hotBondChains?.includes(chain) }, chain))) })) : searchQuery || !chainFilterOption.includes('All Chains') ? (jsx(Flex, { className: "placeholder-monkey-wrapper ape:w-full ape:flex-col ape:pt-[100px] ape:pb-[100px] ape:bg-white2 ape:items-center ape:rounded-[10px] ape:mt-[15px] ape:justify-center ape:h-[400px]", children: jsx(PlaceholderMonkey, { text: 'No results, change filters.' }) })) : filterOption === 'FAVORITES' ? (jsxs("div", { className: "ape:w-full ape:h-[300px] ape:bg-white2 ape:rounded-normal ape:flex ape:justify-center ape:items-center ape:flex-col ape:mt-[10px]", children: [jsx(StarFilled, { width: 75, height: 75 }), jsx("div", { className: "ape:mt-[10px]", children: `You don't have any Favorite Bonds yet!` }), jsx("div", { className: "ape:text-[12px] ape:font-normal ape:text-text-disabled-button ape:mt-[10px]", children: `Click on the 'star' or 'fire' icon to add Bonds to the list.` })] })) : (jsx(LoadingSkeleton, {})), SDKConfig.useHotBonds && jsx(RecommendationCards, {}), jsx("div", { className: "powered-by-apebond ape:w-full ape:flex ape:justify-center ape:my-[15px]", children: jsx("img", { src: "https://res.cloudinary.com/dswmrqgwy/image/upload/v1741643990/poweredbyapebondsdk_cxiouj.png", alt: "powered-by-apebond", style: { width: '200px', height: 'auto' } }) })] }));
171
162
  };
172
163
 
173
164
  export { Bonds as default };
@@ -1 +1 @@
1
- {"version":3,"file":"Bonds.js","sources":["../../../src/views/Bonds/Bonds.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from 'react'\nimport { BondsData } from '../../types/bonds'\nimport { useTopTags } from '../../hooks/useTopTags'\nimport { isBondSoldOut, isBondSupported, sortBonds } from './utils'\nimport useBondsData from '../../state/bonds/useBondsData'\nimport CheckURL from './components/CheckURL'\nimport PlaceholderMonkey from '../../components/PlaceholderMonkey'\nimport useFavoriteTokens from '../../state/favoriteTokens/useFavoriteTokens'\nimport useChainFilterOption from '../../state/chainFilterOption/useChainFilterOption'\nimport useBondsList from '../../state/bonds/useBondsList'\nimport { BaseBondConfig } from '@ape.swap/apeswap-lists'\nimport RecommendationCards from './components/RecommendationCards'\nimport BondsMenu from './components/BondsMenu/BondsMenu'\nimport { useSDKConfig } from '../../state/useSDKConfig'\nimport BuyAgainRow from './components/BuyAgainRow'\nimport LoadingSkeleton from './components/LoadingSkeleton/LoadingSkeleton'\nimport useHotBonds from '../../state/hotBonds/useHotBonds'\nimport useBondsListPreTGE from '../../state/bonds/useBondsListPreTGE'\nimport { MAINNET_CHAINS } from '../../config/constants/chains'\nimport ActiveBondRows from './components/BondRows/ActiveBondRows'\nimport SoldOutRows from './components/BondRows/SoldOutRows'\nimport Flex from '../../components/uikit-sdk/Flex'\nimport StarFilled from '../../components/uikit-sdk/Svg/Icons/StarFilled'\n\ntype SortableKeys = 'bonus' | 'arr' | 'terms' | 'tokensRemaining'\ntype SortDirection = 'asc' | 'desc'\n\nexport interface SortOptions {\n key: SortableKeys\n direction: SortDirection\n}\n\ntype GroupedByChain = Record<number, (BondsData | BaseBondConfig)[]>\ntype GroupedBySymbol = Record<number, Record<string, (BondsData | BaseBondConfig)[]>>\n\nconst Bonds = () => {\n // Fetch data\n useHotBonds()\n const SDKConfig = useSDKConfig()\n const { favTokens } = useFavoriteTokens()\n const { data: bondData } = useBondsData()\n const { data: allBonds } = useBondsList()\n const { data: allPreBonds } = useBondsListPreTGE()\n const { data: chainFilterOption, setChainFilterOption } = useChainFilterOption()\n const topTags = useTopTags()\n\n // State\n const [sortConfig, setSortConfig] = useState<SortOptions | undefined>({ key: 'bonus', direction: 'desc' })\n const [searchQuery, setSearchQuery] = useState('')\n const [filterOption, setFilterOption] = useState('ALL')\n\n // Static data\n const filterOptions = ['ALL', 'FAVORITES', ...topTags, 'SOLD OUT']\n const validatedChains = SDKConfig?.chains?.filter((chain) => MAINNET_CHAINS.includes(chain))\n\n const billsToRender: GroupedByChain | GroupedBySymbol = useMemo(() => {\n let bondsToUse\n\n if (filterOption === 'SOLD OUT') {\n if (!allBonds || !allPreBonds) return {}\n bondsToUse = [...allPreBonds, ...Object.values(allBonds).flat()]\n } else {\n bondsToUse = sortBonds(sortConfig, bondData)\n }\n\n const filteredBonds = bondsToUse?.filter((bill) => {\n // filter incompatible bonds\n if (!isBondSupported(SDKConfig.highestCompatibleVersion!, bill.version)) return false\n\n // filter onlyPartner Bonds\n if (bill.onlyPartner && SDKConfig.bondPartner !== bill.bondPartner) return false\n\n // filter searchQuery\n if (searchQuery) {\n const matchesSearch = [\n //@ts-ignore\n `${bill?.underlyingEarnToken?.symbol?.toUpperCase()}`,\n `${bill?.earnToken?.symbol.toUpperCase()}`,\n `${bill?.lpToken?.symbol.toUpperCase()}`,\n ].some((property) => property?.includes(searchQuery.toUpperCase()))\n if (!matchesSearch) return false\n }\n\n // filter tiers\n if (!SDKConfig?.useTiers && 'minTier' in bill) {\n if (bill.minTier !== null && bill.minTier !== undefined) return false\n }\n\n // filter bondPartner\n if (SDKConfig?.bondPartner && bill.bondPartner !== SDKConfig.bondPartner) return false\n\n // filter topTags\n if (topTags.includes(filterOption) && !bill?.tags?.includes(filterOption)) return false\n\n // filter chainFilterOption\n if (chainFilterOption && !chainFilterOption?.includes('All Chains')) {\n if (!chainFilterOption?.includes(bill?.chainId?.toString())) return false\n }\n\n // filter SOLD OUT\n if (filterOption === 'SOLD OUT' && !isBondSoldOut(bill as BondsData, SDKConfig.showLowValueBonds)) return false\n\n // filter not SOLD OUT\n if (filterOption !== 'SOLD OUT' && isBondSoldOut(bill as BondsData, SDKConfig.showLowValueBonds)) return false\n\n // filter FAVORITES\n if (filterOption === 'FAVORITES' && !favTokens.includes(bill?.earnToken?.symbol?.toLowerCase())) return false\n\n return true\n })\n\n if (filterOption === 'SOLD OUT') {\n return filteredBonds?.reduce<GroupedBySymbol>((acc, bond) => {\n const symbol = bond?.earnToken?.symbol\n const chainId = bond.chainId\n\n if (!acc[chainId]) acc[chainId] = {}\n\n if (!acc[chainId][symbol]) acc[chainId][symbol] = []\n\n acc[chainId][symbol].push(bond)\n return acc\n }, {})\n } else {\n return filteredBonds?.reduce<GroupedByChain>((acc, bond) => {\n const { chainId } = bond\n if (!acc[chainId]) acc[chainId] = []\n acc[chainId].push(bond)\n return acc\n }, {})\n }\n }, [\n allBonds,\n allPreBonds,\n sortConfig,\n bondData,\n filterOption,\n SDKConfig.highestCompatibleVersion,\n SDKConfig.bondPartner,\n SDKConfig?.useTiers,\n SDKConfig.showLowValueBonds,\n searchQuery,\n topTags,\n chainFilterOption,\n favTokens,\n ])\n\n // Handlers\n const handleSortOptions = useCallback(\n (key: SortableKeys) => {\n let direction: SortDirection = 'desc'\n if (sortConfig?.key === key && sortConfig?.direction === 'desc') {\n direction = 'asc'\n }\n setSortConfig({ key, direction })\n },\n [sortConfig?.key, sortConfig?.direction],\n )\n\n const handleChangeFilterOption = useCallback((newOption: string) => {\n setFilterOption(newOption)\n }, [])\n\n useEffect(() => {\n const hash = window.location.hash\n //@ts-ignore\n if (bondData?.length > 0 && hash) {\n const tryScroll = () => {\n const normalizedHash = decodeURIComponent(hash).replace(/\\s+/g, '')\n const element = document.querySelector(normalizedHash)\n if (element) {\n const y = element.getBoundingClientRect().top + window.scrollY - 70\n window.scrollTo({ top: y, behavior: 'smooth' })\n } else {\n setTimeout(tryScroll, 50)\n }\n }\n tryScroll()\n }\n }, [bondData?.length])\n\n return (\n <Flex className=\"bonds-container\">\n <CheckURL />\n <BondsMenu\n searchQuery={searchQuery}\n setSearchQuery={setSearchQuery}\n setChainFilterOption={setChainFilterOption}\n chainFilterOption={chainFilterOption ?? ['All Chains']}\n filterOptions={filterOptions}\n filterOption={filterOption}\n setFilterOption={handleChangeFilterOption}\n onSort={handleSortOptions}\n />\n {SDKConfig.useHotBonds && !SDKConfig.bondPartner && filterOption !== 'SOLD OUT' && <BuyAgainRow />}\n {Object.keys(billsToRender)?.length > 0 ? (\n <Flex className=\"bondrowsbychain\">\n {validatedChains?.map((chain) =>\n filterOption === 'SOLD OUT' ? (\n Object.entries(billsToRender[chain] ?? {}).map((groupedBonds) => (\n <SoldOutRows bonds={groupedBonds[1]} key={groupedBonds[0]} />\n ))\n ) : (\n <ActiveBondRows\n chain={chain}\n bonds={(billsToRender[chain] ?? []) as (BondsData | BaseBondConfig)[]}\n key={chain}\n hideTitles={searchQuery !== ''}\n showHotBonds={!searchQuery && SDKConfig.useHotBonds && SDKConfig?.hotBondChains?.includes(chain)}\n />\n ),\n )}\n </Flex>\n ) : searchQuery || !chainFilterOption.includes('All Chains') ? (\n <Flex className=\"placeholder-monkey-wrapper\">\n <PlaceholderMonkey text={'No results, change filters.'} />\n </Flex>\n ) : filterOption === 'FAVORITES' ? (\n <Flex\n sx={{\n width: '100%',\n height: '300px',\n background: 'white2',\n borderRadius: 'normal',\n justifyContent: 'center',\n alignItems: 'center',\n flexDirection: 'column',\n mt: '10px',\n }}\n >\n <StarFilled width={75} height={75} />\n <Flex sx={{ mt: '10px' }}>{`You don't have any Favorite Bonds yet!`}</Flex>\n <Flex sx={{ fontSize: '12px', fontWeight: 400, color: 'textDisabledButton', mt: '10px' }}>\n {`Click on the 'star' or 'fire' icon to add Bonds to the list.`}\n </Flex>\n </Flex>\n ) : (\n <LoadingSkeleton />\n )}\n {SDKConfig.useHotBonds && <RecommendationCards />}\n <Flex sx={{ width: '100%', justifyContent: 'center', my: '15px' }} className=\"powered-by-apebond\">\n <img\n src=\"https://res.cloudinary.com/dswmrqgwy/image/upload/v1741643990/poweredbyapebondsdk_cxiouj.png\"\n alt=\"powered-by-apebond\"\n style={{ width: '200px', height: 'auto' }}\n />\n </Flex>\n </Flex>\n )\n}\n\nexport default Bonds\n"],"names":["_jsxs","_jsx","CheckURL"],"mappings":"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"}
1
+ {"version":3,"file":"Bonds.js","sources":["../../../src/views/Bonds/Bonds.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from 'react'\nimport { BondsData } from '../../types/bonds'\nimport { useTopTags } from '../../hooks/useTopTags'\nimport { isBondSoldOut, isBondSupported, sortBonds } from './utils'\nimport useBondsData from '../../state/bonds/useBondsData'\nimport CheckURL from './components/CheckURL'\nimport PlaceholderMonkey from '../../components/PlaceholderMonkey'\nimport useFavoriteTokens from '../../state/favoriteTokens/useFavoriteTokens'\nimport useChainFilterOption from '../../state/chainFilterOption/useChainFilterOption'\nimport useBondsList from '../../state/bonds/useBondsList'\nimport { BaseBondConfig } from '@ape.swap/apeswap-lists'\nimport RecommendationCards from './components/RecommendationCards'\nimport BondsMenu from './components/BondsMenu/BondsMenu'\nimport { useSDKConfig } from '../../state/useSDKConfig'\nimport BuyAgainRow from './components/BuyAgainRow'\nimport LoadingSkeleton from './components/LoadingSkeleton/LoadingSkeleton'\nimport useHotBonds from '../../state/hotBonds/useHotBonds'\nimport useBondsListPreTGE from '../../state/bonds/useBondsListPreTGE'\nimport { MAINNET_CHAINS } from '../../config/constants/chains'\nimport ActiveBondRows from './components/BondRows/ActiveBondRows'\nimport SoldOutRows from './components/BondRows/SoldOutRows'\nimport Flex from '../../components/uikit-sdk/Flex'\nimport StarFilled from '../../components/uikit-sdk/Svg/Icons/StarFilled'\n\ntype SortableKeys = 'bonus' | 'arr' | 'terms' | 'tokensRemaining'\ntype SortDirection = 'asc' | 'desc'\n\nexport interface SortOptions {\n key: SortableKeys\n direction: SortDirection\n}\n\ntype GroupedByChain = Record<number, (BondsData | BaseBondConfig)[]>\ntype GroupedBySymbol = Record<number, Record<string, (BondsData | BaseBondConfig)[]>>\n\nconst Bonds = () => {\n // Fetch data\n useHotBonds()\n const SDKConfig = useSDKConfig()\n const { favTokens } = useFavoriteTokens()\n const { data: bondData } = useBondsData()\n const { data: allBonds } = useBondsList()\n const { data: allPreBonds } = useBondsListPreTGE()\n const { data: chainFilterOption, setChainFilterOption } = useChainFilterOption()\n const topTags = useTopTags()\n\n // State\n const [sortConfig, setSortConfig] = useState<SortOptions | undefined>({ key: 'bonus', direction: 'desc' })\n const [searchQuery, setSearchQuery] = useState('')\n const [filterOption, setFilterOption] = useState('ALL')\n\n // Static data\n const filterOptions = ['ALL', 'FAVORITES', ...topTags, 'SOLD OUT']\n const validatedChains = SDKConfig?.chains?.filter((chain) => MAINNET_CHAINS.includes(chain))\n\n const billsToRender: GroupedByChain | GroupedBySymbol = useMemo(() => {\n let bondsToUse\n\n if (filterOption === 'SOLD OUT') {\n if (!allBonds || !allPreBonds) return {}\n bondsToUse = [...allPreBonds, ...Object.values(allBonds).flat()]\n } else {\n bondsToUse = sortBonds(sortConfig, bondData)\n }\n\n const filteredBonds = bondsToUse?.filter((bill) => {\n // filter incompatible bonds\n if (!isBondSupported(SDKConfig.highestCompatibleVersion!, bill.version)) return false\n\n // filter onlyPartner Bonds\n if (bill.onlyPartner && SDKConfig.bondPartner !== bill.bondPartner) return false\n\n // filter searchQuery\n if (searchQuery) {\n const matchesSearch = [\n //@ts-ignore\n `${bill?.underlyingEarnToken?.symbol?.toUpperCase()}`,\n `${bill?.earnToken?.symbol.toUpperCase()}`,\n `${bill?.lpToken?.symbol.toUpperCase()}`,\n ].some((property) => property?.includes(searchQuery.toUpperCase()))\n if (!matchesSearch) return false\n }\n\n // filter tiers\n if (!SDKConfig?.useTiers && 'minTier' in bill) {\n if (bill.minTier !== null && bill.minTier !== undefined) return false\n }\n\n // filter bondPartner\n if (SDKConfig?.bondPartner && bill.bondPartner !== SDKConfig.bondPartner) return false\n\n // filter topTags\n if (topTags.includes(filterOption) && !bill?.tags?.includes(filterOption)) return false\n\n // filter chainFilterOption\n if (chainFilterOption && !chainFilterOption?.includes('All Chains')) {\n if (!chainFilterOption?.includes(bill?.chainId?.toString())) return false\n }\n\n // filter SOLD OUT\n if (filterOption === 'SOLD OUT' && !isBondSoldOut(bill as BondsData, SDKConfig.showLowValueBonds)) return false\n\n // filter not SOLD OUT\n if (filterOption !== 'SOLD OUT' && isBondSoldOut(bill as BondsData, SDKConfig.showLowValueBonds)) return false\n\n // filter FAVORITES\n if (filterOption === 'FAVORITES' && !favTokens.includes(bill?.earnToken?.symbol?.toLowerCase())) return false\n\n return true\n })\n\n if (filterOption === 'SOLD OUT') {\n return filteredBonds?.reduce<GroupedBySymbol>((acc, bond) => {\n const symbol = bond?.earnToken?.symbol\n const chainId = bond.chainId\n\n if (!acc[chainId]) acc[chainId] = {}\n\n if (!acc[chainId][symbol]) acc[chainId][symbol] = []\n\n acc[chainId][symbol].push(bond)\n return acc\n }, {})\n } else {\n return filteredBonds?.reduce<GroupedByChain>((acc, bond) => {\n const { chainId } = bond\n if (!acc[chainId]) acc[chainId] = []\n acc[chainId].push(bond)\n return acc\n }, {})\n }\n }, [\n allBonds,\n allPreBonds,\n sortConfig,\n bondData,\n filterOption,\n SDKConfig.highestCompatibleVersion,\n SDKConfig.bondPartner,\n SDKConfig?.useTiers,\n SDKConfig.showLowValueBonds,\n searchQuery,\n topTags,\n chainFilterOption,\n favTokens,\n ])\n\n // Handlers\n const handleSortOptions = useCallback(\n (key: SortableKeys) => {\n let direction: SortDirection = 'desc'\n if (sortConfig?.key === key && sortConfig?.direction === 'desc') {\n direction = 'asc'\n }\n setSortConfig({ key, direction })\n },\n [sortConfig?.key, sortConfig?.direction],\n )\n\n const handleChangeFilterOption = useCallback((newOption: string) => {\n setFilterOption(newOption)\n }, [])\n\n useEffect(() => {\n const hash = window.location.hash\n //@ts-ignore\n if (bondData?.length > 0 && hash) {\n const tryScroll = () => {\n const normalizedHash = decodeURIComponent(hash).replace(/\\s+/g, '')\n const element = document.querySelector(normalizedHash)\n if (element) {\n const y = element.getBoundingClientRect().top + window.scrollY - 70\n window.scrollTo({ top: y, behavior: 'smooth' })\n } else {\n setTimeout(tryScroll, 50)\n }\n }\n tryScroll()\n }\n }, [bondData?.length])\n\n return (\n <Flex className=\"bonds-container ape:w-full ape:flex ape:flex-col ape:px-[10px]\">\n <CheckURL />\n <BondsMenu\n searchQuery={searchQuery}\n setSearchQuery={setSearchQuery}\n setChainFilterOption={setChainFilterOption}\n chainFilterOption={chainFilterOption ?? ['All Chains']}\n filterOptions={filterOptions}\n filterOption={filterOption}\n setFilterOption={handleChangeFilterOption}\n onSort={handleSortOptions}\n />\n {SDKConfig.useHotBonds && !SDKConfig.bondPartner && filterOption !== 'SOLD OUT' && <BuyAgainRow />}\n {Object.keys(billsToRender)?.length > 0 ? (\n <Flex className=\"bondrowsbychain ape:w-full ape:flex-col ape:mt-[5px]\">\n {validatedChains?.map((chain) =>\n filterOption === 'SOLD OUT' ? (\n Object.entries(billsToRender[chain] ?? {}).map((groupedBonds) => (\n <SoldOutRows bonds={groupedBonds[1]} key={groupedBonds[0]} />\n ))\n ) : (\n <ActiveBondRows\n chain={chain}\n bonds={(billsToRender[chain] ?? []) as (BondsData | BaseBondConfig)[]}\n key={chain}\n hideTitles={searchQuery !== ''}\n showHotBonds={!searchQuery && SDKConfig.useHotBonds && SDKConfig?.hotBondChains?.includes(chain)}\n />\n ),\n )}\n </Flex>\n ) : searchQuery || !chainFilterOption.includes('All Chains') ? (\n <Flex className=\"placeholder-monkey-wrapper ape:w-full ape:flex-col ape:pt-[100px] ape:pb-[100px] ape:bg-white2 ape:items-center ape:rounded-[10px] ape:mt-[15px] ape:justify-center ape:h-[400px]\">\n <PlaceholderMonkey text={'No results, change filters.'} />\n </Flex>\n ) : filterOption === 'FAVORITES' ? (\n <div className=\"ape:w-full ape:h-[300px] ape:bg-white2 ape:rounded-normal ape:flex ape:justify-center ape:items-center ape:flex-col ape:mt-[10px]\">\n <StarFilled width={75} height={75} />\n <div className=\"ape:mt-[10px]\">{`You don't have any Favorite Bonds yet!`}</div>\n <div className=\"ape:text-[12px] ape:font-normal ape:text-text-disabled-button ape:mt-[10px]\">\n {`Click on the 'star' or 'fire' icon to add Bonds to the list.`}\n </div>\n </div>\n ) : (\n <LoadingSkeleton />\n )}\n {SDKConfig.useHotBonds && <RecommendationCards />}\n <div className=\"powered-by-apebond ape:w-full ape:flex ape:justify-center ape:my-[15px]\">\n <img\n src=\"https://res.cloudinary.com/dswmrqgwy/image/upload/v1741643990/poweredbyapebondsdk_cxiouj.png\"\n alt=\"powered-by-apebond\"\n style={{ width: '200px', height: 'auto' }}\n />\n </div>\n </Flex>\n )\n}\n\nexport default Bonds\n"],"names":["_jsxs","_jsx","CheckURL"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { jsx, jsxs } from 'theme-ui/jsx-runtime';
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { useState } from 'react';
3
+ import clsx from 'clsx';
3
4
  import { AnimatePresence, motion } from 'framer-motion';
4
5
  import ChainTitle from './ChainTitle.js';
5
6
  import BondRow from './BondRow.js';
6
- import { Flex } from 'theme-ui';
7
+ import Flex from '../../../../components/uikit-sdk/Flex/index.js';
7
8
  import { ChainId } from '@ape.swap/apeswap-lists';
8
- import SwiperProvider from '../../../../contexts/SwiperProvider.js';
9
9
  import HotBondCards from '../HotBondCards/index.js';
10
10
  import ChainBanner from '../ChainBanner/ChainBanner.js';
11
11
  import { getRemainingTokensString, remainingPercentage, getVestingTermsTooltipString, getVestingTermsString } from '../../../../utils/displayHelpers.js';
@@ -15,15 +15,10 @@ import { getTimePeriods } from '../../../../utils/getTimePeriods.js';
15
15
  import { useSDKConfig } from '../../../../state/useSDKConfig.js';
16
16
 
17
17
  const ActiveBondRows = ({ chain, bonds, hideTitles, showHotBonds }) => {
18
- const { namingPreference } = useSDKConfig();
18
+ const { namingPreference, useCardsView } = useSDKConfig();
19
19
  const [isOpen, setIsOpen] = useState(true);
20
20
  const key = chain;
21
- return (jsx(Flex, { className: "bondrowswithtitle", children: jsxs(AnimatePresence, { initial: false, children: [jsx(Flex, { onClick: () => setIsOpen(!isOpen), sx: { cursor: 'pointer' }, children: jsx(ChainTitle, { chain: chain, pt: '5px', hideTitles: (bonds.length <= 0 && chain !== ChainId.SOL && chain !== ChainId.MONAD) || hideTitles, isOpen: isOpen }) }), isOpen && (bonds.length > 0 || chain === ChainId.MONAD) && (jsxs(motion.div, { initial: { height: 0, overflow: 'hidden' }, animate: { height: 'fit-content', overflow: 'hidden', transitionEnd: { overflow: 'visible' } }, exit: { height: 0, overflow: 'hidden' }, sx: {
22
- position: 'relative',
23
- overflow: 'hidden',
24
- width: '100%',
25
- marginTop: '0px',
26
- }, className: "bonds-card-container", children: [[
21
+ return (jsx(Flex, { className: "bondrowswithtitle ape:w-full ape:flex-col", children: jsxs(AnimatePresence, { initial: false, children: [jsx(Flex, { onClick: () => setIsOpen(!isOpen), className: "ape:cursor-pointer", children: jsx(ChainTitle, { chain: chain, pt: '5px', hideTitles: (bonds.length <= 0 && chain !== ChainId.SOL && chain !== ChainId.MONAD) || hideTitles, isOpen: isOpen }) }), isOpen && (bonds.length > 0 || chain === ChainId.MONAD) && (jsxs(motion.div, { initial: { height: 0, overflow: 'hidden' }, animate: { height: 'fit-content', overflow: 'hidden', transitionEnd: { overflow: 'visible' } }, exit: { height: 0, overflow: 'hidden' }, className: clsx('bonds-card-container ape:relative ape:overflow-hidden ape:w-full ape:mt-0', useCardsView && 'ape:flex ape:flex-wrap'), children: [[
27
22
  // ChainId.SOL,
28
23
  ChainId.MONAD,
29
24
  // ChainId.APTOS,
@@ -72,7 +67,7 @@ const ActiveBondRows = ({ chain, bonds, hideTitles, showHotBonds }) => {
72
67
  ? `${bond?.trueBondPrices?.[0]?.discountWithFee?.toFixed(2)}%`
73
68
  : undefined, shortDescription: bond.shortDescription, cgId: bond.cgId, dexscreener: bond?.dexscreener }, `${bondAddress}-${bond.chainId}-${index}`));
74
69
  }
75
- }), showHotBonds && (jsx(SwiperProvider, { children: jsx(HotBondCards, {}) }))] }, key))] }) }, key));
70
+ }), showHotBonds && jsx(HotBondCards, {})] }, key))] }) }, key));
76
71
  };
77
72
 
78
73
  export { ActiveBondRows as default };
@@ -1 +1 @@
1
- {"version":3,"file":"ActiveBondRows.js","sources":["../../../../../src/views/Bonds/components/BondRows/ActiveBondRows.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport { AnimatePresence, motion } from 'framer-motion'\nimport ChainTitle from './ChainTitle'\nimport BondRow from './BondRow'\nimport { Flex } from 'theme-ui'\nimport { BondsData } from '../../../../types/bonds'\nimport { BaseBondConfig, ChainId, MarketingCampaign } from '@ape.swap/apeswap-lists'\nimport SwiperProvider from '../../../../contexts/SwiperProvider'\nimport HotBondCards from '../HotBondCards'\nimport ChainBanner from '../ChainBanner/ChainBanner'\nimport {\n getRemainingTokensString,\n getVestingTermsString,\n getVestingTermsTooltipString,\n remainingPercentage,\n} from '../../../../utils/displayHelpers'\nimport { getBalanceNumber } from '../../../../utils/getBalanceNumber'\nimport { formatNumberSI } from '../../../../utils/formatNumber'\nimport { getTimePeriods } from '../../../../utils/getTimePeriods'\nimport { useSDKConfig } from '../../../../state/useSDKConfig'\n\n// Record<string, (BondsData | BaseBondConfig)[]>\n\ninterface ActiveBondRowsProps {\n chain: number\n bonds: (BondsData | BaseBondConfig)[]\n hideTitles: boolean\n showHotBonds: boolean\n}\n\nconst ActiveBondRows: React.FC<ActiveBondRowsProps> = ({ chain, bonds, hideTitles, showHotBonds }) => {\n const { namingPreference } = useSDKConfig()\n const [isOpen, setIsOpen] = useState<boolean>(true)\n const key = chain\n\n return (\n <Flex className=\"bondrowswithtitle\" key={key}>\n <AnimatePresence initial={false}>\n <Flex onClick={() => setIsOpen(!isOpen)} sx={{ cursor: 'pointer' }}>\n <ChainTitle\n chain={chain}\n pt={'5px'}\n hideTitles={(bonds.length <= 0 && chain !== ChainId.SOL && chain !== ChainId.MONAD) || hideTitles}\n isOpen={isOpen}\n />\n </Flex>\n {isOpen && (bonds.length > 0 || chain === ChainId.MONAD) && (\n <motion.div\n initial={{ height: 0, overflow: 'hidden' }}\n animate={{ height: 'fit-content', overflow: 'hidden', transitionEnd: { overflow: 'visible' } }}\n exit={{ height: 0, overflow: 'hidden' }}\n sx={{\n position: 'relative',\n overflow: 'hidden',\n width: '100%',\n marginTop: '0px',\n }}\n key={key}\n className=\"bonds-card-container\"\n >\n {[\n // ChainId.SOL,\n ChainId.MONAD,\n // ChainId.APTOS,\n // ChainId.SUI\n ].includes(chain) &&\n !hideTitles && <ChainBanner chainId={chain} />}\n {bonds?.map((bondFromMap, index) => {\n // PRE TGE ROWS\n\n if (bondFromMap.billType === 'fcfs') {\n const bond = bondFromMap as BondsData\n const totalPrincipalBilled =\n Math.round(\n getBalanceNumber(\n bond?.totalPrincipalBilled ?? '0',\n bond?.lpToken?.decimals?.[bond?.chainId] as number,\n ),\n ) / (bond.initPrice ?? 0)\n const raiseGoal =\n Math.round(\n getBalanceNumber(bond?.totalRaise ?? '0', bond?.lpToken?.decimals?.[bond?.chainId] as number),\n ) / (bond.initPrice ?? 0)\n\n const tokensRemaining = raiseGoal - totalPrincipalBilled\n const tokensRemainingUSD = tokensRemaining * (bond?.initPrice ?? 0)\n const percentageAvailable = 100 - Math.floor((totalPrincipalBilled * 100) / raiseGoal)\n const earnToken = bond?.earnToken?.symbol\n\n const baseBonus = bond?.trueBondPrices?.[0]?.bonus ?? 0\n const airdropBonus = bond?.airdropBonus ?? 0\n const bonus = baseBonus + airdropBonus\n const initialRelease = (bond?.initialRelease ?? 0) * 100\n\n const now = new Date().getTime()\n const saleFinishTime = (bond?.finishTime ?? 0) * 1000\n const saleHasFinished = now > saleFinishTime || bond.finalized\n\n return (\n <BondRow\n key={`${bond.contractAddress}-${bond.chainId}-${index}`}\n bondAddress={bond.contractAddress?.[bond.chainId] as string}\n bondChain={bond.chainId}\n marketingCampaign={bond.marketingCampaign as MarketingCampaign}\n payoutToken={bond.underlyingEarnToken || bond.earnToken}\n billType={bond.billType}\n tag={bond.tags?.[0]}\n bonus={\n bond.yieldBond\n ? `${bond.yieldData?.apr.toFixed()}% APR`\n : saleHasFinished\n ? undefined\n : `${bonus}%`\n }\n airdropTooltip={bond.airdropTooltip}\n percentageAvailable={percentageAvailable}\n remainingTokensString={\n saleHasFinished\n ? `0 ${earnToken} ($0) `\n : `${formatNumberSI(tokensRemaining, 0)} ${earnToken} ($${formatNumberSI(tokensRemainingUSD, 2)})`\n }\n vestingTermString={\n saleHasFinished\n ? '-'\n : bond.yieldBond\n ? `${\n getTimePeriods(\n (bond?.yieldData?.rewardDistributionEnd ?? 0) -\n parseInt(bond.startVestingTimestamp ?? '0'),\n true,\n ).days\n } D`\n : initialRelease === 100\n ? `0 D`\n : `${getTimePeriods(bond.vestingTerm).months} Mo`\n }\n vestingCliffString={\n bond.yieldBond\n ? `This is the duration over which the bonus yield will be distributed while your initial tokens remain staked.`\n : undefined\n }\n projectURL={bond.projectLink}\n twitterURL={bond.twitter}\n bondSoldOut={saleHasFinished}\n shortDescription={bond.shortDescription}\n />\n )\n } else {\n // POST TGE BONDS AKA NORMAL BONDS\n\n const bond = bondFromMap as BondsData\n const bondAddress = bond?.contractAddress?.[bond?.chainId] as string\n const remainingTokensString = getRemainingTokensString(bond)\n return (\n <BondRow\n key={`${bondAddress}-${bond.chainId}-${index}`}\n bondAddress={bondAddress}\n bondChain={bond.chainId}\n marketingCampaign={bond.marketingCampaign as MarketingCampaign}\n payoutToken={bond.earnToken}\n billType={bond.billType}\n tag={bond.highlightTag || bond.tags?.[0]}\n trueBondPrices={namingPreference === 'Bonus' ? bond.trueBondPrices : undefined}\n minTier={bond?.minTier}\n vestingTermString={getVestingTermsString(bond)}\n vestingCliffString={getVestingTermsTooltipString(bond)}\n percentageAvailable={remainingPercentage(bond)}\n remainingTokensString={remainingTokensString}\n projectURL={bond.projectLink}\n twitterURL={bond.twitter}\n bonus={\n namingPreference === 'Discount'\n ? `${bond?.trueBondPrices?.[0]?.discountWithFee?.toFixed(2)}%`\n : undefined\n }\n shortDescription={bond.shortDescription}\n cgId={bond.cgId}\n dexscreener={bond?.dexscreener}\n />\n )\n }\n })}\n {showHotBonds && (\n <SwiperProvider>\n <HotBondCards />\n </SwiperProvider>\n )}\n </motion.div>\n )}\n </AnimatePresence>\n </Flex>\n )\n}\n\nexport default ActiveBondRows\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"ActiveBondRows.js","sources":["../../../../../src/views/Bonds/components/BondRows/ActiveBondRows.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport clsx from 'clsx'\nimport { AnimatePresence, motion } from 'framer-motion'\nimport ChainTitle from './ChainTitle'\nimport BondRow from './BondRow'\nimport Flex from '../../../../components/uikit-sdk/Flex'\nimport { BondsData } from '../../../../types/bonds'\nimport { BaseBondConfig, ChainId, MarketingCampaign } from '@ape.swap/apeswap-lists'\nimport HotBondCards from '../HotBondCards'\nimport ChainBanner from '../ChainBanner/ChainBanner'\nimport {\n getRemainingTokensString,\n getVestingTermsString,\n getVestingTermsTooltipString,\n remainingPercentage,\n} from '../../../../utils/displayHelpers'\nimport { getBalanceNumber } from '../../../../utils/getBalanceNumber'\nimport { formatNumberSI } from '../../../../utils/formatNumber'\nimport { getTimePeriods } from '../../../../utils/getTimePeriods'\nimport { useSDKConfig } from '../../../../state/useSDKConfig'\n\n// Record<string, (BondsData | BaseBondConfig)[]>\n\ninterface ActiveBondRowsProps {\n chain: number\n bonds: (BondsData | BaseBondConfig)[]\n hideTitles: boolean\n showHotBonds: boolean\n}\n\nconst ActiveBondRows: React.FC<ActiveBondRowsProps> = ({ chain, bonds, hideTitles, showHotBonds }) => {\n const { namingPreference, useCardsView } = useSDKConfig()\n const [isOpen, setIsOpen] = useState<boolean>(true)\n const key = chain\n\n return (\n <Flex className=\"bondrowswithtitle ape:w-full ape:flex-col\" key={key}>\n <AnimatePresence initial={false}>\n <Flex onClick={() => setIsOpen(!isOpen)} className=\"ape:cursor-pointer\">\n <ChainTitle\n chain={chain}\n pt={'5px'}\n hideTitles={(bonds.length <= 0 && chain !== ChainId.SOL && chain !== ChainId.MONAD) || hideTitles}\n isOpen={isOpen}\n />\n </Flex>\n {isOpen && (bonds.length > 0 || chain === ChainId.MONAD) && (\n <motion.div\n initial={{ height: 0, overflow: 'hidden' }}\n animate={{ height: 'fit-content', overflow: 'hidden', transitionEnd: { overflow: 'visible' } }}\n exit={{ height: 0, overflow: 'hidden' }}\n className={clsx(\n 'bonds-card-container ape:relative ape:overflow-hidden ape:w-full ape:mt-0',\n useCardsView && 'ape:flex ape:flex-wrap',\n )}\n key={key}\n >\n {[\n // ChainId.SOL,\n ChainId.MONAD,\n // ChainId.APTOS,\n // ChainId.SUI\n ].includes(chain) &&\n !hideTitles && <ChainBanner chainId={chain} />}\n {bonds?.map((bondFromMap, index) => {\n // PRE TGE ROWS\n\n if (bondFromMap.billType === 'fcfs') {\n const bond = bondFromMap as BondsData\n const totalPrincipalBilled =\n Math.round(\n getBalanceNumber(\n bond?.totalPrincipalBilled ?? '0',\n bond?.lpToken?.decimals?.[bond?.chainId] as number,\n ),\n ) / (bond.initPrice ?? 0)\n const raiseGoal =\n Math.round(\n getBalanceNumber(bond?.totalRaise ?? '0', bond?.lpToken?.decimals?.[bond?.chainId] as number),\n ) / (bond.initPrice ?? 0)\n\n const tokensRemaining = raiseGoal - totalPrincipalBilled\n const tokensRemainingUSD = tokensRemaining * (bond?.initPrice ?? 0)\n const percentageAvailable = 100 - Math.floor((totalPrincipalBilled * 100) / raiseGoal)\n const earnToken = bond?.earnToken?.symbol\n\n const baseBonus = bond?.trueBondPrices?.[0]?.bonus ?? 0\n const airdropBonus = bond?.airdropBonus ?? 0\n const bonus = baseBonus + airdropBonus\n const initialRelease = (bond?.initialRelease ?? 0) * 100\n\n const now = new Date().getTime()\n const saleFinishTime = (bond?.finishTime ?? 0) * 1000\n const saleHasFinished = now > saleFinishTime || bond.finalized\n\n return (\n <BondRow\n key={`${bond.contractAddress}-${bond.chainId}-${index}`}\n bondAddress={bond.contractAddress?.[bond.chainId] as string}\n bondChain={bond.chainId}\n marketingCampaign={bond.marketingCampaign as MarketingCampaign}\n payoutToken={bond.underlyingEarnToken || bond.earnToken}\n billType={bond.billType}\n tag={bond.tags?.[0]}\n bonus={\n bond.yieldBond\n ? `${bond.yieldData?.apr.toFixed()}% APR`\n : saleHasFinished\n ? undefined\n : `${bonus}%`\n }\n airdropTooltip={bond.airdropTooltip}\n percentageAvailable={percentageAvailable}\n remainingTokensString={\n saleHasFinished\n ? `0 ${earnToken} ($0) `\n : `${formatNumberSI(tokensRemaining, 0)} ${earnToken} ($${formatNumberSI(tokensRemainingUSD, 2)})`\n }\n vestingTermString={\n saleHasFinished\n ? '-'\n : bond.yieldBond\n ? `${\n getTimePeriods(\n (bond?.yieldData?.rewardDistributionEnd ?? 0) -\n parseInt(bond.startVestingTimestamp ?? '0'),\n true,\n ).days\n } D`\n : initialRelease === 100\n ? `0 D`\n : `${getTimePeriods(bond.vestingTerm).months} Mo`\n }\n vestingCliffString={\n bond.yieldBond\n ? `This is the duration over which the bonus yield will be distributed while your initial tokens remain staked.`\n : undefined\n }\n projectURL={bond.projectLink}\n twitterURL={bond.twitter}\n bondSoldOut={saleHasFinished}\n shortDescription={bond.shortDescription}\n />\n )\n } else {\n // POST TGE BONDS AKA NORMAL BONDS\n\n const bond = bondFromMap as BondsData\n const bondAddress = bond?.contractAddress?.[bond?.chainId] as string\n const remainingTokensString = getRemainingTokensString(bond)\n return (\n <BondRow\n key={`${bondAddress}-${bond.chainId}-${index}`}\n bondAddress={bondAddress}\n bondChain={bond.chainId}\n marketingCampaign={bond.marketingCampaign as MarketingCampaign}\n payoutToken={bond.earnToken}\n billType={bond.billType}\n tag={bond.highlightTag || bond.tags?.[0]}\n trueBondPrices={namingPreference === 'Bonus' ? bond.trueBondPrices : undefined}\n minTier={bond?.minTier}\n vestingTermString={getVestingTermsString(bond)}\n vestingCliffString={getVestingTermsTooltipString(bond)}\n percentageAvailable={remainingPercentage(bond)}\n remainingTokensString={remainingTokensString}\n projectURL={bond.projectLink}\n twitterURL={bond.twitter}\n bonus={\n namingPreference === 'Discount'\n ? `${bond?.trueBondPrices?.[0]?.discountWithFee?.toFixed(2)}%`\n : undefined\n }\n shortDescription={bond.shortDescription}\n cgId={bond.cgId}\n dexscreener={bond?.dexscreener}\n />\n )\n }\n })}\n {showHotBonds && <HotBondCards />}\n </motion.div>\n )}\n </AnimatePresence>\n </Flex>\n )\n}\n\nexport default ActiveBondRows\n"],"names":["_jsx","_jsxs"],"mappings":"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"}