@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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BuyComponentSolana.js","sources":["../../../src/adapters/solana/BuyComponentSolana.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react'\nimport clsx from 'clsx'\nimport useModal from '../../hooks/useModal'\nimport { ChainId, MarketingCampaign } from '@ape.swap/apeswap-lists'\nimport TokenSelectorPanel from '../../components/TokenSelectorPanel'\nimport useBondsData from '../../state/bonds/useBondsData'\nimport useTokenFromZapList from '../../hooks/useTokenFromZapList'\nimport { usePopups } from '../../state/popups/usePopups'\nimport { formatUSDNumber, getMaxBuy, getPayoutAmount, getPrincipalAmount } from '../../utils/displayHelpers'\nimport { useSDKConfig } from '../../state/useSDKConfig'\nimport { useSlippage } from '../../state/slippage/useSlippage'\nimport { getSymbol } from '../../utils/getNativeTicker'\nimport BondModalHeader from '../../views/BuyBond/components/BondModalHeader'\nimport BondCards from '../../views/BuyBond/components/BondCards/BondCards'\nimport Estimations from '../../views/BuyBond/components/Estimations'\nimport ProjectDescription from '../../views/BuyBond/components/ProjectDescription'\nimport NoBonusModal from '../../views/BuyBond/components/NoBonusModal/NoBonusModal'\nimport useJupiterSolanaQuote from './useJupiterSolanaQuote'\nimport useSortedZapList from '../../hooks/useSortedZapList'\n\n// Solana\nimport ConnectSolanaWalletButton from './ConnectSolanaWalletButton'\nimport {\n PublicKey,\n SystemProgram,\n SYSVAR_INSTRUCTIONS_PUBKEY,\n Keypair,\n Transaction,\n Connection,\n TransactionInstruction,\n} from '@solana/web3.js'\nimport { createJupiterApiClient } from '@jup-ag/api'\nimport { derivePda } from './derivePda'\nimport {\n getAssociatedTokenAddress,\n ASSOCIATED_TOKEN_PROGRAM_ID,\n createAssociatedTokenAccountInstruction,\n getAccount,\n} from '@solana/spl-token'\nimport { getBondIssuanceAccountSolana } from './getSolanaAccount'\nimport { getU64Codec } from '@solana/kit'\nimport { DEPOSIT_DISCRIMINATOR, MPL_CORE_PROGRAM_ID, PROGRAM_ID } from './solanaConstants'\nimport { Buffer } from 'buffer'\nimport { BondsData } from '../../types/bonds'\nimport { BondIssuanceAccount } from './codecs'\nimport { getRPC } from '../../config/constants/networks'\nimport { reportError } from '../../utils/reportError'\nimport SafeHTMLComponent from '../../components/SafeHTMLComponent'\nimport { findHighestTrueBondPrice } from '../../utils/bondPriceHelpers'\nimport track from '../../utils/track'\nimport { remove0xPrefix } from '../../utils/remove0xPrefix'\nimport { MCBuyComponentStyles } from '../../utils/campaignStyles'\nimport useSOLAccount from './useSOLAccount'\nimport { useSendReferenceId } from '../../hooks/useSendReferenceId'\nimport { getBridgeAdapter } from '../registry'\nimport { getAtaWithCreateInstruction, getTokenProgramForMint } from './solanaAtaHelper'\nimport Flex from '../../components/uikit-sdk/Flex'\nimport Text from '../../components/uikit-sdk/Text'\nimport TooltipBubble from '../../components/uikit-sdk/TooltipBubble'\nimport Button from '../../components/uikit-sdk/Button/Button'\nimport { formatNumberSI } from '../../utils/formatNumber'\nimport QuestionCircle from '../../components/uikit-sdk/Svg/Icons/QuestionCircle'\nimport { mulDivRound, parseUnits, toFixedString } from '../../utils/fixedPoint'\n\n// price * (100 + slippage) / (100 * 1e6), scaled by 1e6 to preserve fractional slippage\n// percentages without a float precompute (matches this bond program's price scale).\nconst slippageMaxPriceSolana = (priceBig: bigint, slippage: number): bigint =>\n mulDivRound(priceBig, parseUnits(String(100 + slippage), 6), parseUnits('100', 6) * 1_000_000n, 'halfUp')\n\ninterface BuyComponentSolanaProps {\n onDismiss?: () => void // this is only the modal\n bondAddress?: string\n bondChain?: number\n setBillId?: (id: string) => void\n isProjectView?: boolean\n}\n\nconst BuyComponentSolana: React.FC<BuyComponentSolanaProps> = ({\n onDismiss,\n bondAddress,\n bondChain,\n isProjectView,\n setBillId,\n}) => {\n const SDKConfig = useSDKConfig()\n\n // Hooks\n const { publicKey: accountSolana, signTransaction } = useSOLAccount()\n const { data: bonds } = useBondsData()\n const { addToastError, addToastSuccess } = usePopups()\n const { solSlippage: slippage } = useSlippage()\n const sendReferenceId = useSendReferenceId()\n\n const bondData: BondsData | undefined = bonds?.find(\n (bond) => bond?.contractAddress?.[bond?.chainId]?.toLowerCase() === bondAddress?.toLowerCase(),\n )\n\n // Tier Gating\n const trueBondPriceData = findHighestTrueBondPrice('0', bondData?.trueBondPrices)\n\n // State\n const [inputValue, setInputValue] = useState('')\n const [inputTokenString, setInputTokenString] = useState(bondData?.lpToken?.address?.[bondData.chainId])\n\n // On-chain Data\n const inputToken = useTokenFromZapList(inputTokenString, bondData?.chainId, bondData?.lpToken)\n const isZap = inputTokenString?.toLowerCase() !== bondData?.lpToken?.address?.[bondData?.chainId]?.toLowerCase()\n\n const [\n fetchingZapQuote,\n jupiterQuote,\n zapDepositAmount,\n zapError,\n isDirectRoute,\n minimumDepositAmount,\n wrapAndUnwrapSol,\n ] = useJupiterSolanaQuote(inputValue, inputToken, bondData, accountSolana?.toBase58(), true, slippage)\n\n const { sortedZapList, isFetched: zapListFetched } = useSortedZapList(bondChain, bondData?.lpToken)\n const enrichedTokenData = sortedZapList.find((item) =>\n item.token === 'NATIVE' || inputToken === 'NATIVE'\n ? item.token === inputToken\n : item?.token?.address?.[bondChain as ChainId]?.toLowerCase() ===\n inputToken?.address?.[bondChain as ChainId]?.toLowerCase(),\n )\n const inputCurrencyBalance = enrichedTokenData?.balance\n const inputTokenPrice = enrichedTokenData?.price\n\n // Estimations - use zapDepositAmount if swapping\n const depositAmount = isZap ? zapDepositAmount : inputValue\n const youSpendString = `${formatNumberSI(inputValue)} ${getSymbol(inputToken, bondData?.chainId)} = \n $${formatUSDNumber((parseFloat(inputValue) * (inputTokenPrice ?? 0)).toString())}`\n\n const exceedsRealMaxBuy = getMaxBuy(bondData, true) <= getPayoutAmount(bondData, depositAmount, '0')\n const exceedsSafeMaxBuy =\n getMaxBuy(bondData, false) * (isZap ? 0.995 : 0.9995) <= getPayoutAmount(bondData, depositAmount, '0')\n const exceedsBalance = Number(inputCurrencyBalance ?? '0') < Number(inputValue)\n\n // Loading State - include zap loading\n const [loadingTx, setLoadingTx] = useState(false)\n const load = loadingTx || (fetchingZapQuote && !!inputValue)\n\n // State Handlers\n const handleCurrencySelect = useCallback((newInputToken: string) => {\n setInputValue('')\n setInputTokenString(newInputToken)\n }, [])\n\n const handleMaxButton = () => {\n const balance = Number(inputCurrencyBalance ?? '0')\n const principalDecimals = bondData?.lpToken?.decimals?.[bondData?.chainId] ?? 18\n const maxBuyAmount = getMaxBuy(bondData, SDKConfig.showLowValueBonds)\n\n if (!isZap) {\n const maxPossibleUserPurchase = getPayoutAmount(bondData, balance.toString(), '0')\n if (maxPossibleUserPurchase > maxBuyAmount) {\n console.log('user balance exceeds max buy limit, setting to max buy')\n const principalForMaxBuy = getPrincipalAmount(bondData, maxBuyAmount.toString(), '0')\n setInputValue(toFixedString(principalForMaxBuy, principalDecimals))\n } else {\n console.log('balance is ok, can be used')\n setInputValue(toFixedString(balance, principalDecimals))\n }\n } else {\n const principalForMaxBuy = getPrincipalAmount(bondData, maxBuyAmount.toString(), '0')\n const principalForMaxBuyUSD = principalForMaxBuy * Number(bondData?.principalTokenPrice ?? 0)\n const maxBuyAmountInSelectedToken = principalForMaxBuyUSD / (inputTokenPrice ?? 0)\n const decimals =\n enrichedTokenData?.token === 'NATIVE' ? 18 : (enrichedTokenData?.token.decimals[bondData?.chainId!] ?? 18)\n\n if (balance >= maxBuyAmountInSelectedToken) {\n setInputValue(toFixedString(maxBuyAmountInSelectedToken, decimals))\n } else {\n setInputValue(toFixedString(balance, decimals))\n }\n }\n }\n\n const handleBuyCallback = async () => {\n if (!accountSolana || !bondData || !inputValue || !inputToken || !bondData) return\n track({\n event: 'buyBondClick',\n chain: bondChain,\n data: {\n cat: bondData?.billType,\n bond: bondData?.earnToken.symbol,\n value: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n try {\n setLoadingTx(true)\n\n const connection = new Connection(getRPC(ChainId.SOL), 'confirmed')\n\n // Convert input value\n const amountBigInt = parseUnits(inputValue, bondData.lpToken.decimals[ChainId.SOL]!)\n\n const user = accountSolana\n\n const trueBondPriceWithoutFee = bondData?.trueBondPrices?.[0]?.trueBondPrice\n\n const maxPrice = slippageMaxPriceSolana(BigInt(trueBondPriceWithoutFee ?? '0'), slippage).toString()\n\n // Static addresses\n const bondIssuancePda = new PublicKey(bondData.contractAddress[bondData.chainId]!)\n const principalMint = new PublicKey(bondData.lpToken.address[bondData.chainId]!)\n const payoutMint = new PublicKey(bondData.earnToken.address[bondData.chainId]!)\n const collection = new PublicKey(bondData.billNnftAddress[bondData.chainId]!)\n\n // Detect token programs for both mints (supports Token-2022)\n const [principalTokenProgram, payoutTokenProgram] = await Promise.all([\n getTokenProgramForMint(connection, principalMint),\n getTokenProgramForMint(connection, payoutMint),\n ])\n\n // Fetch Bond Issuance Account\n const bondIssuanceAccounts = (await getBondIssuanceAccountSolana([\n bondIssuancePda.toBase58(),\n ])) as BondIssuanceAccount[]\n if (!bondIssuanceAccounts) return\n const bondIssuanceAccount = bondIssuanceAccounts[0]\n const feeRecipient = new PublicKey(bondIssuanceAccount.feePrincipalRecipient)\n const partnerRecipient = new PublicKey(bondIssuanceAccount.partnerPrincipalRecipient)\n const feePayoutRecipient = new PublicKey(bondIssuanceAccount.feePayoutRecipient) // ADDED\n\n // Derive PDAs\n const bondTermPda = derivePda('bond_term', bondIssuancePda, PROGRAM_ID)\n const bondPricingPda = derivePda('bond_pricing', bondIssuancePda, PROGRAM_ID)\n\n // Create NFT mint\n const nftMint = Keypair.generate()\n\n const [bondPda] = PublicKey.findProgramAddressSync(\n [Buffer.from('bond'), bondIssuancePda.toBuffer(), nftMint.publicKey.toBuffer()],\n PROGRAM_ID,\n )\n\n // ATAs - use correct token program for each mint\n const userPrincipalAta = await getAssociatedTokenAddress(principalMint, user, true, principalTokenProgram)\n const treasuryAta = await getAssociatedTokenAddress(payoutMint, bondIssuancePda, true, payoutTokenProgram)\n const feePrincipalRecipientAta = await getAssociatedTokenAddress(\n principalMint,\n feeRecipient,\n true,\n principalTokenProgram,\n )\n const partnerPrincipalRecipientAta = await getAssociatedTokenAddress(\n principalMint,\n partnerRecipient,\n true,\n principalTokenProgram,\n )\n\n const { address: feePayoutRecipientAta, createInstruction: createPayoutFeeRecipientAtaIx } =\n await getAtaWithCreateInstruction(connection, payoutMint, feePayoutRecipient, user)\n\n // Encode args\n const u64Codec = getU64Codec()\n const amountEncoded = Buffer.from(u64Codec.encode(amountBigInt))\n const maxPriceEncoded = Buffer.from(u64Codec.encode(BigInt(maxPrice)))\n const instructionData = Buffer.concat([DEPOSIT_DISCRIMINATOR, amountEncoded, maxPriceEncoded])\n\n // Instruction\n const keys = [\n { pubkey: bondPda, isSigner: false, isWritable: true },\n { pubkey: nftMint.publicKey, isSigner: true, isWritable: true },\n { pubkey: user, isSigner: true, isWritable: true },\n { pubkey: bondPricingPda, isSigner: false, isWritable: true },\n { pubkey: bondTermPda, isSigner: false, isWritable: true },\n { pubkey: bondIssuancePda, isSigner: false, isWritable: true },\n { pubkey: collection, isSigner: false, isWritable: true },\n { pubkey: userPrincipalAta, isSigner: false, isWritable: true },\n { pubkey: feePrincipalRecipientAta, isSigner: false, isWritable: true },\n { pubkey: partnerPrincipalRecipientAta, isSigner: false, isWritable: true },\n { pubkey: feePayoutRecipientAta, isSigner: false, isWritable: true },\n { pubkey: treasuryAta, isSigner: false, isWritable: true },\n { pubkey: principalMint, isSigner: false, isWritable: false },\n { pubkey: payoutMint, isSigner: false, isWritable: false },\n { pubkey: SystemProgram.programId, isSigner: false, isWritable: false },\n { pubkey: principalTokenProgram, isSigner: false, isWritable: false }, // principal_token_program (dynamic)\n { pubkey: payoutTokenProgram, isSigner: false, isWritable: false }, // payout_token_program (dynamic)\n { pubkey: ASSOCIATED_TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },\n { pubkey: MPL_CORE_PROGRAM_ID, isSigner: false, isWritable: false },\n { pubkey: SYSVAR_INSTRUCTIONS_PUBKEY, isSigner: false, isWritable: false },\n ]\n\n const instruction = new TransactionInstruction({\n keys,\n programId: PROGRAM_ID,\n data: instructionData,\n })\n\n // Create tx (prepend payout fee recipient ATA creation if needed)\n const transaction = new Transaction()\n if (createPayoutFeeRecipientAtaIx) transaction.add(createPayoutFeeRecipientAtaIx)\n transaction.add(instruction)\n transaction.feePayer = user\n\n const { blockhash, lastValidBlockHeight } = await connection.getLatestBlockhash('confirmed')\n transaction.recentBlockhash = blockhash\n // Sign tx\n transaction.partialSign(nftMint)\n const signedTx = await signTransaction?.(transaction)!\n\n // Sends tx, generates hash\n const txId = await connection.sendRawTransaction(signedTx.serialize(), {\n skipPreflight: false,\n preflightCommitment: 'confirmed',\n })\n\n // awaits hash confirmation on chain - commitment \"confirmed\"\n await connection.confirmTransaction(\n {\n signature: txId,\n blockhash,\n lastValidBlockHeight,\n },\n 'confirmed',\n )\n\n track({\n event: 'bond',\n chain: bondChain,\n data: {\n cat: 'lp-buy',\n type: bondData?.billType ?? '',\n typedValue: inputValue,\n principalToken: bondData?.lpToken.symbol ?? '',\n earnToken: bondData?.earnToken.symbol ?? '',\n address: remove0xPrefix(bondData?.contractAddress?.[bondData.chainId]),\n usdAmount: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n\n await sendReferenceId(bondData.contractAddress[bondData.chainId]!, ChainId.SOL, txId)\n\n // waits 3 seconds before triggering after-purchase flow\n await new Promise((resolve) => setTimeout(resolve, 3000))\n\n addToastSuccess(txId, bondChain)\n setBillId?.(nftMint.publicKey.toString())\n } catch (error: any) {\n console.error('Error during bond purchase:', error)\n addToastError(error?.message || 'Unknown error')\n reportError({\n apiUrl: SDKConfig?.urls?.apiV2,\n error: error.message,\n extraInfo: { type: 'solanaBuyBond', error: error.message },\n chainId: bondChain,\n account: accountSolana.toString(),\n })\n } finally {\n setLoadingTx(false)\n }\n }\n\n // Helper: Build Jupiter swap instructions from API response\n const buildSwapInstructions = (swapResult: any) => {\n const swapInstruction = new TransactionInstruction({\n programId: new PublicKey(swapResult.swapInstruction.programId),\n keys: swapResult.swapInstruction.accounts.map((key: any) => ({\n pubkey: new PublicKey(key.pubkey),\n isSigner: key.isSigner,\n isWritable: key.isWritable,\n })),\n data: Buffer.from(swapResult.swapInstruction.data, 'base64'),\n })\n\n const setupInstructions = (swapResult.setupInstructions || []).map(\n (ix: any) =>\n new TransactionInstruction({\n programId: new PublicKey(ix.programId),\n keys: ix.accounts.map((key: any) => ({\n pubkey: new PublicKey(key.pubkey),\n isSigner: key.isSigner,\n isWritable: key.isWritable,\n })),\n data: Buffer.from(ix.data, 'base64'),\n }),\n )\n\n return { setupInstructions, swapInstruction }\n }\n\n // Helper: Build bond instruction with specified amount\n const buildBondInstruction = (amount: bigint, maxPriceEncoded: Buffer, bondKeys: any[]) => {\n const u64Codec = getU64Codec()\n const amountEncoded = Buffer.from(u64Codec.encode(amount))\n const instructionData = Buffer.concat([DEPOSIT_DISCRIMINATOR, amountEncoded, maxPriceEncoded])\n\n return new TransactionInstruction({\n keys: bondKeys,\n programId: PROGRAM_ID,\n data: instructionData,\n })\n }\n\n // Helper: Ensure user's principal token account exists\n const ensureUserPrincipalAtaExists = async (\n connection: Connection,\n payer: PublicKey,\n principalMint: PublicKey,\n user: PublicKey,\n tokenProgram: PublicKey,\n ): Promise<{ ataAddress: PublicKey; createInstruction: TransactionInstruction | null }> => {\n const userPrincipalAta = await getAssociatedTokenAddress(principalMint, user, true, tokenProgram)\n\n try {\n // Check if account exists\n await getAccount(connection, userPrincipalAta, undefined, tokenProgram)\n return { ataAddress: userPrincipalAta, createInstruction: null }\n } catch {\n // Account doesn't exist, return instruction to create it\n const createAtaIx = createAssociatedTokenAccountInstruction(\n payer, // fee payer\n userPrincipalAta, // ATA to create\n user, // owner of ATA\n principalMint, // mint\n tokenProgram, // token program\n )\n return { ataAddress: userPrincipalAta, createInstruction: createAtaIx }\n }\n }\n\n // Helper: Track zap events\n const trackZapEvents = (txType: 'single-tx' | 'two-tx') => {\n track({\n event: 'zap',\n chain: bondChain,\n data: {\n cat: 'bond',\n token1: getSymbol(inputToken),\n token2: bondData?.lpToken.symbol ?? '',\n amount: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n\n track({\n event: 'bond',\n chain: bondChain,\n data: {\n cat: `zap-buy-${txType}`,\n type: bondData?.billType ?? '',\n typedValue: inputValue,\n principalToken: bondData?.lpToken.symbol ?? '',\n earnToken: bondData?.earnToken.symbol ?? '',\n address: remove0xPrefix(bondData?.contractAddress?.[bondData.chainId]),\n usdAmount: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n }\n\n const handleZapCallback = async () => {\n if (loadingTx || !accountSolana || !bondData || !jupiterQuote || !signTransaction) return\n\n track({\n event: 'buyBondClick',\n chain: bondChain,\n data: {\n cat: bondData?.billType,\n bond: bondData?.earnToken.symbol,\n value: parseFloat(inputValue) * (inputTokenPrice ?? 0),\n },\n })\n\n try {\n setLoadingTx(true)\n const connection = new Connection(getRPC(ChainId.SOL), 'confirmed')\n const jupiterApi = createJupiterApiClient()\n\n // STEP 1: Calculate bond parameters and prepare accounts\n const trueBondPriceWithoutFee = bondData?.trueBondPrices?.[0]?.trueBondPrice\n const maxPrice = slippageMaxPriceSolana(BigInt(trueBondPriceWithoutFee ?? '0'), slippage).toString()\n console.log(isDirectRoute ? 'Using direct route' : 'Using multi-hop route')\n const depositAmountForBond = isDirectRoute ? minimumDepositAmount : zapDepositAmount\n\n const amountBigInt = parseUnits(depositAmountForBond, bondData.lpToken.decimals[ChainId.SOL]!)\n\n const bondIssuancePda = new PublicKey(bondData.contractAddress[bondData.chainId]!)\n const principalMint = new PublicKey(bondData.lpToken.address[bondData.chainId]!)\n const payoutMint = new PublicKey(bondData.earnToken.address[bondData.chainId]!)\n const collection = new PublicKey(bondData.billNnftAddress[bondData.chainId]!)\n\n // Detect token programs for both mints (supports Token-2022)\n const [principalTokenProgram, payoutTokenProgram] = await Promise.all([\n getTokenProgramForMint(connection, principalMint),\n getTokenProgramForMint(connection, payoutMint),\n ])\n\n const bondIssuanceAccounts = (await getBondIssuanceAccountSolana([\n bondIssuancePda.toBase58(),\n ])) as BondIssuanceAccount[]\n if (!bondIssuanceAccounts) throw new Error('Failed to fetch bond issuance account')\n\n const bondIssuanceAccount = bondIssuanceAccounts[0]\n const feeRecipient = new PublicKey(bondIssuanceAccount.feePrincipalRecipient)\n const partnerRecipient = new PublicKey(bondIssuanceAccount.partnerPrincipalRecipient)\n const feePayoutRecipient = new PublicKey(bondIssuanceAccount.feePayoutRecipient)\n\n const bondTermPda = derivePda('bond_term', bondIssuancePda, PROGRAM_ID)\n const bondPricingPda = derivePda('bond_pricing', bondIssuancePda, PROGRAM_ID)\n\n const nftMint = Keypair.generate()\n const [bondPda] = PublicKey.findProgramAddressSync(\n [Buffer.from('bond'), bondIssuancePda.toBuffer(), nftMint.publicKey.toBuffer()],\n PROGRAM_ID,\n )\n\n // Ensure user's USDC account exists, get creation instruction if needed\n const { ataAddress: userPrincipalAta, createInstruction: createPrincipalAtaIx } =\n await ensureUserPrincipalAtaExists(\n connection,\n accountSolana,\n principalMint,\n accountSolana,\n principalTokenProgram,\n )\n const treasuryAta = await getAssociatedTokenAddress(payoutMint, bondIssuancePda, true, payoutTokenProgram)\n const feePrincipalRecipientAta = await getAssociatedTokenAddress(\n principalMint,\n feeRecipient,\n true,\n principalTokenProgram,\n )\n const partnerPrincipalRecipientAta = await getAssociatedTokenAddress(\n principalMint,\n partnerRecipient,\n true,\n principalTokenProgram,\n )\n const { address: feePayoutRecipientAta, createInstruction: createPayoutFeeRecipientAtaIx } =\n await getAtaWithCreateInstruction(connection, payoutMint, feePayoutRecipient, accountSolana)\n\n const u64Codec = getU64Codec()\n const maxPriceEncoded = Buffer.from(u64Codec.encode(BigInt(maxPrice)))\n\n const bondKeys = [\n { pubkey: bondPda, isSigner: false, isWritable: true },\n { pubkey: nftMint.publicKey, isSigner: true, isWritable: true },\n { pubkey: accountSolana, isSigner: true, isWritable: true },\n { pubkey: bondPricingPda, isSigner: false, isWritable: true },\n { pubkey: bondTermPda, isSigner: false, isWritable: true },\n { pubkey: bondIssuancePda, isSigner: false, isWritable: true },\n { pubkey: collection, isSigner: false, isWritable: true },\n { pubkey: userPrincipalAta, isSigner: false, isWritable: true },\n { pubkey: feePrincipalRecipientAta, isSigner: false, isWritable: true },\n { pubkey: partnerPrincipalRecipientAta, isSigner: false, isWritable: true },\n { pubkey: feePayoutRecipientAta, isSigner: false, isWritable: true },\n { pubkey: treasuryAta, isSigner: false, isWritable: true },\n { pubkey: principalMint, isSigner: false, isWritable: false },\n { pubkey: payoutMint, isSigner: false, isWritable: false },\n { pubkey: SystemProgram.programId, isSigner: false, isWritable: false },\n { pubkey: principalTokenProgram, isSigner: false, isWritable: false }, // principal_token_program (dynamic)\n { pubkey: payoutTokenProgram, isSigner: false, isWritable: false }, // payout_token_program (dynamic)\n { pubkey: ASSOCIATED_TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },\n { pubkey: MPL_CORE_PROGRAM_ID, isSigner: false, isWritable: false },\n { pubkey: SYSVAR_INSTRUCTIONS_PUBKEY, isSigner: false, isWritable: false },\n ]\n\n // Build initial bond instruction (for single-tx attempt)\n const bondInstruction = buildBondInstruction(amountBigInt, maxPriceEncoded, bondKeys)\n\n // STEP 2: Get Jupiter swap instructions\n const swapResult = await jupiterApi.swapInstructionsPost({\n swapRequest: {\n quoteResponse: jupiterQuote,\n userPublicKey: accountSolana.toBase58(),\n wrapAndUnwrapSol: wrapAndUnwrapSol,\n dynamicComputeUnitLimit: true,\n prioritizationFeeLamports: {\n priorityLevelWithMaxLamports: {\n maxLamports: 4000000,\n priorityLevel: 'veryHigh',\n },\n },\n },\n })\n\n console.log('=== TRANSACTION SIZE ANALYSIS ===')\n console.log('Route used:', jupiterQuote.routePlan?.map((r) => r.swapInfo.label).join(' -> '))\n console.log('Swap accounts:', swapResult.swapInstruction.accounts.length)\n console.log('Setup instructions count:', swapResult.setupInstructions?.length || 0)\n\n let totalAccounts = swapResult.swapInstruction.accounts.length\n swapResult.setupInstructions?.forEach((ix, i) => {\n console.log(` Setup ${i}: ${ix.accounts.length} accounts`)\n totalAccounts += ix.accounts.length\n })\n\n console.log('Bond instruction accounts:', 20)\n console.log('Total accounts:', totalAccounts + 20)\n console.log('=== END ANALYSIS ===')\n\n // STEP 3: TRY SINGLE TRANSACTION (if direct route)\n if (isDirectRoute) {\n try {\n // Build swap instructions\n const { setupInstructions, swapInstruction } = buildSwapInstructions(swapResult)\n const setupIxs = [\n ...(createPrincipalAtaIx ? [createPrincipalAtaIx] : []),\n ...(createPayoutFeeRecipientAtaIx ? [createPayoutFeeRecipientAtaIx] : []),\n ...setupInstructions,\n ]\n const allInstructions = [...setupIxs, swapInstruction, bondInstruction]\n const { blockhash, lastValidBlockHeight } = await connection.getLatestBlockhash('confirmed')\n\n const combinedTx = new Transaction()\n combinedTx.add(...allInstructions)\n combinedTx.recentBlockhash = blockhash\n combinedTx.feePayer = accountSolana\n combinedTx.partialSign(nftMint)\n\n // Check size - account for signatures\n const messageSize = combinedTx.serializeMessage().length\n const numSignatures = combinedTx.signatures.length // Should be 2: nftMint + accountSolana\n const signatureOverhead = 1 + numSignatures * 64 // 1 byte for count + 64 bytes per signature\n const estimatedTxSize = messageSize + signatureOverhead\n\n console.log(`Combined transaction size: ${estimatedTxSize} bytes (limit: 1232 bytes)`)\n\n if (estimatedTxSize > 1232) {\n console.log('Transaction too large, falling back to two transactions')\n throw new Error('TRANSACTION_TOO_LARGE')\n }\n\n // Execute single transaction!\n console.log('Transaction fits. Executing combined swap + bond')\n const signedTx = await signTransaction(combinedTx)\n const txId = await connection.sendRawTransaction(signedTx.serialize(), {\n skipPreflight: false,\n preflightCommitment: 'confirmed',\n })\n\n await connection.confirmTransaction({ signature: txId, blockhash, lastValidBlockHeight }, 'confirmed')\n\n console.log('SINGLE transaction confirmed:', txId)\n\n // Track success\n trackZapEvents('single-tx')\n await sendReferenceId(bondData.contractAddress[bondData.chainId]!, ChainId.SOL, txId)\n\n await new Promise((resolve) => setTimeout(resolve, 3000))\n addToastSuccess(txId, bondChain)\n setBillId?.(nftMint.publicKey.toString())\n return\n } catch (singleTxError: any) {\n if (singleTxError.message !== 'TRANSACTION_TOO_LARGE') {\n throw singleTxError\n }\n console.log('Falling back to two separate transactions...')\n }\n }\n\n // STEP 4: FALLBACK - TWO SEPARATE TRANSACTIONS\n console.log('Executing TWO separate transactions...')\n\n // Execute swap first\n const { setupInstructions, swapInstruction } = buildSwapInstructions(swapResult)\n const swapSetupIxs = [...(createPrincipalAtaIx ? [createPrincipalAtaIx] : []), ...setupInstructions]\n const swapTx = new Transaction().add(...swapSetupIxs, swapInstruction)\n swapTx.feePayer = accountSolana\n const { blockhash: swapBlockhash, lastValidBlockHeight: swapLastValid } =\n await connection.getLatestBlockhash('confirmed')\n swapTx.recentBlockhash = swapBlockhash\n\n const signedSwapTx = await signTransaction(swapTx)\n const swapTxId = await connection.sendRawTransaction(signedSwapTx.serialize(), {\n skipPreflight: false,\n preflightCommitment: 'confirmed',\n })\n\n await connection.confirmTransaction(\n { signature: swapTxId, blockhash: swapBlockhash, lastValidBlockHeight: swapLastValid },\n 'confirmed',\n )\n console.log('Swap transaction confirmed:', swapTxId)\n\n // QUERY ACTUAL BALANCE RECEIVED FROM SWAP\n const principalTokenBalance = await connection.getTokenAccountBalance(userPrincipalAta)\n const actualAmount = BigInt(principalTokenBalance.value.amount)\n\n // REBUILD BOND INSTRUCTION WITH ACTUAL AMOUNT\n const actualBondInstruction = buildBondInstruction(actualAmount, maxPriceEncoded, bondKeys)\n\n const bondTx = new Transaction()\n if (createPayoutFeeRecipientAtaIx) bondTx.add(createPayoutFeeRecipientAtaIx)\n bondTx.add(actualBondInstruction)\n bondTx.feePayer = accountSolana\n const { blockhash, lastValidBlockHeight } = await connection.getLatestBlockhash('confirmed')\n bondTx.recentBlockhash = blockhash\n bondTx.partialSign(nftMint)\n\n const signedBondTx = await signTransaction(bondTx)\n const bondTxId = await connection.sendRawTransaction(signedBondTx.serialize(), {\n skipPreflight: false,\n preflightCommitment: 'confirmed',\n })\n\n await connection.confirmTransaction({ signature: bondTxId, blockhash, lastValidBlockHeight }, 'confirmed')\n console.log('Bond transaction confirmed:', bondTxId)\n\n // Track both transactions\n trackZapEvents('two-tx')\n await sendReferenceId(bondData.contractAddress[bondData.chainId]!, ChainId.SOL, bondTxId)\n\n await new Promise((resolve) => setTimeout(resolve, 3000))\n addToastSuccess(bondTxId, bondChain)\n setBillId?.(nftMint.publicKey.toString())\n } catch (error: any) {\n console.error('Error during zap + bond purchase:', error)\n addToastError(error?.message || 'Unknown error during swap and bond')\n\n reportError({\n apiUrl: SDKConfig?.urls?.apiV2,\n error: error.message,\n extraInfo: {\n type: 'solanaJupiterZapBuyBond',\n error: error.message,\n isDirectRoute,\n quote: jupiterQuote,\n },\n chainId: bondChain,\n account: accountSolana.toString(),\n })\n } finally {\n setLoadingTx(false)\n }\n }\n\n const handleBothPurchases = () => {\n if (loadingTx) return // Prevent duplicate calls\n setLoadingTx(true)\n if (isZap) {\n handleZapCallback().finally(() => setLoadingTx(false))\n } else {\n handleBuyCallback().finally(() => setLoadingTx(false))\n }\n }\n\n const handleOpenModal = () => {\n const bonus = trueBondPriceData?.bonusWithFee ?? 0\n if (bonus <= 0) {\n openNoBonusModal()\n } else {\n handleBothPurchases()\n }\n }\n\n // Modals\n // Optional bridge (LiFi adapter); without it the \"bridge to sol\" button is hidden.\n const bridge = getBridgeAdapter()\n const canBridge = !!bridge && bridge.supportsChain(ChainId.SOL)\n const [onOpenBridgeModal] = useModal(\n canBridge ? (\n <bridge.BridgeModal bondChain={ChainId.SOL} principalToken={bondData?.lpToken?.address?.[bondData?.chainId]} />\n ) : null,\n true,\n false,\n 'BridgeModal',\n )\n\n const [openNoBonusModal] = useModal(\n <NoBonusModal onAcknowledge={handleBothPurchases} showcaseTokenName={bondData?.showcaseTokenName} />,\n true,\n true,\n 'NoBonusModal',\n )\n // Effects\n const [hasChecked, setHasChecked] = useState(false)\n useEffect(() => {\n if (zapListFetched && !hasChecked) {\n if (parseFloat(inputCurrencyBalance ?? '0') < 0.0001) {\n setInputTokenString(\n sortedZapList[0].token === 'NATIVE' ? 'NATIVE' : sortedZapList[0].token.address[bondChain as ChainId],\n )\n }\n setHasChecked(true)\n }\n /* eslint-disable react-hooks/exhaustive-deps */\n }, [inputCurrencyBalance, zapListFetched])\n\n return bondData ? (\n <Flex\n className=\"modal-content ape:flex ape:flex-col ape:rounded-[10px] ape:bg-white2 ape:w-full ape:p-3.75 ape:md:p-5\"\n style={{ ...MCBuyComponentStyles[bondData?.marketingCampaign as MarketingCampaign] }}\n >\n <Flex className=\"modaltable-container ape:w-full ape:flex ape:flex-col ape:relative ape:gap-2.5\">\n <BondModalHeader bondData={bondData} onDismiss={onDismiss} hidePromotionUi />\n <ProjectDescription description={bondData.shortDescription} isProjectView />\n <Flex className={clsx('ape:w-full', isProjectView ? 'ape:hidden ape:lg:flex' : 'ape:flex')}>\n <BondCards bondData={bondData} isDoingMaxBuy={exceedsSafeMaxBuy && !exceedsRealMaxBuy} />\n </Flex>\n <Estimations\n depositAmount={depositAmount}\n bondData={bondData}\n youSpendString={youSpendString}\n isZap={isZap}\n fetchingZapQuote={fetchingZapQuote}\n zapError={zapError}\n hidePromotionUi\n />\n <TokenSelectorPanel\n typedValue={inputValue}\n setTypedValue={setInputValue}\n selectedToken={inputToken}\n handleValueBtn={handleMaxButton}\n handleCurrencySelect={handleCurrencySelect}\n bondChainId={bondData?.chainId}\n enableZap={true}\n bondPrincipalToken={bondData?.lpToken}\n tokenBalance={inputCurrencyBalance ?? undefined}\n selectedTokenPrice={inputTokenPrice}\n isConnected={!!accountSolana}\n />\n {bondData?.warningCard && (\n <Flex\n className=\"ape:w-full ape:justify-center ape:mt-[10px] ape:rounded-normal ape:p-[2px_10px]\"\n style={{ background: '#DE62F366' }}\n >\n <Text as=\"div\" size=\"12px\" className=\"ape:font-normal ape:flex ape:items-center ape:gap-[10px]\">\n <SafeHTMLComponent html={bondData?.warningCard} />\n {bondData?.chainId === ChainId.SONIC && bondData?.earnToken.symbol.toLowerCase() === 'moon' && (\n <TooltipBubble\n className=\"tooltip-bubble\"\n body={\n <Text className=\"ape:normal-case\">\n Open the &#39;cog&#39; icon menu in the top right and set the Slippage Tolerance to 5% or more.\n </Text>\n }\n width=\"315px\"\n placement=\"topRight\"\n transformTip=\"translate(9%, -10%)\"\n >\n <QuestionCircle width={14} color=\"textDisabledButton\" />\n </TooltipBubble>\n )}\n </Text>\n </Flex>\n )}\n <Flex className=\"modaltable-container button-container ape:w-full ape:flex ape:relative ape:flex-row ape:justify-between\">\n <Flex className=\"button-container buy ape:justify-center ape:items-center ape:cursor-pointer ape:w-full\">\n {!accountSolana ? (\n <ConnectSolanaWalletButton />\n ) : (\n <Flex className=\"ape:w-full ape:gap-[10px] ape:flex-col ape:lg:flex-row\">\n {canBridge && (\n <Button\n variant=\"secondary\"\n onClick={() => onOpenBridgeModal()}\n className=\"ape:w-full ape:lg:w-[35%] ape:text-[14px]! ape:lg:text-[16px]!\"\n >\n bridge to sol\n </Button>\n )}\n <Button\n className={clsx(\n 'action-button ape:w-full ape:text-[14px]! ape:lg:text-[16px]!',\n canBridge && 'ape:lg:w-[65%]',\n )}\n load={load}\n disabled={\n load ||\n bondData?.soldOut ||\n !accountSolana ||\n !inputValue ||\n parseFloat(inputValue) === 0 ||\n fetchingZapQuote ||\n zapError ||\n exceedsRealMaxBuy ||\n exceedsBalance ||\n (isZap && !jupiterQuote) ||\n SDKConfig.blockSales\n }\n onClick={handleOpenModal}\n >\n {SDKConfig.blockSales\n ? 'Complete KYC to Buy'\n : exceedsRealMaxBuy\n ? 'Exceeds Max Buy. Reduce amount'\n : exceedsBalance\n ? 'Insufficient balance'\n : zapError\n ? 'Swap quote failed'\n : !inputValue || parseFloat(inputValue) === 0\n ? 'Insert amount'\n : 'buy'}\n </Button>\n </Flex>\n )}\n </Flex>\n </Flex>\n </Flex>\n </Flex>\n ) : (\n <></>\n )\n}\n\nexport default BuyComponentSolana\n"],"names":["_jsx","_jsxs","ConnectSolanaWalletButton","_Fragment"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  declare const ConnectSolanaWallet: ({ navBarFlag }: {
2
2
  navBarFlag?: boolean;
3
- }) => import("react").JSX.Element;
3
+ }) => import("react/jsx-runtime").JSX.Element;
4
4
  export default ConnectSolanaWallet;
@@ -0,0 +1,14 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { useSDKConfig } from '../../state/useSDKConfig.js';
3
+ import { openSolWalletConnector } from '../../config/constants/walletConnectors.js';
4
+ import Flex from '../../components/uikit-sdk/Flex/index.js';
5
+ import Button from '../../components/uikit-sdk/Button/Button.js';
6
+
7
+ const ConnectSolanaWallet = ({ navBarFlag }) => {
8
+ const config = useSDKConfig();
9
+ const handleConnect = config?.openWalletConnectors?.sol ? openSolWalletConnector : undefined;
10
+ return (jsx(Flex, { className: "ape:h-full ape:items-center", style: { width: navBarFlag ? 'auto' : '100%' }, children: jsx(Button, { fullWidth: true, onClick: handleConnect, className: "ape:p-[10px]", style: { height: navBarFlag ? '32.5px' : '45px', backgroundColor: navBarFlag ? '#00c59a' : undefined }, disabled: !handleConnect, children: "Connect to Solana" }) }));
11
+ };
12
+
13
+ export { ConnectSolanaWallet as default };
14
+ //# sourceMappingURL=ConnectSolanaWalletButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConnectSolanaWalletButton.js","sources":["../../../src/adapters/solana/ConnectSolanaWalletButton.tsx"],"sourcesContent":["import { useSDKConfig } from '../../state/useSDKConfig'\nimport { openSolWalletConnector } from '../../config/constants/walletConnectors'\nimport Flex from '../../components/uikit-sdk/Flex'\nimport Button from '../../components/uikit-sdk/Button/Button'\n\nconst ConnectSolanaWallet = ({ navBarFlag }: { navBarFlag?: boolean }) => {\n const config = useSDKConfig()\n const handleConnect = config?.openWalletConnectors?.sol ? openSolWalletConnector : undefined\n\n return (\n <Flex className=\"ape:h-full ape:items-center\" style={{ width: navBarFlag ? 'auto' : '100%' }}>\n <Button\n fullWidth\n onClick={handleConnect}\n className=\"ape:p-[10px]\"\n style={{ height: navBarFlag ? '32.5px' : '45px', backgroundColor: navBarFlag ? '#00c59a' : undefined }}\n disabled={!handleConnect}\n >\n Connect to Solana\n </Button>\n </Flex>\n )\n}\n\nexport default ConnectSolanaWallet\n"],"names":["_jsx"],"mappings":";;;;;;AAKA,MAAM,mBAAmB,GAAG,CAAC,EAAE,UAAU,EAA4B,KAAI;AACvE,IAAA,MAAM,MAAM,GAAG,YAAY,EAAE;AAC7B,IAAA,MAAM,aAAa,GAAG,MAAM,EAAE,oBAAoB,EAAE,GAAG,GAAG,sBAAsB,GAAG,SAAS;AAE5F,IAAA,QACEA,GAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,6BAA6B,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,EAAE,YAC1FA,GAAA,CAAC,MAAM,EAAA,EACL,SAAS,QACT,OAAO,EAAE,aAAa,EACtB,SAAS,EAAC,cAAc,EACxB,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,MAAM,EAAE,eAAe,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,EAAE,EACtG,QAAQ,EAAE,CAAC,aAAa,EAAA,QAAA,EAAA,mBAAA,EAAA,CAGjB,EAAA,CACJ;AAEX;;;;"}
@@ -0,0 +1 @@
1
+ export default function ConnectToSolanaCard(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,18 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { useSDKConfig } from '../../state/useSDKConfig.js';
3
+ import { openSolWalletConnector } from '../../config/constants/walletConnectors.js';
4
+ import Flex from '../../components/uikit-sdk/Flex/index.js';
5
+ import Button from '../../components/uikit-sdk/Button/Button.js';
6
+ import Text from '../../components/uikit-sdk/Text/index.js';
7
+
8
+ function ConnectToSolanaCard() {
9
+ const config = useSDKConfig();
10
+ const handleConnect = config?.openWalletConnectors?.sol ? openSolWalletConnector : undefined;
11
+ return (jsxs(Flex, { className: "ape:w-full ape:h-[75px] ape:bg-cover ape:p-[10px] ape:rounded-[10px] ape:justify-between ape:items-center ape:border-none ape:cursor-pointer ape:hover:opacity-90", style: {
12
+ background: `url('https://ape.bond/images/connect-to-vm/solana-card-background.png') no-repeat center center`,
13
+ backgroundSize: 'cover',
14
+ }, onClick: handleConnect, children: [jsxs(Flex, { className: "ape:w-full ape:max-w-[300px] ape:gap-[10px] ape:items-center", children: [jsx("img", { src: "https://ape.bond/images/connect-to-vm/solana-icon.png", alt: "solana icon", width: 30, height: 30, style: { borderRadius: '50px' } }), jsxs(Flex, { className: "ape:flex-col", children: [jsxs(Text, { size: "15px", className: "ape:font-bold ape:flex ape:items-center ape:gap-[5px]", style: { lineHeight: '18.5px' }, children: ["Solana", jsx("img", { src: "https://ape.bond/images/connect-to-vm/svm-compatible-wallets.png", alt: "solana compatible wallets", width: 43, height: 17 })] }), jsx("div", { className: "ape:font-normal ape:text-[10px] ape:text-gray-300", children: "Connect your wallet to view your Solana Bonds!" })] })] }), jsx(Flex, { className: "ape:min-w-[100px]", children: jsx(Button, { className: "ape:border-none ape:h-[31px] ape:w-[210px] ape:xl:w-[100px] ape:text-[14px]! ape:font-bold ape:bg-text ape:border-text ape:enabled:hover:text-text ape:enabled:hover:bg-primary-button ape:text-primary-button", children: "Connect" }) })] }));
15
+ }
16
+
17
+ export { ConnectToSolanaCard as default };
18
+ //# sourceMappingURL=ConnectToSolanaBanner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConnectToSolanaBanner.js","sources":["../../../src/adapters/solana/ConnectToSolanaBanner.tsx"],"sourcesContent":["import { useSDKConfig } from '../../state/useSDKConfig'\nimport { openSolWalletConnector } from '../../config/constants/walletConnectors'\nimport Flex from '../../components/uikit-sdk/Flex'\nimport Button from '../../components/uikit-sdk/Button/Button'\nimport Text from '../../components/uikit-sdk/Text'\n\nexport default function ConnectToSolanaCard() {\n const config = useSDKConfig()\n const handleConnect = config?.openWalletConnectors?.sol ? openSolWalletConnector : undefined\n return (\n <Flex\n className=\"ape:w-full ape:h-[75px] ape:bg-cover ape:p-[10px] ape:rounded-[10px] ape:justify-between ape:items-center ape:border-none ape:cursor-pointer ape:hover:opacity-90\"\n style={{\n background: `url('https://ape.bond/images/connect-to-vm/solana-card-background.png') no-repeat center center`,\n backgroundSize: 'cover',\n }}\n onClick={handleConnect}\n >\n <Flex className=\"ape:w-full ape:max-w-[300px] ape:gap-[10px] ape:items-center\">\n <img\n src=\"https://ape.bond/images/connect-to-vm/solana-icon.png\"\n alt=\"solana icon\"\n width={30}\n height={30}\n style={{ borderRadius: '50px' }}\n />\n <Flex className=\"ape:flex-col\">\n <Text\n size=\"15px\"\n className=\"ape:font-bold ape:flex ape:items-center ape:gap-[5px]\"\n style={{ lineHeight: '18.5px' }}\n >\n Solana\n <img\n src=\"https://ape.bond/images/connect-to-vm/svm-compatible-wallets.png\"\n alt=\"solana compatible wallets\"\n width={43}\n height={17}\n />\n </Text>\n <div className=\"ape:font-normal ape:text-[10px] ape:text-gray-300\">\n Connect your wallet to view your Solana Bonds!\n </div>\n </Flex>\n </Flex>\n <Flex className=\"ape:min-w-[100px]\">\n <Button className=\"ape:border-none ape:h-[31px] ape:w-[210px] ape:xl:w-[100px] ape:text-[14px]! ape:font-bold ape:bg-text ape:border-text ape:enabled:hover:text-text ape:enabled:hover:bg-primary-button ape:text-primary-button\">\n Connect\n </Button>\n </Flex>\n </Flex>\n )\n}\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AAMc,SAAU,mBAAmB,GAAA;AACzC,IAAA,MAAM,MAAM,GAAG,YAAY,EAAE;AAC7B,IAAA,MAAM,aAAa,GAAG,MAAM,EAAE,oBAAoB,EAAE,GAAG,GAAG,sBAAsB,GAAG,SAAS;IAC5F,QACEA,KAAC,IAAI,EAAA,EACH,SAAS,EAAC,mKAAmK,EAC7K,KAAK,EAAE;AACL,YAAA,UAAU,EAAE,CAAA,+FAAA,CAAiG;AAC7G,YAAA,cAAc,EAAE,OAAO;SACxB,EACD,OAAO,EAAE,aAAa,EAAA,QAAA,EAAA,CAEtBA,KAAC,IAAI,EAAA,EAAC,SAAS,EAAC,8DAA8D,EAAA,QAAA,EAAA,CAC5EC,aACE,GAAG,EAAC,uDAAuD,EAC3D,GAAG,EAAC,aAAa,EACjB,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,EAAE,EACV,KAAK,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,EAAA,CAC/B,EACFD,IAAA,CAAC,IAAI,IAAC,SAAS,EAAC,cAAc,EAAA,QAAA,EAAA,CAC5BA,IAAA,CAAC,IAAI,IACH,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,uDAAuD,EACjE,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAA,QAAA,EAAA,CAAA,QAAA,EAG/BC,GAAA,CAAA,KAAA,EAAA,EACE,GAAG,EAAC,kEAAkE,EACtE,GAAG,EAAC,2BAA2B,EAC/B,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,EAAE,EAAA,CACV,CAAA,EAAA,CACG,EACPA,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,mDAAmD,EAAA,QAAA,EAAA,gDAAA,EAAA,CAE5D,CAAA,EAAA,CACD,IACF,EACPA,GAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,mBAAmB,EAAA,QAAA,EACjCA,GAAA,CAAC,MAAM,EAAA,EAAC,SAAS,EAAC,iNAAiN,EAAA,QAAA,EAAA,SAAA,EAAA,CAE1N,EAAA,CACJ,CAAA,EAAA,CACF;AAEX;;;;"}
@@ -0,0 +1,3 @@
1
+ /** Publishes the connected Solana account (or the debugging `solAddress`) for core code; see ChainAdapter.AccountBridge. */
2
+ declare const SolanaAccountBridge: () => null;
3
+ export default SolanaAccountBridge;
@@ -0,0 +1,13 @@
1
+ import useSOLAccount from './useSOLAccount.js';
2
+ import { usePublishChainAccount } from '../../state/chainAccount/useChainAccount.js';
3
+
4
+ /** Publishes the connected Solana account (or the debugging `solAddress`) for core code; see ChainAdapter.AccountBridge. */
5
+ const SolanaAccountBridge = () => {
6
+ const { publicKey } = useSOLAccount();
7
+ const address = publicKey?.toBase58() ?? null;
8
+ usePublishChainAccount('sol', { address, connected: !!address });
9
+ return null;
10
+ };
11
+
12
+ export { SolanaAccountBridge as default };
13
+ //# sourceMappingURL=SolanaAccountBridge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SolanaAccountBridge.js","sources":["../../../src/adapters/solana/SolanaAccountBridge.tsx"],"sourcesContent":["import useSOLAccount from './useSOLAccount'\nimport { usePublishChainAccount } from '../../state/chainAccount/useChainAccount'\n\n/** Publishes the connected Solana account (or the debugging `solAddress`) for core code; see ChainAdapter.AccountBridge. */\nconst SolanaAccountBridge = () => {\n const { publicKey } = useSOLAccount()\n const address: string | null = publicKey?.toBase58() ?? null\n usePublishChainAccount('sol', { address, connected: !!address })\n return null\n}\n\nexport default SolanaAccountBridge\n"],"names":[],"mappings":";;;AAGA;AACA,MAAM,mBAAmB,GAAG,MAAK;AAC/B,IAAA,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,EAAE;IACrC,MAAM,OAAO,GAAkB,SAAS,EAAE,QAAQ,EAAE,IAAI,IAAI;AAC5D,IAAA,sBAAsB,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;AAChE,IAAA,OAAO,IAAI;AACb;;;;"}
@@ -1,7 +1,7 @@
1
- import { UserBill } from '../../../../types/yourbonds';
1
+ import { UserBill } from '../../types/yourbonds';
2
2
  declare const TransferAction: ({ userBill, toAddress, disabled, }: {
3
3
  userBill?: UserBill;
4
4
  toAddress?: string;
5
5
  disabled?: boolean;
6
- }) => import("react").JSX.Element;
6
+ }) => import("react/jsx-runtime").JSX.Element;
7
7
  export default TransferAction;
@@ -1,14 +1,14 @@
1
- import { jsx } from 'theme-ui/jsx-runtime';
1
+ import { jsx } from 'react/jsx-runtime';
2
2
  import { useState } from 'react';
3
3
  import { ChainId } from '@ape.swap/apeswap-lists';
4
- import { usePopups } from '../../../../state/popups/usePopups.js';
4
+ import { usePopups } from '../../state/popups/usePopups.js';
5
5
  import { Connection, PublicKey, SystemProgram, TransactionInstruction, Transaction } from '@solana/web3.js';
6
- import useUserBonds from '../../../../state/bonds/useUserBonds.js';
7
- import { MPL_CORE_PROGRAM_ID } from '../../../../constants/solanaConstants.js';
6
+ import useUserBonds from '../../state/bonds/useUserBonds.js';
7
+ import { MPL_CORE_PROGRAM_ID } from './solanaConstants.js';
8
8
  import { Buffer } from 'buffer';
9
- import { getRPC } from '../../../../config/constants/networks.js';
10
- import useSOLAccount from '../../../../hooks/accounts/useSOLAccount.js';
11
- import Button from '../../../../components/uikit-sdk/Button/Button.js';
9
+ import { getRPC } from '../../config/constants/networks.js';
10
+ import useSOLAccount from './useSOLAccount.js';
11
+ import Button from '../../components/uikit-sdk/Button/Button.js';
12
12
 
13
13
  const TransferAction = ({ userBill, toAddress, disabled, }) => {
14
14
  // Hooks
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TransferActionSolana.js","sources":["../../../src/adapters/solana/TransferActionSolana.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { UserBill } from '../../types/yourbonds'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport { usePopups } from '../../state/popups/usePopups'\nimport { Connection, PublicKey, Transaction, TransactionInstruction, SystemProgram } from '@solana/web3.js'\nimport useUserBonds from '../../state/bonds/useUserBonds'\nimport { MPL_CORE_PROGRAM_ID } from './solanaConstants'\nimport { Buffer } from 'buffer'\nimport { getRPC } from '../../config/constants/networks'\nimport useSOLAccount from './useSOLAccount'\nimport Button from '../../components/uikit-sdk/Button/Button'\n\nconst TransferAction = ({\n userBill,\n toAddress,\n disabled,\n}: {\n userBill?: UserBill\n toAddress?: string\n disabled?: boolean\n}) => {\n // Hooks\n const wallet = useSOLAccount()\n const { refetch } = useUserBonds()\n\n // State\n const [loadingTx, setLoadingTx] = useState(false)\n const { addToastError, addToastSuccess } = usePopups()\n\n const load = loadingTx\n\n const handleTransfer = async () => {\n try {\n if (!wallet.publicKey || !wallet.signTransaction) {\n throw new Error('Wallet not connected')\n }\n\n setLoadingTx(true)\n\n const connection = new Connection(getRPC(ChainId.SOL))\n\n // MPL Core program ID\n if (!userBill?.id || !toAddress || !userBill || !userBill?.asset) return\n const asset = new PublicKey(userBill?.asset)\n const newOwner = new PublicKey(toAddress)\n const collection = new PublicKey(userBill.billNftAddress)\n\n // Create instruction data with discriminator (14) + null compression_proof\n // Since compression_proof is null, we just need discriminator + 1 byte for None option\n const discriminator = Buffer.from([14])\n const nullOption = Buffer.from([0]) // 0 = None for Option<CompressionProof>\n const data = Buffer.concat([discriminator, nullOption])\n\n // Build the accounts array according to MPL Core transfer instruction\n const accounts = [\n { pubkey: asset, isSigner: false, isWritable: true }, // asset\n { pubkey: collection, isSigner: false, isWritable: false }, // collection\n { pubkey: wallet.publicKey, isSigner: true, isWritable: true }, // payer\n { pubkey: wallet.publicKey, isSigner: true, isWritable: false }, // authority\n { pubkey: newOwner, isSigner: false, isWritable: false }, // new_owner\n { pubkey: SystemProgram.programId, isSigner: false, isWritable: false }, // system_program\n { pubkey: new PublicKey('noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV'), isSigner: false, isWritable: false }, // log_wrapper (SPL Noop Program)\n ]\n\n const transferInstruction = new TransactionInstruction({\n keys: accounts,\n programId: MPL_CORE_PROGRAM_ID,\n data,\n })\n\n const transaction = new Transaction().add(transferInstruction)\n\n // Get recent blockhash\n const { blockhash, lastValidBlockHeight } = await connection.getLatestBlockhash()\n transaction.recentBlockhash = blockhash\n transaction.feePayer = wallet.publicKey\n\n // Sign and send transaction\n const signedTransaction = await wallet.signTransaction(transaction)\n const signature = await connection.sendRawTransaction(signedTransaction.serialize())\n\n // Confirm transaction\n await connection.confirmTransaction(\n {\n signature,\n blockhash,\n lastValidBlockHeight,\n },\n 'confirmed',\n )\n\n refetch()\n addToastSuccess(signature, userBill?.bond?.chainId)\n } catch (error: any) {\n console.error('Error during NFT transfer:', error)\n addToastError(error?.message || 'Unknown error')\n } finally {\n setLoadingTx(false)\n }\n }\n\n return (\n <Button onClick={handleTransfer} load={load} disabled={load || disabled} fullWidth>\n transfer\n </Button>\n )\n}\n\nexport default TransferAction\n"],"names":["_jsx"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { UserBill } from '../../types/yourbonds';
2
+ declare const UserBondRowSolana: ({ bill }: {
3
+ bill: UserBill;
4
+ }) => import("react/jsx-runtime").JSX.Element;
5
+ export default UserBondRowSolana;
@@ -1,31 +1,31 @@
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 TokenInfoAndName from '../../../../components/TokenInfoAndName/index.js';
4
- import { formatNumberSI } from '../../../../utils/formatNumber.js';
5
- import Button from '../../../../components/uikit-sdk/Button/Button.js';
6
- import TooltipBubble from '../../../../components/uikit-sdk/TooltipBubble/index.js';
7
- import Flex from '../../../../components/uikit-sdk/Flex/index.js';
8
- import { getTimeLeftForFullyVested, getPendingVestingString, claimable, pending, getPercentageVested } from '../../../../utils/displayHelpers.js';
9
- import useModal from '../../../../hooks/useModal.js';
10
- import { usePopups } from '../../../../state/popups/usePopups.js';
11
- import BondInfoTooltip from '../../../../components/Tooltip/Tooltip.js';
12
- import { getTimePeriods } from '../../../../utils/getTimePeriods.js';
3
+ import TokenInfoAndName from '../../components/TokenInfoAndName/index.js';
4
+ import { formatNumberSI } from '../../utils/formatNumber.js';
5
+ import Button from '../../components/uikit-sdk/Button/Button.js';
6
+ import TooltipBubble from '../../components/uikit-sdk/TooltipBubble/index.js';
7
+ import Flex from '../../components/uikit-sdk/Flex/index.js';
8
+ import { getTimeLeftForFullyVested, getPendingVestingString, claimable, pending, getPercentageVested } from '../../utils/displayHelpers.js';
9
+ import useModal from '../../hooks/useModal.js';
10
+ import { usePopups } from '../../state/popups/usePopups.js';
11
+ import BondInfoTooltip from '../../components/Tooltip/Tooltip.js';
12
+ import { getTimePeriods } from '../../utils/getTimePeriods.js';
13
13
  import { Connection, PublicKey, TransactionInstruction, Transaction } from '@solana/web3.js';
14
14
  import { ASSOCIATED_TOKEN_PROGRAM_ID } from '@solana/spl-token';
15
- import useUserBonds from '../../../../state/bonds/useUserBonds.js';
16
- import { PROGRAM_ID, CLAIM_DISCRIMINATOR } from '../../../../constants/solanaConstants.js';
17
- import { getRPC } from '../../../../config/constants/networks.js';
15
+ import useUserBonds from '../../state/bonds/useUserBonds.js';
16
+ import { PROGRAM_ID, CLAIM_DISCRIMINATOR } from './solanaConstants.js';
17
+ import { getRPC } from '../../config/constants/networks.js';
18
18
  import { ChainId } from '@ape.swap/apeswap-lists';
19
- import useSOLAccount from '../../../../hooks/accounts/useSOLAccount.js';
20
- import ProfitCard from '../ProfitCard/ProfitCard.js';
21
- import ProgressBar from '../../../../components/ProgressBar/ProgressBar.js';
22
- import ProgressBarWrapper from '../../../../components/ProgressBar/ProgressBarWrapper.js';
23
- import { useSDKConfig } from '../../../../state/useSDKConfig.js';
24
- import YourBondsModal from '../../../YourBondsModal/YourBondsModal.js';
25
- import { derivePda } from '../../../../utils/derivePda.js';
26
- import { reportError } from '../../../../utils/reportError.js';
27
- import { getTokenProgramForMint, getAtaWithCreateInstruction } from '../../../../utils/solanaAtaHelper.js';
28
- import More from '../../../../components/uikit-sdk/Svg/Icons/More.js';
19
+ import useSOLAccount from './useSOLAccount.js';
20
+ import ProfitCard from '../../views/YourBonds/components/ProfitCard/ProfitCard.js';
21
+ import ProgressBar from '../../components/ProgressBar/ProgressBar.js';
22
+ import ProgressBarWrapper from '../../components/ProgressBar/ProgressBarWrapper.js';
23
+ import { useSDKConfig } from '../../state/useSDKConfig.js';
24
+ import YourBondsModal from '../../views/YourBondsModal/YourBondsModal.js';
25
+ import { derivePda } from './derivePda.js';
26
+ import { reportError } from '../../utils/reportError.js';
27
+ import { getTokenProgramForMint, getAtaWithCreateInstruction } from './solanaAtaHelper.js';
28
+ import More from '../../components/uikit-sdk/Svg/Icons/More.js';
29
29
 
30
30
  const UserBondRowSolana = ({ bill }) => {
31
31
  // Hooks
@@ -141,17 +141,14 @@ const UserBondRowSolana = ({ bill }) => {
141
141
  setLoadingTx(false);
142
142
  }
143
143
  };
144
- return (jsxs("div", { className: "your-bonds", onClick: () => onOpenPurchasedBond(), children: [jsxs("div", { className: "token-info-container", children: [jsx(TokenInfoAndName, { tokenSymbol: bill.bond?.earnToken.symbol, chain: bill?.bond?.chainId, vestEnds: getTimeLeftForFullyVested(bill) > 0 ? `Ends in ${getPendingVestingString(bill)}` : `Fully Vested`, isHotBond: true }), jsx("div", { className: "tooltip-column", children: jsx(TooltipBubble, { className: "tooltip-bubble", body: jsx(BondInfoTooltip, { earnTokenContract: bill?.bond?.earnToken.address[bill?.bond.chainId] || '', earnTokenSymbol: bill?.bond?.earnToken.symbol || '', bondContract: bill?.address ?? '', projectLink: bill?.bond?.projectLink, twitter: bill?.bond?.twitter, chain: bill?.bond?.chainId, cgId: bill?.bond?.cgId, dexscreener: bill?.bond?.dexscreener }), width: "205px", placement: "bottomRight", transformTip: "translate(5%, 0%)", children: jsx(Flex, { sx: {
145
- opacity: 0.8,
146
- }, children: jsx(More, { width: "25px" }) }) }) })] }), jsxs("div", { className: "your-bonds-columns-container", children: [jsx(Flex, { sx: { width: '125px' }, children: jsx(ProfitCard, { userBond: bill }) }), jsxs("div", { className: "your-bonds-content", children: [jsx("div", { className: "your-bonds-content-title", children: "Claimable" }), jsxs("div", { className: "your-bonds-content-tokens-amount", children: [formatNumberSI(claimable(bill), 4), jsx("div", { className: "your-bonds-content-tokens-usd-amount", children: `($${(claimable(bill) * earnTokenPrice).toFixed(2)})` })] })] }), jsxs("div", { className: "your-bonds-content", children: [jsx("div", { className: "your-bonds-content-title", children: "Pending" }), jsxs("div", { className: "your-bonds-content-tokens-amount", children: [formatNumberSI(pending(bill), 4), jsx("div", { className: "your-bonds-content-tokens-usd-amount", children: `($${(pending(bill) * earnTokenPrice).toFixed(2)})` })] })] }), jsx("div", { className: "your-bonds-content hide-mobile", children: jsx(ProgressBarWrapper, { title: '', value: jsx(ProgressBar, { value: getPercentageVested(bill) }), style: {
144
+ return (jsxs("div", { className: "your-bonds ape:flex ape:flex-col ape:w-full ape:justify-around ape:bg-white2 ape:mb-[5px] ape:rounded-[10px] ape:cursor-pointer ape:hover:bg-white3 ape:min-[1000px]:flex-row ape:min-[1000px]:h-[70px]", onClick: () => onOpenPurchasedBond(), children: [jsxs("div", { className: "token-info-container ape:flex ape:w-full ape:min-[1000px]:w-[30%] ape:min-[1000px]:min-w-[300px]", children: [jsx(TokenInfoAndName, { tokenSymbol: bill.bond?.earnToken.symbol, chain: bill?.bond?.chainId, vestEnds: getTimeLeftForFullyVested(bill) > 0 ? `Ends in ${getPendingVestingString(bill)}` : `Fully Vested`, isHotBond: true }), jsx("div", { className: "tooltip-column ape:flex ape:w-[50px] ape:items-center ape:ml-[10px] ape:min-[1000px]:hidden", children: jsx(TooltipBubble, { className: "tooltip-bubble", body: jsx(BondInfoTooltip, { earnTokenContract: bill?.bond?.earnToken.address[bill?.bond.chainId] || '', earnTokenSymbol: bill?.bond?.earnToken.symbol || '', bondContract: bill?.address ?? '', projectLink: bill?.bond?.projectLink, twitter: bill?.bond?.twitter, chain: bill?.bond?.chainId, cgId: bill?.bond?.cgId, dexscreener: bill?.bond?.dexscreener }), width: "205px", placement: "bottomRight", transformTip: "translate(5%, 0%)", children: jsx(Flex, { className: "ape:opacity-80", children: jsx(More, { width: "25px" }) }) }) })] }), jsxs("div", { className: "your-bonds-columns-container ape:flex ape:flex-col ape:items-center ape:justify-end ape:w-full ape:min-[1000px]:w-[70%] ape:min-[1000px]:justify-between ape:min-[1000px]:flex-row ape:min-[1000px]:pr-[20px]", children: [jsx(Flex, { className: "ape:w-[125px]", children: jsx(ProfitCard, { userBond: bill }) }), jsxs("div", { className: "your-bonds-content ape:flex ape:items-center ape:justify-between ape:w-full ape:px-[10px] ape:text-[14px] ape:min-[1000px]:w-[130px] ape:min-[1000px]:justify-center ape:min-[1000px]:mt-0", children: [jsx("div", { className: "your-bonds-content-title ape:flex ape:text-[12px] ape:font-medium ape:opacity-60 ape:min-[1000px]:hidden", children: "Claimable" }), jsxs("div", { className: "your-bonds-content-tokens-amount ape:flex ape:items-center ape:text-[14px] ape:font-semibold", children: [formatNumberSI(claimable(bill), 4), jsx("div", { className: "your-bonds-content-tokens-usd-amount ape:opacity-60 ape:text-[12px] ape:font-normal ape:ml-[4px] ape:text-text-disabled-button", children: `($${(claimable(bill) * earnTokenPrice).toFixed(2)})` })] })] }), jsxs("div", { className: "your-bonds-content ape:flex ape:items-center ape:justify-between ape:w-full ape:px-[10px] ape:text-[14px] ape:min-[1000px]:w-[130px] ape:min-[1000px]:justify-center ape:min-[1000px]:mt-0", children: [jsx("div", { className: "your-bonds-content-title ape:flex ape:text-[12px] ape:font-medium ape:opacity-60 ape:min-[1000px]:hidden", children: "Pending" }), jsxs("div", { className: "your-bonds-content-tokens-amount ape:flex ape:items-center ape:text-[14px] ape:font-semibold", children: [formatNumberSI(pending(bill), 4), jsx("div", { className: "your-bonds-content-tokens-usd-amount ape:opacity-60 ape:text-[12px] ape:font-normal ape:ml-[4px] ape:text-text-disabled-button", children: `($${(pending(bill) * earnTokenPrice).toFixed(2)})` })] })] }), jsx("div", { className: "your-bonds-content hide-mobile ape:hidden ape:min-[1000px]:flex", children: jsx(ProgressBarWrapper, { title: '', value: jsx(ProgressBar, { value: getPercentageVested(bill) }), style: {
147
145
  width: '127px',
148
146
  height: '25px',
149
147
  flexDirection: 'column',
150
148
  justifyContent: 'center',
151
- display: ['none', 'none', 'none', 'flex'],
152
- }, showTooltip: true, toolTip: getTimeLeftForFullyVested(bill) > 0
149
+ }, hideOnMobile: true, showTooltip: true, toolTip: getTimeLeftForFullyVested(bill) > 0
153
150
  ? `Fully vested in ${getPendingVestingString(bill)}.`
154
- : `Fully Vested.` }) }), jsx("div", { className: "your-bonds-column-button", children: jsx(Button, { className: "button", disabled: claimable(bill) === 0 || loadingTx || isPendingCliff, load: loadingTx, onClick: (event) => {
151
+ : `Fully Vested.` }) }), jsx("div", { className: "your-bonds-column-button ape:flex ape:w-full ape:items-center ape:justify-center ape:p-[10px] ape:min-[1000px]:w-[210px] ape:min-[1000px]:p-0", children: jsx(Button, { className: "button ape:text-[14px]! ape:p-[6px] ape:h-[30px]", disabled: claimable(bill) === 0 || loadingTx || isPendingCliff, load: loadingTx, onClick: (event) => {
155
152
  event.stopPropagation();
156
153
  if (!loadingTx)
157
154
  handleClaim();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserBondRowSolana.js","sources":["../../../src/adapters/solana/UserBondRowSolana.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport TokenInfoAndName from '../../components/TokenInfoAndName'\nimport { formatNumberSI } from '../../utils/formatNumber'\nimport Button from '../../components/uikit-sdk/Button/Button'\nimport TooltipBubble from '../../components/uikit-sdk/TooltipBubble'\nimport Flex from '../../components/uikit-sdk/Flex'\nimport { UserBill } from '../../types/yourbonds'\nimport {\n claimable,\n getPendingVestingString,\n getPercentageVested,\n getTimeLeftForFullyVested,\n pending,\n} from '../../utils/displayHelpers'\nimport useModal from '../../hooks/useModal'\nimport { usePopups } from '../../state/popups/usePopups'\nimport Tooltip from '../../components/Tooltip/Tooltip'\nimport { getTimePeriods } from '../../utils/getTimePeriods'\nimport { Connection, PublicKey, Transaction, TransactionInstruction } from '@solana/web3.js'\nimport { ASSOCIATED_TOKEN_PROGRAM_ID } from '@solana/spl-token'\nimport useUserBonds from '../../state/bonds/useUserBonds'\nimport { CLAIM_DISCRIMINATOR, PROGRAM_ID } from './solanaConstants'\nimport { getRPC } from '../../config/constants/networks'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport useSOLAccount from './useSOLAccount'\nimport ProfitCard from '../../views/YourBonds/components/ProfitCard/ProfitCard'\nimport ProgressBar from '../../components/ProgressBar/ProgressBar'\nimport ProgressBarWrapper from '../../components/ProgressBar/ProgressBarWrapper'\nimport { useSDKConfig } from '../../state/useSDKConfig'\nimport YourBondsModal from '../../views/YourBondsModal/YourBondsModal'\nimport { derivePda } from './derivePda'\nimport { reportError } from '../../utils/reportError'\nimport { getAtaWithCreateInstruction, getTokenProgramForMint } from './solanaAtaHelper'\nimport More from '../../components/uikit-sdk/Svg/Icons/More'\n\nconst UserBondRowSolana = ({ bill }: { bill: UserBill }) => {\n // Hooks\n const SDKConfig = useSDKConfig()\n const { publicKey: accountSolana, signTransaction } = useSOLAccount()\n const { addToastError, addToastSuccess } = usePopups()\n const { refetch } = useUserBonds()\n const connection = new Connection(getRPC(ChainId.SOL))\n\n // State\n const [loadingTx, setLoadingTx] = useState(false)\n\n // Static Data\n const earnTokenPrice = parseFloat(bill?.bond?.payoutTokenPrice ?? '0')\n const vestingCliff = bill?.bond?.vestingCliff\n const currentTime = Math.round(new Date().getTime() / 1000)\n const vestingStartTimestamp = parseInt(bill?.vestingStartTimestamp ?? '0')\n const isPendingCliff = vestingCliff ? currentTime - vestingStartTimestamp < vestingCliff : false\n const cliffCountdown = getTimePeriods(vestingStartTimestamp + (vestingCliff ?? 0) - currentTime, true)\n\n const [onOpenPurchasedBond] = useModal(<YourBondsModal userBill={bill} />)\n\n const handleClaim = async () => {\n // Early return guard - prevent double execution\n if (loadingTx || !accountSolana) return\n\n try {\n setLoadingTx(true)\n const earnTokenAddress = bill?.bond?.earnToken?.address?.[bill?.bond?.chainId]\n const contractAddress = bill?.bond?.contractAddress?.[bill?.bond?.chainId]\n\n if (!earnTokenAddress || !bill.asset || !contractAddress || !accountSolana) return\n\n const payoutMint = new PublicKey(earnTokenAddress)\n const bondIssuancePda = new PublicKey(contractAddress)\n const bondPricingPda = derivePda('bond_pricing', bondIssuancePda, PROGRAM_ID)\n const nftMint = new PublicKey(bill.asset)\n\n // Detect token program for payout mint (supports Token-2022)\n const payoutTokenProgram = await getTokenProgramForMint(connection, payoutMint)\n\n const [bondTermPda] = PublicKey.findProgramAddressSync(\n [new TextEncoder().encode('bond_term'), bondIssuancePda.toBuffer()],\n PROGRAM_ID,\n )\n\n const [bondPda] = PublicKey.findProgramAddressSync(\n [new TextEncoder().encode('bond'), bondIssuancePda.toBuffer(), nftMint.toBuffer()],\n PROGRAM_ID,\n )\n\n // Get user payout ATA and creation instruction if needed\n const { address: userPayoutAta, createInstruction: createAtaIx } = await getAtaWithCreateInstruction(\n connection,\n payoutMint,\n accountSolana,\n )\n\n // Treasury ATA (standard associated token account for bond issuance PDA)\n const { address: treasuryAta, createInstruction: createTreasuryAtaIx } = await getAtaWithCreateInstruction(\n connection,\n payoutMint,\n bondIssuancePda,\n accountSolana,\n )\n\n // Build keys list\n const keys = [\n { pubkey: bondPda as PublicKey, isSigner: false, isWritable: true },\n { pubkey: bondTermPda as PublicKey, isSigner: false, isWritable: false },\n { pubkey: bondIssuancePda as PublicKey, isSigner: false, isWritable: false },\n { pubkey: bondPricingPda as PublicKey, isSigner: false, isWritable: true },\n { pubkey: accountSolana as PublicKey, isSigner: true, isWritable: true }, // user\n { pubkey: nftMint as PublicKey, isSigner: false, isWritable: true },\n { pubkey: userPayoutAta as PublicKey, isSigner: false, isWritable: true },\n { pubkey: treasuryAta, isSigner: false, isWritable: true },\n { pubkey: payoutMint, isSigner: false, isWritable: false }, // payout_mint\n { pubkey: payoutTokenProgram, isSigner: false, isWritable: false }, // token_program (dynamic)\n { pubkey: ASSOCIATED_TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },\n { pubkey: new PublicKey('CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d'), isSigner: false, isWritable: false }, // mplCoreProgram\n { pubkey: PROGRAM_ID, isSigner: false, isWritable: false }, // passing programId is the same as passing null\n ]\n\n // Build Claim Instruction (no args → just discriminator)\n const claimInstruction = new TransactionInstruction({\n keys,\n programId: PROGRAM_ID,\n data: CLAIM_DISCRIMINATOR,\n })\n\n // Build Transaction - include ATA creation if needed\n const transaction = new Transaction()\n if (createTreasuryAtaIx) transaction.add(createTreasuryAtaIx)\n if (createAtaIx) transaction.add(createAtaIx)\n transaction.add(claimInstruction)\n transaction.feePayer = accountSolana\n\n // Get fresh blockhash right before signing\n const { blockhash, lastValidBlockHeight } = await connection.getLatestBlockhash('finalized')\n transaction.recentBlockhash = blockhash\n\n if (!signTransaction) return\n const signedTx = await signTransaction(transaction)\n\n // Send with better error handling\n const txHash = await connection.sendRawTransaction(signedTx.serialize(), {\n skipPreflight: false,\n preflightCommitment: 'finalized',\n maxRetries: 0, // Don't auto-retry to avoid duplicates\n })\n\n await connection.confirmTransaction(\n {\n signature: txHash,\n blockhash,\n lastValidBlockHeight,\n },\n 'confirmed',\n )\n\n const txStatus = await connection.getSignatureStatus(txHash, { searchTransactionHistory: true })\n if (txStatus?.value?.confirmationStatus === 'confirmed' || txStatus?.value?.confirmationStatus === 'finalized') {\n console.log('Tx confirmed on-chain, refetching bonds')\n refetch()\n addToastSuccess(txHash, ChainId.SOL)\n }\n } catch (error: any) {\n console.error('Claim failed:', error)\n\n // Better error messaging for duplicate transactions\n if (error?.message?.includes('already been processed')) {\n addToastError('Transaction already processed. Please wait and try again.')\n } else {\n addToastError(error?.message ?? 'Unknown error')\n }\n reportError({\n apiUrl: SDKConfig?.urls?.apiV2,\n error,\n chainId: ChainId.SOL,\n account: accountSolana?.toBase58() ?? '',\n extraInfo: { type: 'claim', bill, error },\n })\n } finally {\n setLoadingTx(false)\n }\n }\n\n return (\n <div\n className=\"your-bonds ape:flex ape:flex-col ape:w-full ape:justify-around ape:bg-white2 ape:mb-[5px] ape:rounded-[10px] ape:cursor-pointer ape:hover:bg-white3 ape:min-[1000px]:flex-row ape:min-[1000px]:h-[70px]\"\n onClick={() => onOpenPurchasedBond()}\n >\n <div className=\"token-info-container ape:flex ape:w-full ape:min-[1000px]:w-[30%] ape:min-[1000px]:min-w-[300px]\">\n <TokenInfoAndName\n tokenSymbol={bill.bond?.earnToken.symbol}\n chain={bill?.bond?.chainId}\n vestEnds={getTimeLeftForFullyVested(bill) > 0 ? `Ends in ${getPendingVestingString(bill)}` : `Fully Vested`}\n isHotBond\n />\n <div className=\"tooltip-column ape:flex ape:w-[50px] ape:items-center ape:ml-[10px] ape:min-[1000px]:hidden\">\n <TooltipBubble\n className=\"tooltip-bubble\"\n body={\n <Tooltip\n earnTokenContract={bill?.bond?.earnToken.address[bill?.bond.chainId] || ''}\n earnTokenSymbol={bill?.bond?.earnToken.symbol || ''}\n bondContract={bill?.address ?? ''}\n projectLink={bill?.bond?.projectLink}\n twitter={bill?.bond?.twitter}\n chain={bill?.bond?.chainId as number}\n cgId={bill?.bond?.cgId}\n dexscreener={bill?.bond?.dexscreener}\n />\n }\n width=\"205px\"\n placement=\"bottomRight\"\n transformTip=\"translate(5%, 0%)\"\n >\n <Flex className=\"ape:opacity-80\">\n <More width=\"25px\" />\n </Flex>\n </TooltipBubble>\n </div>\n </div>\n <div className=\"your-bonds-columns-container ape:flex ape:flex-col ape:items-center ape:justify-end ape:w-full ape:min-[1000px]:w-[70%] ape:min-[1000px]:justify-between ape:min-[1000px]:flex-row ape:min-[1000px]:pr-[20px]\">\n <Flex className=\"ape:w-[125px]\">\n <ProfitCard userBond={bill} />\n </Flex>\n <div className=\"your-bonds-content ape:flex ape:items-center ape:justify-between ape:w-full ape:px-[10px] ape:text-[14px] ape:min-[1000px]:w-[130px] ape:min-[1000px]:justify-center ape:min-[1000px]:mt-0\">\n <div className=\"your-bonds-content-title ape:flex ape:text-[12px] ape:font-medium ape:opacity-60 ape:min-[1000px]:hidden\">\n Claimable\n </div>\n <div className=\"your-bonds-content-tokens-amount ape:flex ape:items-center ape:text-[14px] ape:font-semibold\">\n {formatNumberSI(claimable(bill), 4)}\n <div className=\"your-bonds-content-tokens-usd-amount ape:opacity-60 ape:text-[12px] ape:font-normal ape:ml-[4px] ape:text-text-disabled-button\">\n {`($${(claimable(bill) * earnTokenPrice).toFixed(2)})`}\n </div>\n </div>\n </div>\n <div className=\"your-bonds-content ape:flex ape:items-center ape:justify-between ape:w-full ape:px-[10px] ape:text-[14px] ape:min-[1000px]:w-[130px] ape:min-[1000px]:justify-center ape:min-[1000px]:mt-0\">\n <div className=\"your-bonds-content-title ape:flex ape:text-[12px] ape:font-medium ape:opacity-60 ape:min-[1000px]:hidden\">\n Pending\n </div>\n <div className=\"your-bonds-content-tokens-amount ape:flex ape:items-center ape:text-[14px] ape:font-semibold\">\n {formatNumberSI(pending(bill), 4)}\n <div className=\"your-bonds-content-tokens-usd-amount ape:opacity-60 ape:text-[12px] ape:font-normal ape:ml-[4px] ape:text-text-disabled-button\">\n {`($${(pending(bill) * earnTokenPrice).toFixed(2)})`}\n </div>\n </div>\n </div>\n <div className=\"your-bonds-content hide-mobile ape:hidden ape:min-[1000px]:flex\">\n <ProgressBarWrapper\n title={''}\n value={<ProgressBar value={getPercentageVested(bill)} />}\n style={{\n width: '127px',\n height: '25px',\n flexDirection: 'column',\n justifyContent: 'center',\n }}\n hideOnMobile\n showTooltip={true}\n toolTip={\n getTimeLeftForFullyVested(bill) > 0\n ? `Fully vested in ${getPendingVestingString(bill)}.`\n : `Fully Vested.`\n }\n />\n </div>\n <div className=\"your-bonds-column-button ape:flex ape:w-full ape:items-center ape:justify-center ape:p-[10px] ape:min-[1000px]:w-[210px] ape:min-[1000px]:p-0\">\n <Button\n className=\"button ape:text-[14px]! ape:p-[6px] ape:h-[30px]\"\n disabled={claimable(bill) === 0 || loadingTx || isPendingCliff}\n load={loadingTx}\n onClick={(event) => {\n event.stopPropagation()\n if (!loadingTx) handleClaim()\n }}\n fullWidth\n >\n {isPendingCliff\n ? `Claimable in ${cliffCountdown.days !== 0 ? `${cliffCountdown.days} days` : cliffCountdown.hours !== 0 ? `${cliffCountdown.hours} hours` : `${cliffCountdown.minutes} mins`}`\n : 'Claim'}\n </Button>\n </div>\n </div>\n </div>\n )\n}\n\nexport default UserBondRowSolana\n"],"names":["_jsx","_jsxs","Tooltip"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { parseUnits, mulDivRound } from './fixedPoint.js';
1
+ import { parseUnits, mulDivRound } from '../../utils/fixedPoint.js';
2
2
 
3
3
  /**
4
4
  * This is the Typescript implementation of the Rust true_bond_price function since the on-chain program requires a real wallet
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calculateSolanaTrueBillPrice.js","sources":["../../../src/adapters/solana/calculateSolanaTrueBillPrice.ts"],"sourcesContent":["import { mulDivRound, parseUnits } from '../../utils/fixedPoint'\n\n/**\n * This is the Typescript implementation of the Rust true_bond_price function since the on-chain program requires a real wallet\n *\n * Uses native BigInt with truncating division at each step, matching the real on-chain\n * Rust u64/u128 integer arithmetic (see src/utils/suiHelpers.ts for the equivalent Sui/Move\n * implementation of the same formula).\n */\nconst PRECISION_18 = 10n ** 18n\n\nexport function calculateTrueBondPrice(\n bondPricing: any,\n bondTerm: any,\n currentTimestamp: number,\n principalMintDecimals: number,\n payoutMintDecimals: number,\n feeInPrincipal: number,\n): string {\n try {\n // Extract values from the account data\n const totalDebt = BigInt(bondPricing.totalDebt?.toString() ?? '0')\n const lastDecay = BigInt(bondPricing.lastDecay?.toString() ?? '0')\n const controlVariable = BigInt(bondTerm.controlVariable?.toString() ?? '0')\n const vestingEnd = BigInt(bondTerm.vestingEnd?.toString() ?? '0')\n const minimumDebt = BigInt(bondTerm.minimumDebt?.toString() ?? '0')\n const payoutTokenInitialSupply = BigInt(bondTerm.payoutTokenInitialSupply?.toString() ?? '0')\n\n // Constants for price calculation (1e16 and 1e18)\n const e16 = 10_000_000_000_000_000n\n const principalDecimalsMultiplier = 10n ** BigInt(principalMintDecimals)\n\n // Calculate debt ratio\n const debtRatio = calculateDebtRatio(\n totalDebt,\n lastDecay,\n BigInt(currentTimestamp),\n vestingEnd,\n payoutMintDecimals,\n payoutTokenInitialSupply,\n )\n\n // Calculate price: (control_variable * debt_ratio * 1e16) / principal_decimals / 1e18\n const numerator = controlVariable * debtRatio * e16\n const price = numerator / principalDecimalsMultiplier / PRECISION_18\n\n // Apply minimum debt floor\n const priceToUse = price < minimumDebt ? minimumDebt : price\n\n // reverseFee = fee/100 / (1 - fee/100) — feeInPrincipal is a plain percentage (e.g. 0.5).\n // Scaled to 1e18 precision so the huge integer priceToUse never round-trips through a float.\n const feeToUse = feeInPrincipal\n const reverseFeeScaled = parseUnits((feeToUse / 100 / (1 - feeToUse / 100)).toString(), 18)\n const feeAdjustment = mulDivRound(priceToUse, reverseFeeScaled, PRECISION_18)\n return (priceToUse + feeAdjustment).toString()\n } catch (error) {\n console.error('Error in price calculation:', error)\n return '0'\n }\n}\n\n/**\n * This is the Typescript implementation of the Rust debt_ratio function\n */\nfunction calculateDebtRatio(\n totalDebt: bigint,\n lastDecay: bigint,\n currentTimestamp: bigint,\n vestingEnd: bigint,\n payoutDecimals: number,\n payoutTokenInitialSupply: bigint,\n): bigint {\n try {\n // If vesting term is 0 or initial supply is 0, return 0\n if (vestingEnd === 0n || payoutTokenInitialSupply === 0n) {\n return 0n\n }\n\n // Calculate time elapsed since last decay (with underflow protection)\n const timeSinceLast = currentTimestamp < lastDecay ? 0n : currentTimestamp - lastDecay\n\n // Calculate decay amount: (total_debt * time_since_last) / vesting_term\n const decayAmount = (totalDebt * timeSinceLast) / vestingEnd\n\n // Cap decay amount at total debt\n const finalDecayAmount = decayAmount > totalDebt ? totalDebt : decayAmount\n\n // Calculate current debt: total_debt - decay_amount\n const currentDebt = totalDebt - finalDecayAmount\n\n // Calculate debt ratio: (current_debt * payout_decimals_multiplier * 1e18) / initial_supply\n const payoutDecimalsMultiplier = 10n ** BigInt(payoutDecimals)\n\n const numerator = currentDebt * payoutDecimalsMultiplier * PRECISION_18\n\n return numerator / payoutTokenInitialSupply\n } catch (error) {\n console.error('Error calculating debt ratio:', error)\n return 0n\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { Address } from '@solana/addresses';
2
- import { FixedSizeDecoder, ReadonlyUint8Array } from '@solana/codecs';
1
+ import { Address } from '@solana/kit';
2
+ import { FixedSizeDecoder, ReadonlyUint8Array } from '@solana/kit';
3
3
  export interface BondAccount {
4
4
  anchorDiscriminator: ReadonlyUint8Array;
5
5
  nftMint: Address;
@@ -1,6 +1,5 @@
1
- import { getAddressDecoder } from '@solana/addresses';
2
- import { getStructDecoder, fixDecoderSize, getBytesDecoder, getU64Decoder } from '@solana/codecs';
3
- import { BOND_DISCRIMINATOR } from '../constants/solanaConstants.js';
1
+ import { getStructDecoder, fixDecoderSize, getBytesDecoder, getAddressDecoder, getU64Decoder } from '@solana/kit';
2
+ import { BOND_DISCRIMINATOR } from '../solanaConstants.js';
4
3
 
5
4
  // Create the Bond account decoder
6
5
  const bondDecoder = getStructDecoder([
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bondCodec.js","sources":["../../../../src/adapters/solana/codecs/bondCodec.ts"],"sourcesContent":["import { Address, getAddressDecoder } from '@solana/kit'\nimport {\n FixedSizeDecoder,\n fixDecoderSize,\n getBytesDecoder,\n getStructDecoder,\n getU64Decoder,\n ReadonlyUint8Array,\n} from '@solana/kit'\nimport { BOND_DISCRIMINATOR } from '../solanaConstants'\n\n// Bond account interface based on IDL\nexport interface BondAccount {\n anchorDiscriminator: ReadonlyUint8Array\n nftMint: Address\n payout: bigint\n payoutClaimed: bigint\n vestingStartTimestamp: bigint\n lastClaimTimestamp: bigint\n truePricePaid: bigint\n vesting: bigint\n vestingTerm: bigint\n}\n\n// Create the Bond account decoder\nexport const bondDecoder: FixedSizeDecoder<BondAccount> = getStructDecoder([\n ['anchorDiscriminator', fixDecoderSize(getBytesDecoder(), 8)],\n ['nftMint', getAddressDecoder()],\n ['payout', getU64Decoder()],\n ['payoutClaimed', getU64Decoder()],\n ['vestingStartTimestamp', getU64Decoder()],\n ['lastClaimTimestamp', getU64Decoder()],\n ['truePricePaid', getU64Decoder()],\n ['vesting', getU64Decoder()],\n ['vestingTerm', getU64Decoder()],\n])\n\n// Helper function to verify discriminator\nexport function verifyBondDiscriminator(data: ReadonlyUint8Array): boolean {\n const discriminator = data.slice(0, 8)\n return Array.from(discriminator).every((byte, index) => byte === BOND_DISCRIMINATOR[index])\n}\n"],"names":[],"mappings":";;;AAwBA;AACO,MAAM,WAAW,GAAkC,gBAAgB,CAAC;IACzE,CAAC,qBAAqB,EAAE,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC;AAC7D,IAAA,CAAC,SAAS,EAAE,iBAAiB,EAAE,CAAC;AAChC,IAAA,CAAC,QAAQ,EAAE,aAAa,EAAE,CAAC;AAC3B,IAAA,CAAC,eAAe,EAAE,aAAa,EAAE,CAAC;AAClC,IAAA,CAAC,uBAAuB,EAAE,aAAa,EAAE,CAAC;AAC1C,IAAA,CAAC,oBAAoB,EAAE,aAAa,EAAE,CAAC;AACvC,IAAA,CAAC,eAAe,EAAE,aAAa,EAAE,CAAC;AAClC,IAAA,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC;AAC5B,IAAA,CAAC,aAAa,EAAE,aAAa,EAAE,CAAC;AACjC,CAAA;AAED;AACM,SAAU,uBAAuB,CAAC,IAAwB,EAAA;IAC9D,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IACtC,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,KAAK,kBAAkB,CAAC,KAAK,CAAC,CAAC;AAC7F;;;;"}
@@ -1,5 +1,5 @@
1
- import { Address } from '@solana/addresses';
2
- import { FixedSizeDecoder, ReadonlyUint8Array } from '@solana/codecs';
1
+ import { Address } from '@solana/kit';
2
+ import { FixedSizeDecoder, ReadonlyUint8Array } from '@solana/kit';
3
3
  export interface BondIssuanceAccount {
4
4
  anchorDiscriminator: ReadonlyUint8Array;
5
5
  issuanceCounter: number;
@@ -1,6 +1,5 @@
1
- import { getAddressDecoder } from '@solana/addresses';
2
- import { getStructDecoder, fixDecoderSize, getBytesDecoder, getU32Decoder, getU8Decoder, getU64Decoder } from '@solana/codecs';
3
- import { BOND_ISSUANCE_DISCRIMINATOR } from '../constants/solanaConstants.js';
1
+ import { getStructDecoder, fixDecoderSize, getBytesDecoder, getU32Decoder, getAddressDecoder, getU8Decoder, getU64Decoder } from '@solana/kit';
2
+ import { BOND_ISSUANCE_DISCRIMINATOR } from '../solanaConstants.js';
4
3
 
5
4
  // BondIssuance discriminator from IDL
6
5
  // Create the BondIssuance account decoder using Solana Kit's codec utilities
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bondIssuanceCodec.js","sources":["../../../../src/adapters/solana/codecs/bondIssuanceCodec.ts"],"sourcesContent":["import { Address, getAddressDecoder } from '@solana/kit'\nimport {\n FixedSizeDecoder,\n fixDecoderSize,\n getBytesDecoder,\n getStructDecoder,\n getU8Decoder,\n getU32Decoder,\n getU64Decoder,\n ReadonlyUint8Array,\n} from '@solana/kit'\nimport { BOND_ISSUANCE_DISCRIMINATOR } from '../solanaConstants'\n\n// BondIssuance account interface based on IDL\nexport interface BondIssuanceAccount {\n anchorDiscriminator: ReadonlyUint8Array\n issuanceCounter: number\n bondCounter: number\n payoutMint: Address\n principalMint: Address\n principalMintDecimals: number\n payoutMintDecimals: number\n treasuryAta: Address\n status: number // 0 = Paused, 1 = Active, 2 = Closed\n feeInPrincipal: bigint\n feePrincipalRecipient: Address\n feeInPayout: bigint\n feePayoutRecipient: Address\n partnerPrincipalRecipient: Address\n collection: Address\n bump: number\n}\n\n// BondIssuance discriminator from IDL\n\n// Create the BondIssuance account decoder using Solana Kit's codec utilities\nexport const bondIssuanceDecoder: FixedSizeDecoder<BondIssuanceAccount> = getStructDecoder([\n ['anchorDiscriminator', fixDecoderSize(getBytesDecoder(), 8)],\n ['issuanceCounter', getU32Decoder()],\n ['bondCounter', getU32Decoder()],\n ['payoutMint', getAddressDecoder()],\n ['principalMint', getAddressDecoder()],\n ['principalMintDecimals', getU8Decoder()],\n ['payoutMintDecimals', getU8Decoder()],\n ['treasuryAta', getAddressDecoder()],\n ['status', getU8Decoder()],\n ['feeInPrincipal', getU64Decoder()],\n ['feePrincipalRecipient', getAddressDecoder()],\n ['feeInPayout', getU64Decoder()],\n ['feePayoutRecipient', getAddressDecoder()],\n ['partnerPrincipalRecipient', getAddressDecoder()],\n ['collection', getAddressDecoder()],\n ['bump', getU8Decoder()],\n])\n\n// Helper function to verify discriminator\nexport function verifyBondIssuanceDiscriminator(data: ReadonlyUint8Array): boolean {\n const discriminator = data.slice(0, 8)\n return Array.from(discriminator).every((byte, index) => byte === BOND_ISSUANCE_DISCRIMINATOR[index])\n}\n"],"names":[],"mappings":";;;AAiCA;AAEA;AACO,MAAM,mBAAmB,GAA0C,gBAAgB,CAAC;IACzF,CAAC,qBAAqB,EAAE,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC;AAC7D,IAAA,CAAC,iBAAiB,EAAE,aAAa,EAAE,CAAC;AACpC,IAAA,CAAC,aAAa,EAAE,aAAa,EAAE,CAAC;AAChC,IAAA,CAAC,YAAY,EAAE,iBAAiB,EAAE,CAAC;AACnC,IAAA,CAAC,eAAe,EAAE,iBAAiB,EAAE,CAAC;AACtC,IAAA,CAAC,uBAAuB,EAAE,YAAY,EAAE,CAAC;AACzC,IAAA,CAAC,oBAAoB,EAAE,YAAY,EAAE,CAAC;AACtC,IAAA,CAAC,aAAa,EAAE,iBAAiB,EAAE,CAAC;AACpC,IAAA,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC;AAC1B,IAAA,CAAC,gBAAgB,EAAE,aAAa,EAAE,CAAC;AACnC,IAAA,CAAC,uBAAuB,EAAE,iBAAiB,EAAE,CAAC;AAC9C,IAAA,CAAC,aAAa,EAAE,aAAa,EAAE,CAAC;AAChC,IAAA,CAAC,oBAAoB,EAAE,iBAAiB,EAAE,CAAC;AAC3C,IAAA,CAAC,2BAA2B,EAAE,iBAAiB,EAAE,CAAC;AAClD,IAAA,CAAC,YAAY,EAAE,iBAAiB,EAAE,CAAC;AACnC,IAAA,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC;AACzB,CAAA;AAED;AACM,SAAU,+BAA+B,CAAC,IAAwB,EAAA;IACtE,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IACtC,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,KAAK,2BAA2B,CAAC,KAAK,CAAC,CAAC;AACtG;;;;"}
@@ -1,4 +1,4 @@
1
- import { FixedSizeDecoder, ReadonlyUint8Array } from '@solana/codecs';
1
+ import { FixedSizeDecoder, ReadonlyUint8Array } from '@solana/kit';
2
2
  export interface BondPricingAccount {
3
3
  anchorDiscriminator: ReadonlyUint8Array;
4
4
  totalDebt: bigint;
@@ -1,5 +1,5 @@
1
- import { getStructDecoder, fixDecoderSize, getBytesDecoder, getU64Decoder } from '@solana/codecs';
2
- import { BOND_PRICING_DISCRIMINATOR } from '../constants/solanaConstants.js';
1
+ import { getStructDecoder, fixDecoderSize, getBytesDecoder, getU64Decoder } from '@solana/kit';
2
+ import { BOND_PRICING_DISCRIMINATOR } from '../solanaConstants.js';
3
3
 
4
4
  // BondPricing discriminator from IDL
5
5
  // Create the BondPricing account decoder
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bondPricingCodec.js","sources":["../../../../src/adapters/solana/codecs/bondPricingCodec.ts"],"sourcesContent":["import {\n FixedSizeDecoder,\n fixDecoderSize,\n getBytesDecoder,\n getStructDecoder,\n getU64Decoder,\n ReadonlyUint8Array,\n} from '@solana/kit'\nimport { BOND_PRICING_DISCRIMINATOR } from '../solanaConstants'\n\n// BondPricing account interface based on IDL\nexport interface BondPricingAccount {\n anchorDiscriminator: ReadonlyUint8Array\n totalDebt: bigint\n totalPayoutGiven: bigint\n totalPrincipalBilled: bigint\n lastDecay: bigint\n lastBcvUpdateTimestamp: bigint\n minBcvUpdateInterval: bigint\n}\n\n// BondPricing discriminator from IDL\n\n// Create the BondPricing account decoder\nexport const bondPricingDecoder: FixedSizeDecoder<BondPricingAccount> = getStructDecoder([\n ['anchorDiscriminator', fixDecoderSize(getBytesDecoder(), 8)],\n ['totalDebt', getU64Decoder()],\n ['totalPayoutGiven', getU64Decoder()],\n ['totalPrincipalBilled', getU64Decoder()],\n ['lastDecay', getU64Decoder()],\n ['lastBcvUpdateTimestamp', getU64Decoder()],\n ['minBcvUpdateInterval', getU64Decoder()],\n])\n\n// Helper function to verify discriminator\nexport function verifyBondPricingDiscriminator(data: ReadonlyUint8Array): boolean {\n const discriminator = data.slice(0, 8)\n return Array.from(discriminator).every((byte, index) => byte === BOND_PRICING_DISCRIMINATOR[index])\n}\n"],"names":[],"mappings":";;;AAqBA;AAEA;AACO,MAAM,kBAAkB,GAAyC,gBAAgB,CAAC;IACvF,CAAC,qBAAqB,EAAE,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC;AAC7D,IAAA,CAAC,WAAW,EAAE,aAAa,EAAE,CAAC;AAC9B,IAAA,CAAC,kBAAkB,EAAE,aAAa,EAAE,CAAC;AACrC,IAAA,CAAC,sBAAsB,EAAE,aAAa,EAAE,CAAC;AACzC,IAAA,CAAC,WAAW,EAAE,aAAa,EAAE,CAAC;AAC9B,IAAA,CAAC,wBAAwB,EAAE,aAAa,EAAE,CAAC;AAC3C,IAAA,CAAC,sBAAsB,EAAE,aAAa,EAAE,CAAC;AAC1C,CAAA;AAED;AACM,SAAU,8BAA8B,CAAC,IAAwB,EAAA;IACrE,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IACtC,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,KAAK,0BAA0B,CAAC,KAAK,CAAC,CAAC;AACrG;;;;"}
@@ -1,4 +1,4 @@
1
- import { FixedSizeDecoder, ReadonlyUint8Array } from '@solana/codecs';
1
+ import { FixedSizeDecoder, ReadonlyUint8Array } from '@solana/kit';
2
2
  export interface BondTermAccount {
3
3
  anchorDiscriminator: ReadonlyUint8Array;
4
4
  controlVariable: bigint;