@ape.swap/bonds-sdk 7.0.0-test.2 → 7.0.0-test.4

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 (360) hide show
  1. package/README.md +18 -27
  2. package/dist/adapters/aptos/index.js +10 -10
  3. package/dist/adapters/aptos/index.js.map +1 -1
  4. package/dist/adapters/aptos/{AptosAccountBridge.js → state/AptosAccountBridge.js} +1 -1
  5. package/dist/adapters/aptos/state/AptosAccountBridge.js.map +1 -0
  6. package/dist/adapters/aptos/{fetchBondsDataAptos.d.ts → state/fetchBondsDataAptos.d.ts} +2 -2
  7. package/dist/adapters/aptos/{fetchBondsDataAptos.js → state/fetchBondsDataAptos.js} +3 -3
  8. package/dist/adapters/aptos/state/fetchBondsDataAptos.js.map +1 -0
  9. package/dist/adapters/aptos/{fetchUsersBondsAptos.d.ts → state/fetchUsersBondsAptos.d.ts} +2 -2
  10. package/dist/adapters/aptos/{fetchUsersBondsAptos.js → state/fetchUsersBondsAptos.js} +4 -4
  11. package/dist/adapters/aptos/state/fetchUsersBondsAptos.js.map +1 -0
  12. package/dist/adapters/aptos/{useAPTAccount.js → state/useAPTAccount.js} +2 -2
  13. package/dist/adapters/aptos/state/useAPTAccount.js.map +1 -0
  14. package/dist/adapters/aptos/{useAptosZapQuote.d.ts → state/useAptosZapQuote.d.ts} +2 -2
  15. package/dist/adapters/aptos/{useAptosZapQuote.js → state/useAptosZapQuote.js} +4 -4
  16. package/dist/adapters/aptos/state/useAptosZapQuote.js.map +1 -0
  17. package/dist/adapters/aptos/{useCurrencyBalanceAptos.js → state/useCurrencyBalanceAptos.js} +2 -2
  18. package/dist/adapters/aptos/state/useCurrencyBalanceAptos.js.map +1 -0
  19. package/dist/adapters/aptos/{aptosHelpers.d.ts → utils/aptosHelpers.d.ts} +1 -1
  20. package/dist/adapters/aptos/{aptosHelpers.js → utils/aptosHelpers.js} +1 -1
  21. package/dist/adapters/aptos/utils/aptosHelpers.js.map +1 -0
  22. package/dist/adapters/aptos/{ActionsAptos.d.ts → views/ActionsAptos.d.ts} +1 -1
  23. package/dist/adapters/aptos/{ActionsAptos.js → views/ActionsAptos.js} +11 -11
  24. package/dist/adapters/aptos/views/ActionsAptos.js.map +1 -0
  25. package/dist/adapters/aptos/{BuyComponentAptos.js → views/BuyComponentAptos.js} +33 -33
  26. package/dist/adapters/aptos/views/BuyComponentAptos.js.map +1 -0
  27. package/dist/adapters/aptos/{ClaimAllActionAptos.d.ts → views/ClaimAllActionAptos.d.ts} +1 -1
  28. package/dist/adapters/aptos/{ClaimAllActionAptos.js → views/ClaimAllActionAptos.js} +10 -10
  29. package/dist/adapters/aptos/views/ClaimAllActionAptos.js.map +1 -0
  30. package/dist/adapters/aptos/{ConnectAptosWalletButton.js → views/ConnectAptosWalletButton.js} +4 -4
  31. package/dist/adapters/aptos/views/ConnectAptosWalletButton.js.map +1 -0
  32. package/dist/adapters/aptos/{ConnectToAptosBanner.js → views/ConnectToAptosBanner.js} +6 -6
  33. package/dist/adapters/aptos/views/ConnectToAptosBanner.js.map +1 -0
  34. package/dist/adapters/aptos/{TransferActionAptos.d.ts → views/TransferActionAptos.d.ts} +1 -1
  35. package/dist/adapters/aptos/{TransferActionAptos.js → views/TransferActionAptos.js} +1 -1
  36. package/dist/adapters/aptos/views/TransferActionAptos.js.map +1 -0
  37. package/dist/adapters/aptos/{UserBondRowAptos.d.ts → views/UserBondRowAptos.d.ts} +1 -1
  38. package/dist/adapters/aptos/{UserBondRowAptos.js → views/UserBondRowAptos.js} +22 -22
  39. package/dist/adapters/aptos/views/UserBondRowAptos.js.map +1 -0
  40. package/dist/adapters/evm/index.js +16 -16
  41. package/dist/adapters/evm/index.js.map +1 -1
  42. package/dist/adapters/evm/{EvmAccountBridge.js → state/EvmAccountBridge.js} +1 -1
  43. package/dist/adapters/evm/state/EvmAccountBridge.js.map +1 -0
  44. package/dist/adapters/evm/{balances.d.ts → state/balances.d.ts} +1 -1
  45. package/dist/adapters/evm/{balances.js → state/balances.js} +5 -5
  46. package/dist/adapters/evm/state/balances.js.map +1 -0
  47. package/dist/adapters/evm/{fetchBondsDataEVM.d.ts → state/fetchBondsDataEVM.d.ts} +2 -2
  48. package/dist/adapters/evm/{fetchBondsDataEVM.js → state/fetchBondsDataEVM.js} +8 -8
  49. package/dist/adapters/evm/state/fetchBondsDataEVM.js.map +1 -0
  50. package/dist/adapters/evm/{fetchUsersBondsEVM.d.ts → state/fetchUsersBondsEVM.d.ts} +2 -2
  51. package/dist/adapters/evm/{fetchUsersBondsEVM.js → state/fetchUsersBondsEVM.js} +4 -4
  52. package/dist/adapters/evm/state/fetchUsersBondsEVM.js.map +1 -0
  53. package/dist/adapters/evm/{getTierPoints.d.ts → state/getTierPoints.d.ts} +1 -1
  54. package/dist/adapters/evm/{getTierPoints.js → state/getTierPoints.js} +5 -5
  55. package/dist/adapters/evm/state/getTierPoints.js.map +1 -0
  56. package/dist/adapters/evm/{preTGE → state/preTGE}/fetchBondsDataPreTGE.d.ts +2 -2
  57. package/dist/adapters/evm/{preTGE → state/preTGE}/fetchBondsDataPreTGE.js +5 -5
  58. package/dist/adapters/evm/state/preTGE/fetchBondsDataPreTGE.js.map +1 -0
  59. package/dist/adapters/evm/{preTGE → state/preTGE}/fetchUserBondsPreTGE.d.ts +2 -2
  60. package/dist/adapters/evm/{preTGE → state/preTGE}/fetchUserBondsPreTGE.js +5 -5
  61. package/dist/adapters/evm/state/preTGE/fetchUserBondsPreTGE.js.map +1 -0
  62. package/dist/adapters/evm/{useAllowance.js → state/useAllowance.js} +9 -9
  63. package/dist/adapters/evm/state/useAllowance.js.map +1 -0
  64. package/dist/adapters/evm/{useEVMAccount.js → state/useEVMAccount.js} +1 -1
  65. package/dist/adapters/evm/state/useEVMAccount.js.map +1 -0
  66. package/dist/adapters/evm/{useMonitorTx.js → state/useMonitorTx.js} +1 -1
  67. package/dist/adapters/evm/state/useMonitorTx.js.map +1 -0
  68. package/dist/adapters/evm/{useSoulZapBondQuote.d.ts → state/useSoulZapBondQuote.d.ts} +1 -1
  69. package/dist/adapters/evm/{useSoulZapBondQuote.js → state/useSoulZapBondQuote.js} +9 -9
  70. package/dist/adapters/evm/state/useSoulZapBondQuote.js.map +1 -0
  71. package/dist/adapters/evm/{useTierProofSignature.js → state/useTierProofSignature.js} +4 -4
  72. package/dist/adapters/evm/state/useTierProofSignature.js.map +1 -0
  73. package/dist/adapters/evm/{multicall.js → utils/multicall.js} +3 -3
  74. package/dist/adapters/evm/utils/multicall.js.map +1 -0
  75. package/dist/adapters/evm/{Actions.d.ts → views/Actions.d.ts} +1 -1
  76. package/dist/adapters/evm/{Actions.js → views/Actions.js} +18 -18
  77. package/dist/adapters/evm/views/Actions.js.map +1 -0
  78. package/dist/adapters/evm/{BuyComponent.d.ts → views/BuyComponent.d.ts} +1 -1
  79. package/dist/adapters/evm/{BuyComponent.js → views/BuyComponent.js} +48 -48
  80. package/dist/adapters/evm/views/BuyComponent.js.map +1 -0
  81. package/dist/adapters/evm/{ClaimAllActionEVM.d.ts → views/ClaimAllActionEVM.d.ts} +1 -1
  82. package/dist/adapters/evm/{ClaimAllActionEVM.js → views/ClaimAllActionEVM.js} +9 -9
  83. package/dist/adapters/evm/views/ClaimAllActionEVM.js.map +1 -0
  84. package/dist/adapters/evm/{ConnectToEvmBanner.js → views/ConnectToEvmBanner.js} +4 -4
  85. package/dist/adapters/evm/views/ConnectToEvmBanner.js.map +1 -0
  86. package/dist/adapters/evm/{TransactionModal.d.ts → views/TransactionModal.d.ts} +2 -2
  87. package/dist/adapters/evm/{TransactionModal.js → views/TransactionModal.js} +21 -21
  88. package/dist/adapters/evm/views/TransactionModal.js.map +1 -0
  89. package/dist/adapters/evm/{TransferAction.d.ts → views/TransferAction.d.ts} +1 -1
  90. package/dist/adapters/evm/{TransferAction.js → views/TransferAction.js} +8 -8
  91. package/dist/adapters/evm/views/TransferAction.js.map +1 -0
  92. package/dist/adapters/evm/{UserBondRow.d.ts → views/UserBondRow.d.ts} +1 -1
  93. package/dist/adapters/evm/{UserBondRow.js → views/UserBondRow.js} +27 -27
  94. package/dist/adapters/evm/views/UserBondRow.js.map +1 -0
  95. package/dist/adapters/evm/{preTGE → views/preTGE}/BuyComponentPreTGE.js +26 -26
  96. package/dist/adapters/evm/views/preTGE/BuyComponentPreTGE.js.map +1 -0
  97. package/dist/adapters/evm/{preTGE → views/preTGE}/ModalHandlerPreTGE.js +3 -3
  98. package/dist/adapters/evm/views/preTGE/ModalHandlerPreTGE.js.map +1 -0
  99. package/dist/adapters/evm/{preTGE → views/preTGE}/PreTGEActions.d.ts +1 -1
  100. package/dist/adapters/evm/{preTGE → views/preTGE}/PreTGEActions.js +9 -9
  101. package/dist/adapters/evm/views/preTGE/PreTGEActions.js.map +1 -0
  102. package/dist/adapters/evm/{preTGE → views/preTGE}/UserBondRowPreTGE.d.ts +1 -1
  103. package/dist/adapters/evm/{preTGE → views/preTGE}/UserBondRowPreTGE.js +9 -9
  104. package/dist/adapters/evm/views/preTGE/UserBondRowPreTGE.js.map +1 -0
  105. package/dist/adapters/evm/{preTGE → views/preTGE}/UserBondRowYield.d.ts +1 -1
  106. package/dist/adapters/evm/{preTGE → views/preTGE}/UserBondRowYield.js +10 -10
  107. package/dist/adapters/evm/views/preTGE/UserBondRowYield.js.map +1 -0
  108. package/dist/adapters/evm/{preTGE → views/preTGE}/YourBondsModalYield/YourBondsModalYield.d.ts +1 -1
  109. package/dist/adapters/evm/{preTGE → views/preTGE}/YourBondsModalYield/YourBondsModalYield.js +22 -22
  110. package/dist/adapters/evm/views/preTGE/YourBondsModalYield/YourBondsModalYield.js.map +1 -0
  111. package/dist/adapters/evm/{preTGE → views/preTGE}/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.d.ts +1 -1
  112. package/dist/adapters/evm/{preTGE → views/preTGE}/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.js +10 -10
  113. package/dist/adapters/evm/views/preTGE/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.js.map +1 -0
  114. package/dist/adapters/evm/{preTGE → views/preTGE}/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.d.ts +1 -1
  115. package/dist/adapters/evm/{preTGE → views/preTGE}/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.js +5 -5
  116. package/dist/adapters/evm/views/preTGE/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.js.map +1 -0
  117. package/dist/adapters/lifi/index.js +1 -1
  118. package/dist/adapters/lifi/index.js.map +1 -1
  119. package/dist/adapters/lifi/{LifiModal.d.ts → views/LifiModal.d.ts} +1 -1
  120. package/dist/adapters/lifi/{LifiModal.js → views/LifiModal.js} +5 -5
  121. package/dist/adapters/lifi/views/LifiModal.js.map +1 -0
  122. package/dist/adapters/lifi/views/LifiWidgetContent.js.map +1 -0
  123. package/dist/adapters/solana/{solanaConstants.js → constants/solanaConstants.js} +1 -1
  124. package/dist/adapters/solana/constants/solanaConstants.js.map +1 -0
  125. package/dist/adapters/solana/index.d.ts +1 -1
  126. package/dist/adapters/solana/index.js +10 -10
  127. package/dist/adapters/solana/index.js.map +1 -1
  128. package/dist/adapters/solana/{SolanaAccountBridge.js → state/SolanaAccountBridge.js} +1 -1
  129. package/dist/adapters/solana/state/SolanaAccountBridge.js.map +1 -0
  130. package/dist/adapters/solana/{fetchBondsDataSOL.d.ts → state/fetchBondsDataSOL.d.ts} +2 -2
  131. package/dist/adapters/solana/{fetchBondsDataSOL.js → state/fetchBondsDataSOL.js} +8 -8
  132. package/dist/adapters/solana/state/fetchBondsDataSOL.js.map +1 -0
  133. package/dist/adapters/solana/{fetchUsersBondsSOL.d.ts → state/fetchUsersBondsSOL.d.ts} +2 -2
  134. package/dist/adapters/solana/{fetchUsersBondsSOL.js → state/fetchUsersBondsSOL.js} +5 -5
  135. package/dist/adapters/solana/state/fetchUsersBondsSOL.js.map +1 -0
  136. package/dist/adapters/solana/{useCurrencyBalanceSolana.js → state/useCurrencyBalanceSolana.js} +3 -3
  137. package/dist/adapters/solana/state/useCurrencyBalanceSolana.js.map +1 -0
  138. package/dist/adapters/solana/{useJupiterSolanaQuote.d.ts → state/useJupiterSolanaQuote.d.ts} +1 -1
  139. package/dist/adapters/solana/{useJupiterSolanaQuote.js → state/useJupiterSolanaQuote.js} +3 -3
  140. package/dist/adapters/solana/state/useJupiterSolanaQuote.js.map +1 -0
  141. package/dist/adapters/solana/{useSOLAccount.js → state/useSOLAccount.js} +1 -1
  142. package/dist/adapters/solana/state/useSOLAccount.js.map +1 -0
  143. package/dist/adapters/solana/{calculateSolanaTrueBillPrice.js → utils/calculateSolanaTrueBillPrice.js} +1 -1
  144. package/dist/adapters/solana/utils/calculateSolanaTrueBillPrice.js.map +1 -0
  145. package/dist/adapters/solana/{codecs → utils/codecs}/bondCodec.js +1 -1
  146. package/dist/adapters/solana/utils/codecs/bondCodec.js.map +1 -0
  147. package/dist/adapters/solana/{codecs → utils/codecs}/bondIssuanceCodec.js +1 -1
  148. package/dist/adapters/solana/utils/codecs/bondIssuanceCodec.js.map +1 -0
  149. package/dist/adapters/solana/{codecs → utils/codecs}/bondPricingCodec.js +1 -1
  150. package/dist/adapters/solana/utils/codecs/bondPricingCodec.js.map +1 -0
  151. package/dist/adapters/solana/{codecs → utils/codecs}/bondTermCodec.js +1 -1
  152. package/dist/adapters/solana/utils/codecs/bondTermCodec.js.map +1 -0
  153. package/dist/adapters/solana/utils/derivePda.js.map +1 -0
  154. package/dist/adapters/solana/utils/getSolanaAccount.js.map +1 -0
  155. package/dist/adapters/solana/utils/polyfills.js.map +1 -0
  156. package/dist/adapters/solana/utils/solanaAtaHelper.js.map +1 -0
  157. package/dist/adapters/solana/utils/solanaMulticall.js.map +1 -0
  158. package/dist/adapters/solana/{solanaRpc.js → utils/solanaRpc.js} +1 -1
  159. package/dist/adapters/solana/utils/solanaRpc.js.map +1 -0
  160. package/dist/adapters/solana/{ActionsSolana.d.ts → views/ActionsSolana.d.ts} +1 -1
  161. package/dist/adapters/solana/{ActionsSolana.js → views/ActionsSolana.js} +13 -13
  162. package/dist/adapters/solana/views/ActionsSolana.js.map +1 -0
  163. package/dist/adapters/solana/{BuyComponentSolana.js → views/BuyComponentSolana.js} +41 -41
  164. package/dist/adapters/solana/views/BuyComponentSolana.js.map +1 -0
  165. package/dist/adapters/solana/{ConnectSolanaWalletButton.js → views/ConnectSolanaWalletButton.js} +4 -4
  166. package/dist/adapters/solana/views/ConnectSolanaWalletButton.js.map +1 -0
  167. package/dist/adapters/solana/{ConnectToSolanaBanner.js → views/ConnectToSolanaBanner.js} +5 -5
  168. package/dist/adapters/solana/views/ConnectToSolanaBanner.js.map +1 -0
  169. package/dist/adapters/solana/{TransferActionSolana.d.ts → views/TransferActionSolana.d.ts} +1 -1
  170. package/dist/adapters/solana/{TransferActionSolana.js → views/TransferActionSolana.js} +6 -6
  171. package/dist/adapters/solana/views/TransferActionSolana.js.map +1 -0
  172. package/dist/adapters/solana/{UserBondRowSolana.d.ts → views/UserBondRowSolana.d.ts} +1 -1
  173. package/dist/adapters/solana/{UserBondRowSolana.js → views/UserBondRowSolana.js} +23 -23
  174. package/dist/adapters/solana/views/UserBondRowSolana.js.map +1 -0
  175. package/dist/adapters/sui/constants/suiConstants.js.map +1 -0
  176. package/dist/adapters/sui/constants/suiZapTokens.js.map +1 -0
  177. package/dist/adapters/sui/index.js +10 -10
  178. package/dist/adapters/sui/index.js.map +1 -1
  179. package/dist/adapters/sui/{SuiAccountBridge.js → state/SuiAccountBridge.js} +1 -1
  180. package/dist/adapters/sui/state/SuiAccountBridge.js.map +1 -0
  181. package/dist/adapters/sui/{fetchBondsDataSui.d.ts → state/fetchBondsDataSui.d.ts} +2 -2
  182. package/dist/adapters/sui/{fetchBondsDataSui.js → state/fetchBondsDataSui.js} +3 -3
  183. package/dist/adapters/sui/state/fetchBondsDataSui.js.map +1 -0
  184. package/dist/adapters/sui/{fetchUsersBondsSUI.d.ts → state/fetchUsersBondsSUI.d.ts} +2 -2
  185. package/dist/adapters/sui/{fetchUsersBondsSUI.js → state/fetchUsersBondsSUI.js} +4 -4
  186. package/dist/adapters/sui/state/fetchUsersBondsSUI.js.map +1 -0
  187. package/dist/adapters/sui/{useCurrencyBalanceSui.js → state/useCurrencyBalanceSui.js} +2 -2
  188. package/dist/adapters/sui/state/useCurrencyBalanceSui.js.map +1 -0
  189. package/dist/adapters/sui/{useSUIAccount.js → state/useSUIAccount.js} +1 -1
  190. package/dist/adapters/sui/state/useSUIAccount.js.map +1 -0
  191. package/dist/adapters/sui/{useSuiZapQuote.d.ts → state/useSuiZapQuote.d.ts} +1 -1
  192. package/dist/adapters/sui/{useSuiZapQuote.js → state/useSuiZapQuote.js} +5 -5
  193. package/dist/adapters/sui/state/useSuiZapQuote.js.map +1 -0
  194. package/dist/adapters/sui/{suiHelpers.js → utils/suiHelpers.js} +1 -1
  195. package/dist/adapters/sui/utils/suiHelpers.js.map +1 -0
  196. package/dist/adapters/sui/{ActionsSui.d.ts → views/ActionsSui.d.ts} +1 -1
  197. package/dist/adapters/sui/{ActionsSui.js → views/ActionsSui.js} +11 -11
  198. package/dist/adapters/sui/views/ActionsSui.js.map +1 -0
  199. package/dist/adapters/sui/{BuyComponentSui.js → views/BuyComponentSui.js} +34 -34
  200. package/dist/adapters/sui/views/BuyComponentSui.js.map +1 -0
  201. package/dist/adapters/sui/{ClaimAllActionSui.d.ts → views/ClaimAllActionSui.d.ts} +1 -1
  202. package/dist/adapters/sui/{ClaimAllActionSui.js → views/ClaimAllActionSui.js} +10 -10
  203. package/dist/adapters/sui/views/ClaimAllActionSui.js.map +1 -0
  204. package/dist/adapters/sui/{ConnectToSuiBanner.js → views/ConnectToSuiBanner.js} +6 -6
  205. package/dist/adapters/sui/views/ConnectToSuiBanner.js.map +1 -0
  206. package/dist/adapters/sui/{TransferActionSui.d.ts → views/TransferActionSui.d.ts} +1 -1
  207. package/dist/adapters/sui/{TransferActionSui.js → views/TransferActionSui.js} +7 -7
  208. package/dist/adapters/sui/views/TransferActionSui.js.map +1 -0
  209. package/dist/adapters/sui/{UserBondRowSui.d.ts → views/UserBondRowSui.d.ts} +1 -1
  210. package/dist/adapters/sui/{UserBondRowSui.js → views/UserBondRowSui.js} +22 -22
  211. package/dist/adapters/sui/views/UserBondRowSui.js.map +1 -0
  212. package/dist/components/NetworkFilter/index.js.map +1 -1
  213. package/dist/components/Toast/index.js +1 -1
  214. package/dist/components/Toast/index.js.map +1 -1
  215. package/dist/main.d.ts +1 -1
  216. package/dist/main.js +1 -1
  217. package/dist/main.js.map +1 -1
  218. package/dist/state/bonds/useBondsData.js.map +1 -1
  219. package/dist/styles.css +1 -1
  220. package/package.json +3 -7
  221. package/dist/adapters/all/index.d.ts +0 -13
  222. package/dist/adapters/all/index.js +0 -15
  223. package/dist/adapters/all/index.js.map +0 -1
  224. package/dist/adapters/aptos/ActionsAptos.js.map +0 -1
  225. package/dist/adapters/aptos/AptosAccountBridge.js.map +0 -1
  226. package/dist/adapters/aptos/BuyComponentAptos.js.map +0 -1
  227. package/dist/adapters/aptos/ClaimAllActionAptos.js.map +0 -1
  228. package/dist/adapters/aptos/ConnectAptosWalletButton.js.map +0 -1
  229. package/dist/adapters/aptos/ConnectToAptosBanner.js.map +0 -1
  230. package/dist/adapters/aptos/TransferActionAptos.js.map +0 -1
  231. package/dist/adapters/aptos/UserBondRowAptos.js.map +0 -1
  232. package/dist/adapters/aptos/aptosHelpers.js.map +0 -1
  233. package/dist/adapters/aptos/fetchBondsDataAptos.js.map +0 -1
  234. package/dist/adapters/aptos/fetchUsersBondsAptos.js.map +0 -1
  235. package/dist/adapters/aptos/useAPTAccount.js.map +0 -1
  236. package/dist/adapters/aptos/useAptosZapQuote.js.map +0 -1
  237. package/dist/adapters/aptos/useCurrencyBalanceAptos.js.map +0 -1
  238. package/dist/adapters/evm/Actions.js.map +0 -1
  239. package/dist/adapters/evm/BuyComponent.js.map +0 -1
  240. package/dist/adapters/evm/ClaimAllActionEVM.js.map +0 -1
  241. package/dist/adapters/evm/ConnectToEvmBanner.js.map +0 -1
  242. package/dist/adapters/evm/EvmAccountBridge.js.map +0 -1
  243. package/dist/adapters/evm/TransactionModal.js.map +0 -1
  244. package/dist/adapters/evm/TransferAction.js.map +0 -1
  245. package/dist/adapters/evm/UserBondRow.js.map +0 -1
  246. package/dist/adapters/evm/balances.js.map +0 -1
  247. package/dist/adapters/evm/fetchBondsDataEVM.js.map +0 -1
  248. package/dist/adapters/evm/fetchUsersBondsEVM.js.map +0 -1
  249. package/dist/adapters/evm/getTierPoints.js.map +0 -1
  250. package/dist/adapters/evm/multicall.js.map +0 -1
  251. package/dist/adapters/evm/preTGE/BuyComponentPreTGE.js.map +0 -1
  252. package/dist/adapters/evm/preTGE/ModalHandlerPreTGE.js.map +0 -1
  253. package/dist/adapters/evm/preTGE/PreTGEActions.js.map +0 -1
  254. package/dist/adapters/evm/preTGE/UserBondRowPreTGE.js.map +0 -1
  255. package/dist/adapters/evm/preTGE/UserBondRowYield.js.map +0 -1
  256. package/dist/adapters/evm/preTGE/YourBondsModalYield/YourBondsModalYield.js.map +0 -1
  257. package/dist/adapters/evm/preTGE/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.js.map +0 -1
  258. package/dist/adapters/evm/preTGE/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.js.map +0 -1
  259. package/dist/adapters/evm/preTGE/fetchBondsDataPreTGE.js.map +0 -1
  260. package/dist/adapters/evm/preTGE/fetchUserBondsPreTGE.js.map +0 -1
  261. package/dist/adapters/evm/useAllowance.js.map +0 -1
  262. package/dist/adapters/evm/useEVMAccount.js.map +0 -1
  263. package/dist/adapters/evm/useMonitorTx.js.map +0 -1
  264. package/dist/adapters/evm/useSoulZapBondQuote.js.map +0 -1
  265. package/dist/adapters/evm/useTierProofSignature.js.map +0 -1
  266. package/dist/adapters/lifi/LifiModal.js.map +0 -1
  267. package/dist/adapters/lifi/LifiWidgetContent.js.map +0 -1
  268. package/dist/adapters/solana/ActionsSolana.js.map +0 -1
  269. package/dist/adapters/solana/BuyComponentSolana.js.map +0 -1
  270. package/dist/adapters/solana/ConnectSolanaWalletButton.js.map +0 -1
  271. package/dist/adapters/solana/ConnectToSolanaBanner.js.map +0 -1
  272. package/dist/adapters/solana/SolanaAccountBridge.js.map +0 -1
  273. package/dist/adapters/solana/TransferActionSolana.js.map +0 -1
  274. package/dist/adapters/solana/UserBondRowSolana.js.map +0 -1
  275. package/dist/adapters/solana/calculateSolanaTrueBillPrice.js.map +0 -1
  276. package/dist/adapters/solana/codecs/bondCodec.js.map +0 -1
  277. package/dist/adapters/solana/codecs/bondIssuanceCodec.js.map +0 -1
  278. package/dist/adapters/solana/codecs/bondPricingCodec.js.map +0 -1
  279. package/dist/adapters/solana/codecs/bondTermCodec.js.map +0 -1
  280. package/dist/adapters/solana/derivePda.js.map +0 -1
  281. package/dist/adapters/solana/fetchBondsDataSOL.js.map +0 -1
  282. package/dist/adapters/solana/fetchUsersBondsSOL.js.map +0 -1
  283. package/dist/adapters/solana/getSolanaAccount.js.map +0 -1
  284. package/dist/adapters/solana/polyfills.js.map +0 -1
  285. package/dist/adapters/solana/solanaAtaHelper.js.map +0 -1
  286. package/dist/adapters/solana/solanaConstants.js.map +0 -1
  287. package/dist/adapters/solana/solanaMulticall.js.map +0 -1
  288. package/dist/adapters/solana/solanaRpc.js.map +0 -1
  289. package/dist/adapters/solana/useCurrencyBalanceSolana.js.map +0 -1
  290. package/dist/adapters/solana/useJupiterSolanaQuote.js.map +0 -1
  291. package/dist/adapters/solana/useSOLAccount.js.map +0 -1
  292. package/dist/adapters/sui/ActionsSui.js.map +0 -1
  293. package/dist/adapters/sui/BuyComponentSui.js.map +0 -1
  294. package/dist/adapters/sui/ClaimAllActionSui.js.map +0 -1
  295. package/dist/adapters/sui/ConnectToSuiBanner.js.map +0 -1
  296. package/dist/adapters/sui/SuiAccountBridge.js.map +0 -1
  297. package/dist/adapters/sui/TransferActionSui.js.map +0 -1
  298. package/dist/adapters/sui/UserBondRowSui.js.map +0 -1
  299. package/dist/adapters/sui/fetchBondsDataSui.js.map +0 -1
  300. package/dist/adapters/sui/fetchUsersBondsSUI.js.map +0 -1
  301. package/dist/adapters/sui/suiConstants.js.map +0 -1
  302. package/dist/adapters/sui/suiHelpers.js.map +0 -1
  303. package/dist/adapters/sui/suiZapTokens.js.map +0 -1
  304. package/dist/adapters/sui/useCurrencyBalanceSui.js.map +0 -1
  305. package/dist/adapters/sui/useSUIAccount.js.map +0 -1
  306. package/dist/adapters/sui/useSuiZapQuote.js.map +0 -1
  307. /package/dist/adapters/aptos/{AptosAccountBridge.d.ts → state/AptosAccountBridge.d.ts} +0 -0
  308. /package/dist/adapters/aptos/{useAPTAccount.d.ts → state/useAPTAccount.d.ts} +0 -0
  309. /package/dist/adapters/aptos/{useCurrencyBalanceAptos.d.ts → state/useCurrencyBalanceAptos.d.ts} +0 -0
  310. /package/dist/adapters/aptos/{aptosBonds.d.ts → types/aptosBonds.d.ts} +0 -0
  311. /package/dist/adapters/aptos/{BuyComponentAptos.d.ts → views/BuyComponentAptos.d.ts} +0 -0
  312. /package/dist/adapters/aptos/{ConnectAptosWalletButton.d.ts → views/ConnectAptosWalletButton.d.ts} +0 -0
  313. /package/dist/adapters/aptos/{ConnectToAptosBanner.d.ts → views/ConnectToAptosBanner.d.ts} +0 -0
  314. /package/dist/adapters/evm/{EvmAccountBridge.d.ts → state/EvmAccountBridge.d.ts} +0 -0
  315. /package/dist/adapters/evm/{useAllowance.d.ts → state/useAllowance.d.ts} +0 -0
  316. /package/dist/adapters/evm/{useEVMAccount.d.ts → state/useEVMAccount.d.ts} +0 -0
  317. /package/dist/adapters/evm/{useMonitorTx.d.ts → state/useMonitorTx.d.ts} +0 -0
  318. /package/dist/adapters/evm/{useTierProofSignature.d.ts → state/useTierProofSignature.d.ts} +0 -0
  319. /package/dist/adapters/evm/{multicall.d.ts → utils/multicall.d.ts} +0 -0
  320. /package/dist/adapters/evm/{ConnectToEvmBanner.d.ts → views/ConnectToEvmBanner.d.ts} +0 -0
  321. /package/dist/adapters/evm/{preTGE → views/preTGE}/BuyComponentPreTGE.d.ts +0 -0
  322. /package/dist/adapters/evm/{preTGE → views/preTGE}/ModalHandlerPreTGE.d.ts +0 -0
  323. /package/dist/adapters/lifi/{LifiWidgetContent.d.ts → views/LifiWidgetContent.d.ts} +0 -0
  324. /package/dist/adapters/lifi/{LifiWidgetContent.js → views/LifiWidgetContent.js} +0 -0
  325. /package/dist/adapters/solana/{solanaConstants.d.ts → constants/solanaConstants.d.ts} +0 -0
  326. /package/dist/adapters/solana/{SolanaAccountBridge.d.ts → state/SolanaAccountBridge.d.ts} +0 -0
  327. /package/dist/adapters/solana/{useCurrencyBalanceSolana.d.ts → state/useCurrencyBalanceSolana.d.ts} +0 -0
  328. /package/dist/adapters/solana/{useSOLAccount.d.ts → state/useSOLAccount.d.ts} +0 -0
  329. /package/dist/adapters/solana/{helius.d.ts → types/helius.d.ts} +0 -0
  330. /package/dist/adapters/solana/{solanaBonds.d.ts → types/solanaBonds.d.ts} +0 -0
  331. /package/dist/adapters/solana/{calculateSolanaTrueBillPrice.d.ts → utils/calculateSolanaTrueBillPrice.d.ts} +0 -0
  332. /package/dist/adapters/solana/{codecs → utils/codecs}/bondCodec.d.ts +0 -0
  333. /package/dist/adapters/solana/{codecs → utils/codecs}/bondIssuanceCodec.d.ts +0 -0
  334. /package/dist/adapters/solana/{codecs → utils/codecs}/bondPricingCodec.d.ts +0 -0
  335. /package/dist/adapters/solana/{codecs → utils/codecs}/bondTermCodec.d.ts +0 -0
  336. /package/dist/adapters/solana/{codecs → utils/codecs}/index.d.ts +0 -0
  337. /package/dist/adapters/solana/{derivePda.d.ts → utils/derivePda.d.ts} +0 -0
  338. /package/dist/adapters/solana/{derivePda.js → utils/derivePda.js} +0 -0
  339. /package/dist/adapters/solana/{getSolanaAccount.d.ts → utils/getSolanaAccount.d.ts} +0 -0
  340. /package/dist/adapters/solana/{getSolanaAccount.js → utils/getSolanaAccount.js} +0 -0
  341. /package/dist/adapters/solana/{polyfills.d.ts → utils/polyfills.d.ts} +0 -0
  342. /package/dist/adapters/solana/{polyfills.js → utils/polyfills.js} +0 -0
  343. /package/dist/adapters/solana/{solanaAtaHelper.d.ts → utils/solanaAtaHelper.d.ts} +0 -0
  344. /package/dist/adapters/solana/{solanaAtaHelper.js → utils/solanaAtaHelper.js} +0 -0
  345. /package/dist/adapters/solana/{solanaMulticall.d.ts → utils/solanaMulticall.d.ts} +0 -0
  346. /package/dist/adapters/solana/{solanaMulticall.js → utils/solanaMulticall.js} +0 -0
  347. /package/dist/adapters/solana/{solanaRpc.d.ts → utils/solanaRpc.d.ts} +0 -0
  348. /package/dist/adapters/solana/{BuyComponentSolana.d.ts → views/BuyComponentSolana.d.ts} +0 -0
  349. /package/dist/adapters/solana/{ConnectSolanaWalletButton.d.ts → views/ConnectSolanaWalletButton.d.ts} +0 -0
  350. /package/dist/adapters/solana/{ConnectToSolanaBanner.d.ts → views/ConnectToSolanaBanner.d.ts} +0 -0
  351. /package/dist/adapters/sui/{suiConstants.d.ts → constants/suiConstants.d.ts} +0 -0
  352. /package/dist/adapters/sui/{suiConstants.js → constants/suiConstants.js} +0 -0
  353. /package/dist/adapters/sui/{suiZapTokens.d.ts → constants/suiZapTokens.d.ts} +0 -0
  354. /package/dist/adapters/sui/{suiZapTokens.js → constants/suiZapTokens.js} +0 -0
  355. /package/dist/adapters/sui/{SuiAccountBridge.d.ts → state/SuiAccountBridge.d.ts} +0 -0
  356. /package/dist/adapters/sui/{useCurrencyBalanceSui.d.ts → state/useCurrencyBalanceSui.d.ts} +0 -0
  357. /package/dist/adapters/sui/{useSUIAccount.d.ts → state/useSUIAccount.d.ts} +0 -0
  358. /package/dist/adapters/sui/{suiHelpers.d.ts → utils/suiHelpers.d.ts} +0 -0
  359. /package/dist/adapters/sui/{BuyComponentSui.d.ts → views/BuyComponentSui.d.ts} +0 -0
  360. /package/dist/adapters/sui/{ConnectToSuiBanner.d.ts → views/ConnectToSuiBanner.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClaimAllActionSui.js","sources":["../../../../src/adapters/sui/views/ClaimAllActionSui.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport { Transaction } from '@mysten/sui/transactions'\nimport Button from '../../../components/uikit-sdk/Button/Button'\nimport Text from '../../../components/uikit-sdk/Text'\nimport useUserBonds from '../../../state/bonds/useUserBonds'\nimport { usePopups } from '../../../state/popups/usePopups'\nimport { useSDKConfig } from '../../../state/useSDKConfig'\nimport track from '../../../utils/track'\nimport { reportError } from '../../../utils/reportError'\nimport type { ClaimAllActionProps } from '../../types'\nimport useSUIAccount from '../state/useSUIAccount'\nimport { SUI_CLAIM_FUNCTION } from '../constants/suiConstants'\nimport { getSuiClient, verifySuiTxSuccess } from '../utils/suiHelpers'\n\n/** Claim All for Sui: every claimable bill of the selected chain in a single programmable transaction. */\nconst ClaimAllActionSui: React.FC<ClaimAllActionProps> = ({ bondsToClaim }) => {\n const { address: suiAccount, signAndExecuteTransaction } = useSUIAccount()\n const SDKConfig = useSDKConfig()\n const { addToastError, addToastSuccess } = usePopups()\n const { refetch } = useUserBonds()\n const [loadingTx, setLoadingTx] = useState(false)\n\n const ownedBillsAmount = bondsToClaim.reduce((total, group) => total + (group.userOwnedBills?.length || 0), 0)\n\n const handleClaim = async () => {\n if (!suiAccount || !bondsToClaim.length || !signAndExecuteTransaction) return\n\n setLoadingTx(true)\n try {\n const allBills = bondsToClaim\n .flatMap((group) =>\n group.userOwnedBills.map((b) => ({ bill: b, market: group.bond.contractAddress[group.bond.chainId] })),\n )\n .filter(({ bill }) => bill.pendingRewards !== '0')\n\n // Build a single PTB that claims all bills in one transaction\n const tx = new Transaction()\n for (const { bill, market } of allBills) {\n if (!market || !bill.address) continue\n\n const payoutCoinType = bill.bond?.earnToken?.address?.[bill.bond?.chainId ?? 0]\n const principalCoinType = bill.bond?.lpToken?.address?.[bill.bond?.chainId ?? 0]\n if (!payoutCoinType || !principalCoinType) continue\n\n track({\n event: 'bond',\n chain: ChainId.SUI,\n data: { cat: 'claimAll', address: market, earnToken: bill.bond?.earnToken?.symbol },\n })\n\n const [claimedCoin] = tx.moveCall({\n target: SUI_CLAIM_FUNCTION,\n typeArguments: [payoutCoinType, principalCoinType],\n arguments: [\n tx.object(market),\n tx.object(bill.address), // BondNFT object ID\n tx.object('0x6'), // clock\n ],\n })\n tx.transferObjects([claimedCoin], tx.pure.address(suiAccount))\n }\n\n // Pre-build so the wallet receives fully-resolved bytes\n tx.setSender(suiAccount)\n tx.setGasBudget(50_000_000)\n const builtBytes = await tx.build({ client: getSuiClient() })\n const prebuiltTx = Transaction.from(builtBytes)\n\n const claimResponse = await signAndExecuteTransaction({ transaction: prebuiltTx })\n const claimDigest = claimResponse?.digest\n if (claimDigest) {\n await verifySuiTxSuccess(claimDigest)\n }\n\n refetch()\n addToastSuccess(claimDigest, ChainId.SUI)\n } catch (error: any) {\n console.error('Sui Claim All failed:', error)\n addToastError(error?.message ?? 'Unknown error')\n reportError({\n apiUrl: SDKConfig?.urls?.apiV2,\n error,\n extraInfo: { type: 'suiClaimAll', bondsOfSelectedChain: bondsToClaim, error },\n chainId: ChainId.SUI,\n account: suiAccount ?? '',\n })\n } finally {\n setLoadingTx(false)\n }\n }\n\n return (\n <>\n <Text size=\"14px\" weight={400} className=\"ape:mt-[15px]\">\n {`You'll claim`} {ownedBillsAmount} Bonds in 1 transaction.\n </Text>\n <Button\n className=\"ape:mt-[15px] ape:w-full\"\n onClick={handleClaim}\n disabled={!suiAccount || loadingTx || !ownedBillsAmount}\n load={loadingTx}\n >\n {!suiAccount ? 'Connect Sui Wallet' : 'Claim'}\n </Button>\n </>\n )\n}\n\nexport default ClaimAllActionSui\n"],"names":["_jsxs","_Fragment","_jsx"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
- import { useSDKConfig } from '../../state/useSDKConfig.js';
3
- import { openSuiWalletConnector } 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
- import SUI from '../../components/uikit-sdk/Svg/tokens/SUI.js';
2
+ import { useSDKConfig } from '../../../state/useSDKConfig.js';
3
+ import { openSuiWalletConnector } 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
+ import SUI from '../../../components/uikit-sdk/Svg/tokens/SUI.js';
8
8
 
9
9
  function ConnectToSuiBanner() {
10
10
  const config = useSDKConfig();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConnectToSuiBanner.js","sources":["../../../../src/adapters/sui/views/ConnectToSuiBanner.tsx"],"sourcesContent":["import { useSDKConfig } from '../../../state/useSDKConfig'\nimport { openSuiWalletConnector } 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'\nimport SUI from '../../../components/uikit-sdk/Svg/tokens/SUI'\n\nexport default function ConnectToSuiBanner() {\n const config = useSDKConfig()\n const handleConnect = config?.openWalletConnectors?.sui ? openSuiWalletConnector : undefined\n return (\n <Flex\n className=\"ape:w-full ape:h-[75px] ape:p-[10px] ape:rounded-[10px] ape:justify-between ape:items-center ape:border-none ape:cursor-pointer ape:hover:opacity-90\"\n style={{ background: 'linear-gradient(135deg, #2B2B2B 0%, #1A1A2E 100%)' }}\n onClick={handleConnect}\n >\n <Flex className=\"ape:w-full ape:max-w-[300px] ape:gap-[10px] ape:items-center\">\n <Flex className=\"ape:min-w-[30px] ape:min-h-[30px] ape:rounded-full ape:overflow-hidden\">\n <SUI width=\"30\" />\n </Flex>\n <Flex className=\"ape:flex-col\">\n <Text size=\"15px\" className=\"ape:font-bold ape:flex ape:items-center\" style={{ lineHeight: '18.5px' }}>\n Sui\n <Text\n as=\"span\"\n size=\"10px\"\n className=\"ape:font-semibold ape:p-[4px_6px] ape:rounded-[4px] ape:ml-[6px] ape:mr-[6px]\"\n style={{ color: '#FAFAFA', background: 'rgba(250, 250, 250, 0.3)', lineHeight: '8px' }}\n >\n NEW\n </Text>\n </Text>\n <div className=\"ape:font-normal ape:text-[10px] ape:text-gray-300\">\n Connect your wallet to view your Sui 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":";;;;;;;;AAOc,SAAU,kBAAkB,GAAA;AACxC,IAAA,MAAM,MAAM,GAAG,YAAY,EAAE;AAC7B,IAAA,MAAM,aAAa,GAAG,MAAM,EAAE,oBAAoB,EAAE,GAAG,GAAG,sBAAsB,GAAG,SAAS;AAC5F,IAAA,QACEA,IAAA,CAAC,IAAI,EAAA,EACH,SAAS,EAAC,sJAAsJ,EAChK,KAAK,EAAE,EAAE,UAAU,EAAE,mDAAmD,EAAE,EAC1E,OAAO,EAAE,aAAa,EAAA,QAAA,EAAA,CAEtBA,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,8DAA8D,EAAA,QAAA,EAAA,CAC5EC,GAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,wEAAwE,EAAA,QAAA,EACtFA,GAAA,CAAC,GAAG,EAAA,EAAC,KAAK,EAAC,IAAI,EAAA,CAAG,EAAA,CACb,EACPD,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,cAAc,EAAA,QAAA,EAAA,CAC5BA,IAAA,CAAC,IAAI,EAAA,EAAC,IAAI,EAAC,MAAM,EAAC,SAAS,EAAC,yCAAyC,EAAC,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAA,QAAA,EAAA,CAAA,KAAA,EAEnGC,GAAA,CAAC,IAAI,EAAA,EACH,EAAE,EAAC,MAAM,EACT,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,+EAA+E,EACzF,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,0BAA0B,EAAE,UAAU,EAAE,KAAK,EAAE,EAAA,QAAA,EAAA,KAAA,EAAA,CAGjF,CAAA,EAAA,CACF,EACPA,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,mDAAmD,EAAA,QAAA,EAAA,6CAAA,EAAA,CAE5D,CAAA,EAAA,CACD,CAAA,EAAA,CACF,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;;;;"}
@@ -1,4 +1,4 @@
1
- import { UserBill } from '../../types/yourbonds';
1
+ import { UserBill } from '../../../types/yourbonds';
2
2
  declare const TransferActionSui: ({ userBill, toAddress, disabled, onDismiss, }: {
3
3
  userBill?: UserBill;
4
4
  toAddress?: string;
@@ -2,14 +2,14 @@ import { jsx } from 'react/jsx-runtime';
2
2
  import { useState } from 'react';
3
3
  import { Transaction } from '@mysten/sui/transactions';
4
4
  import { ChainId } from '@ape.swap/apeswap-lists';
5
- import Button from '../../components/uikit-sdk/Button/Button.js';
6
- import { usePopups } from '../../state/popups/usePopups.js';
7
- import { useSDKConfig } from '../../state/useSDKConfig.js';
8
- import { reportError } from '../../utils/reportError.js';
9
- import { getSuiClient, verifySuiTxSuccess } from './suiHelpers.js';
10
- import useSUIAccount from './useSUIAccount.js';
5
+ import Button from '../../../components/uikit-sdk/Button/Button.js';
6
+ import { usePopups } from '../../../state/popups/usePopups.js';
7
+ import { useSDKConfig } from '../../../state/useSDKConfig.js';
8
+ import { reportError } from '../../../utils/reportError.js';
9
+ import { getSuiClient, verifySuiTxSuccess } from '../utils/suiHelpers.js';
10
+ import useSUIAccount from '../state/useSUIAccount.js';
11
11
  import { useQueryClient } from '@tanstack/react-query';
12
- import { QUERY_KEYS } from '../../config/constants/queryKeys.js';
12
+ import { QUERY_KEYS } from '../../../config/constants/queryKeys.js';
13
13
 
14
14
  const TransferActionSui = ({ userBill, toAddress, disabled, onDismiss, }) => {
15
15
  // Hooks
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TransferActionSui.js","sources":["../../../../src/adapters/sui/views/TransferActionSui.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport { Transaction } from '@mysten/sui/transactions'\nimport { ChainId } from '@ape.swap/apeswap-lists'\n\nimport { UserBill } from '../../../types/yourbonds'\nimport Button from '../../../components/uikit-sdk/Button/Button'\nimport { usePopups } from '../../../state/popups/usePopups'\nimport { useSDKConfig } from '../../../state/useSDKConfig'\nimport { reportError } from '../../../utils/reportError'\nimport { getSuiClient, verifySuiTxSuccess } from '../utils/suiHelpers'\nimport useSUIAccount from '../state/useSUIAccount'\nimport { useQueryClient } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../../config/constants/queryKeys'\n\nconst TransferActionSui = ({\n userBill,\n toAddress,\n disabled,\n onDismiss,\n}: {\n userBill?: UserBill\n toAddress?: string\n disabled?: boolean\n onDismiss?: () => void\n}) => {\n // Hooks\n const SDKConfig = useSDKConfig()\n const queryClient = useQueryClient()\n const { address: suiAccount, signAndExecuteTransaction } = useSUIAccount()\n const { addToastError, addToastSuccess } = usePopups()\n\n // State\n const [loadingTx, setLoadingTx] = useState(false)\n\n const load = loadingTx\n\n const handleTransfer = async () => {\n if (loadingTx || !suiAccount || !userBill || !signAndExecuteTransaction || !toAddress) return\n\n try {\n setLoadingTx(true)\n\n // The BondNFT object ID is stored in `userBill.address`\n const nftObjectId = userBill?.address\n if (!nftObjectId) throw new Error('Missing bond NFT object ID')\n\n const tx = new Transaction()\n\n // Standard Sui PTB object transfer: move the NFT to the recipient\n tx.transferObjects([tx.object(nftObjectId)], tx.pure.address(toAddress))\n\n tx.setSender(suiAccount)\n tx.setGasBudget(10_000_000)\n\n // Pre-build so the wallet receives fully-resolved bytes\n const suiClient = getSuiClient()\n const builtBytes = await tx.build({ client: suiClient })\n const prebuiltTx = Transaction.from(builtBytes)\n\n const response = await signAndExecuteTransaction({ transaction: prebuiltTx })\n\n const digest = response?.digest\n if (!digest) throw new Error('No tx digest returned by wallet')\n\n await suiClient.waitForTransaction({ digest })\n await verifySuiTxSuccess(digest)\n\n await queryClient.invalidateQueries({ queryKey: [QUERY_KEYS.USER_BONDS] })\n addToastSuccess(digest, ChainId.SUI)\n setTimeout(() => onDismiss?.(), 1500)\n } catch (error: any) {\n console.error('Sui transfer failed:', error)\n addToastError(error?.message ?? 'Unknown error')\n reportError({\n apiUrl: SDKConfig?.urls?.apiV2,\n error,\n account: suiAccount ?? '',\n chainId: ChainId.SUI,\n extraInfo: { type: 'suiTransfer', userBill, toAddress, error },\n })\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 TransferActionSui\n"],"names":["_jsx"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { UserBill } from '../../types/yourbonds';
1
+ import { UserBill } from '../../../types/yourbonds';
2
2
  declare const UserBondRowSui: ({ bill }: {
3
3
  bill: UserBill;
4
4
  }) => import("react/jsx-runtime").JSX.Element;
@@ -2,29 +2,29 @@ import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { useState } from 'react';
3
3
  import { ChainId } from '@ape.swap/apeswap-lists';
4
4
  import { Transaction } from '@mysten/sui/transactions';
5
- import TokenInfoAndName from '../../components/TokenInfoAndName/index.js';
6
- import { formatNumberSI } from '../../utils/formatNumber.js';
7
- import Button from '../../components/uikit-sdk/Button/Button.js';
8
- import TooltipBubble from '../../components/uikit-sdk/TooltipBubble/index.js';
9
- import Flex from '../../components/uikit-sdk/Flex/index.js';
10
- import { NETWORK_LABEL } from '../../config/constants/chains.js';
11
- import { getTimeLeftForFullyVested, getPendingVestingString, claimable, pending, getPercentageVested } from '../../utils/displayHelpers.js';
12
- import useModal from '../../hooks/useModal.js';
13
- import { usePopups } from '../../state/popups/usePopups.js';
14
- import BondInfoTooltip from '../../components/Tooltip/Tooltip.js';
15
- import { getTimePeriods } from '../../utils/getTimePeriods.js';
16
- import ProfitCard from '../../views/YourBonds/components/ProfitCard/ProfitCard.js';
17
- import ProgressBar from '../../components/ProgressBar/ProgressBar.js';
18
- import ProgressBarWrapper from '../../components/ProgressBar/ProgressBarWrapper.js';
19
- import { useSDKConfig } from '../../state/useSDKConfig.js';
20
- import YourBondsModal from '../../views/YourBondsModal/YourBondsModal.js';
21
- import { reportError } from '../../utils/reportError.js';
5
+ import TokenInfoAndName from '../../../components/TokenInfoAndName/index.js';
6
+ import { formatNumberSI } from '../../../utils/formatNumber.js';
7
+ import Button from '../../../components/uikit-sdk/Button/Button.js';
8
+ import TooltipBubble from '../../../components/uikit-sdk/TooltipBubble/index.js';
9
+ import Flex from '../../../components/uikit-sdk/Flex/index.js';
10
+ import { NETWORK_LABEL } from '../../../config/constants/chains.js';
11
+ import { getTimeLeftForFullyVested, getPendingVestingString, claimable, pending, getPercentageVested } from '../../../utils/displayHelpers.js';
12
+ import useModal from '../../../hooks/useModal.js';
13
+ import { usePopups } from '../../../state/popups/usePopups.js';
14
+ import BondInfoTooltip from '../../../components/Tooltip/Tooltip.js';
15
+ import { getTimePeriods } from '../../../utils/getTimePeriods.js';
16
+ import ProfitCard from '../../../views/YourBonds/components/ProfitCard/ProfitCard.js';
17
+ import ProgressBar from '../../../components/ProgressBar/ProgressBar.js';
18
+ import ProgressBarWrapper from '../../../components/ProgressBar/ProgressBarWrapper.js';
19
+ import { useSDKConfig } from '../../../state/useSDKConfig.js';
20
+ import YourBondsModal from '../../../views/YourBondsModal/YourBondsModal.js';
21
+ import { reportError } from '../../../utils/reportError.js';
22
22
  import { useQueryClient } from '@tanstack/react-query';
23
- import useSUIAccount from './useSUIAccount.js';
24
- import { SUI_CLAIM_FUNCTION } from './suiConstants.js';
25
- import { getSuiClient, verifySuiTxSuccess } from './suiHelpers.js';
26
- import { QUERY_KEYS } from '../../config/constants/queryKeys.js';
27
- import More from '../../components/uikit-sdk/Svg/Icons/More.js';
23
+ import useSUIAccount from '../state/useSUIAccount.js';
24
+ import { SUI_CLAIM_FUNCTION } from '../constants/suiConstants.js';
25
+ import { getSuiClient, verifySuiTxSuccess } from '../utils/suiHelpers.js';
26
+ import { QUERY_KEYS } from '../../../config/constants/queryKeys.js';
27
+ import More from '../../../components/uikit-sdk/Svg/Icons/More.js';
28
28
 
29
29
  // Row renderer for Sui user bonds. Structure and layout mirror
30
30
  // `UserBondRowAptos` so the Your Bonds grid stays visually consistent
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserBondRowSui.js","sources":["../../../../src/adapters/sui/views/UserBondRowSui.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport { Transaction } from '@mysten/sui/transactions'\n\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 { NETWORK_LABEL } from '../../../config/constants/chains'\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 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 { reportError } from '../../../utils/reportError'\n\nimport { useQueryClient } from '@tanstack/react-query'\nimport useSUIAccount from '../state/useSUIAccount'\nimport { SUI_CLAIM_FUNCTION } from '../constants/suiConstants'\nimport { getSuiClient, verifySuiTxSuccess } from '../utils/suiHelpers'\nimport { QUERY_KEYS } from '../../../config/constants/queryKeys'\nimport More from '../../../components/uikit-sdk/Svg/Icons/More'\n\n// Row renderer for Sui user bonds. Structure and layout mirror\n// `UserBondRowAptos` so the Your Bonds grid stays visually consistent\n// across VMs. The only meaningful divergence is `handleClaim`, which\n// builds a Sui `Transaction` with a moveCall for the claim function.\nconst UserBondRowSui = ({ bill }: { bill: UserBill }) => {\n // Hooks\n const SDKConfig = useSDKConfig()\n const queryClient = useQueryClient()\n const { address: suiAccount, signAndExecuteTransaction } = useSUIAccount()\n const { addToastError, addToastSuccess } = usePopups()\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 if (loadingTx || !suiAccount || !signAndExecuteTransaction) return\n\n try {\n setLoadingTx(true)\n\n const market = bill?.bond?.contractAddress?.[ChainId.SUI]\n if (!market) throw new Error('Missing bond market address')\n\n // The user's BondNFT object ID is stored in `bill.address`\n const nftObjectId = bill?.address\n if (!nftObjectId) throw new Error('Missing bond NFT object ID')\n\n const payoutCoinType = bill?.bond?.earnToken?.address?.[bill?.bond?.chainId ?? 0]\n const principalCoinType = bill?.bond?.lpToken?.address?.[bill?.bond?.chainId ?? 0]\n if (!payoutCoinType || !principalCoinType) throw new Error('Missing token type info')\n\n const tx = new Transaction()\n const [claimedCoin] = tx.moveCall({\n target: SUI_CLAIM_FUNCTION,\n typeArguments: [payoutCoinType, principalCoinType],\n arguments: [\n tx.object(market),\n tx.object(nftObjectId),\n tx.object('0x6'), // clock\n ],\n })\n tx.transferObjects([claimedCoin], tx.pure.address(suiAccount))\n\n // Pre-build so the wallet receives fully-resolved bytes\n tx.setSender(suiAccount)\n tx.setGasBudget(50_000_000)\n const suiClient = getSuiClient()\n const builtBytes = await tx.build({ client: suiClient })\n const prebuiltTx = Transaction.from(builtBytes)\n\n const response = await signAndExecuteTransaction({\n transaction: prebuiltTx,\n })\n\n const digest = response?.digest\n if (!digest) throw new Error('No tx digest returned by wallet')\n\n await suiClient.waitForTransaction({ digest })\n await verifySuiTxSuccess(digest)\n\n await queryClient.invalidateQueries({ queryKey: [QUERY_KEYS.USER_BONDS] })\n addToastSuccess(digest, ChainId.SUI)\n } catch (error: any) {\n console.error('Sui claim failed:', error)\n addToastError(error?.message ?? 'Unknown error')\n reportError({\n apiUrl: SDKConfig?.urls?.apiV2,\n error,\n chainId: ChainId.SUI,\n account: suiAccount ?? '',\n extraInfo: { type: 'suiClaim', 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 {!suiAccount ? (\n <Button className=\"button ape:text-[14px]! ape:p-[6px] ape:h-[30px]\" disabled={true} fullWidth>\n Connect to {NETWORK_LABEL[ChainId.SUI]}\n </Button>\n ) : (\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 )}\n </div>\n </div>\n </div>\n )\n}\n\nexport default UserBondRowSui\n"],"names":["_jsx","_jsxs","Tooltip"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/NetworkFilter/index.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport clsx from 'clsx'\nimport { AnimatePresence, motion } from 'framer-motion'\nimport { MAINNET_CHAINS, NETWORK_ICONS, NETWORK_LABEL, TESTNET_CHAINS } from '../../config/constants/chains'\nimport Checkbox from '../../components/uikit-sdk/Checkbox'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport { useSDKConfig } from '../../state/useSDKConfig'\nimport Flex from '../uikit-sdk/Flex'\nimport Text from '../uikit-sdk/Text'\nimport Caret from '../uikit-sdk/Svg/Icons/Caret'\nimport AllChains from '../uikit-sdk/Svg/Icons/AllChains'\nimport Question from '../uikit-sdk/Svg/Icons/Question'\n\nconst rowClasses = 'ape:rounded-normal ape:p-[5px_15px] ape:min-h-[40px] ape:cursor-pointer ape:hover:bg-white3'\n\nconst NetworkFilter = ({\n chainFilterOption,\n setChainFilterOption,\n}: {\n chainFilterOption: string[]\n setChainFilterOption: (newValue: string[]) => void\n}) => {\n // Hooks\n const SDKConfig = useSDKConfig()\n const chains = SDKConfig?.chains as number[]\n const mainnetChains = chains.filter((item) => !TESTNET_CHAINS.includes(item))\n const testnetChains = chains.filter((item) => TESTNET_CHAINS.includes(item))\n\n // State\n const [isOpen, setIsOpen] = useState(false)\n\n // Handlers\n const handleCheckbox = (newChain: string) => {\n const prevChainFilterOptions = chainFilterOption.map(String)\n let newChainFilterOption: string[]\n\n if (newChain === 'All Chains') {\n newChainFilterOption = ['All Chains']\n } else if (newChain === 'All Testnet') {\n if (prevChainFilterOptions.includes('All Testnet')) {\n newChainFilterOption = prevChainFilterOptions.filter(\n (option) => ![...testnetChains.map((t) => t.toString()), 'All Testnet'].includes(option),\n )\n } else {\n newChainFilterOption = [\n ...prevChainFilterOptions.filter((option) => option !== 'All Chains'),\n ...testnetChains.map((t) => t.toString()),\n 'All Testnet',\n ]\n }\n newChainFilterOption = newChainFilterOption.length === 0 ? ['All Chains'] : newChainFilterOption\n } else {\n if (prevChainFilterOptions.includes(newChain)) {\n const filteredChains = prevChainFilterOptions.filter((option) => option !== newChain)\n newChainFilterOption = filteredChains.length === 0 ? ['All Chains'] : filteredChains\n } else {\n const newArray = [...prevChainFilterOptions.filter((option) => option !== 'All Chains'), newChain]\n\n const allMainnetsSelected = MAINNET_CHAINS.every((chain) => newArray.includes(chain.toString()))\n newChainFilterOption = allMainnetsSelected ? ['All Chains'] : newArray\n }\n }\n\n setChainFilterOption(newChainFilterOption)\n }\n\n return (\n <Flex className=\"ape:w-full ape:relative\">\n {isOpen && (\n // Backdrop that closes the dropdown if a user clicks outside of it\n <Flex\n className=\"ape:bg-transparent ape:fixed ape:top-0 ape:left-0 ape:w-screen ape:h-screen ape:z-[1000]\"\n onClick={() => setIsOpen(false)}\n />\n )}\n <Flex\n className=\"dropdown ape:bg-white2 ape:p-[6px] ape:rounded-normal ape:cursor-pointer ape:items-center ape:w-full ape:justify-between\"\n onClick={() => setIsOpen(!isOpen)}\n >\n <Text size=\"14px\" className=\"ape:font-normal ape:px-[10px]\" style={{ lineHeight: '22px' }}>\n {chainFilterOption.includes('All Chains') ? 'All Chains' : `Chains (${chainFilterOption.length})`}\n </Text>\n <Flex className=\"ape:ml-[5px]\">\n <Caret direction={isOpen ? 'up' : 'down'} />\n </Flex>\n </Flex>\n <AnimatePresence>\n {isOpen && (\n <motion.div\n initial={{ opacity: 0, height: 0 }}\n animate={{ opacity: 1, height: 'fit-content' }}\n transition={{ opacity: { duration: 0.2 } }}\n exit={{ opacity: 0, height: 0 }}\n className=\"ape:flex ape:flex-col ape:absolute ape:top-[45px] ape:right-0 ape:w-[235px] ape:max-h-[300px] ape:md:max-h-[350px] ape:overflow-y-scroll ape:rounded-normal ape:bg-white2 ape:z-[1001] ape:shadow-[0px_1px_4px_rgb(0_0_0/0.16)]\"\n >\n {['All Chains', ...mainnetChains].map((chainId) => {\n return (\n <Flex key={chainId} className={rowClasses} onClick={() => handleCheckbox(chainId.toString())}>\n <Flex className=\"ape:w-full ape:items-center ape:text-[14px]\">\n <Checkbox\n checked={chainFilterOption.includes(chainId.toString())}\n onChange={() => handleCheckbox(chainId.toString())}\n />\n {chainId === 'All Chains' ? (\n <>\n <Flex className=\"ape:mx-[8px]\">\n <AllChains width=\"22px\" />\n </Flex>\n <Text size=\"14px\" className=\"ape:font-normal\" style={{ lineHeight: '22px' }}>\n All Chains\n </Text>\n </>\n ) : (\n <>\n <Flex className=\"ape:mx-[8px] ape:rounded-[50px] ape:overflow-hidden\">\n {(() => {\n const ChainIcon = NETWORK_ICONS[chainId as ChainId] ?? Question\n return <ChainIcon width=\"22px\" />\n })()}\n </Flex>\n <Text size=\"14px\" className=\"ape:font-normal\" style={{ lineHeight: '22px' }}>\n {NETWORK_LABEL[chainId as ChainId]}\n </Text>\n </>\n )}\n </Flex>\n </Flex>\n )\n })}\n {testnetChains.length > 0 &&\n ['All Testnet', ...testnetChains].map((chainId) => {\n return (\n <Flex\n key={chainId}\n className={clsx(rowClasses, chainId !== 'All Testnet' ? 'ape:pl-[35px]' : 'ape:pl-[15px]')}\n onClick={() => handleCheckbox(chainId.toString())}\n >\n <Flex className=\"ape:w-full ape:items-center ape:text-[14px]\">\n <Checkbox\n checked={chainFilterOption.includes(chainId.toString())}\n onChange={() => handleCheckbox(chainId.toString())}\n />\n {chainId === 'All Testnet' ? (\n <>\n <Flex className=\"ape:mx-[8px]\">\n <AllChains width=\"22px\" />\n </Flex>\n <Text size=\"14px\" className=\"ape:font-normal\" style={{ lineHeight: '22px' }}>\n All Testnet\n </Text>\n </>\n ) : (\n <>\n <Flex className=\"ape:mx-[8px] ape:rounded-[50px] ape:overflow-hidden\">\n {(() => {\n const ChainIcon = NETWORK_ICONS[chainId as ChainId] ?? Question\n return <ChainIcon width=\"22px\" />\n })()}\n </Flex>\n <Text size=\"14px\" className=\"ape:font-normal\" style={{ lineHeight: '22px' }}>\n {NETWORK_LABEL[chainId as ChainId]}\n </Text>\n </>\n )}\n </Flex>\n </Flex>\n )\n })}\n </motion.div>\n )}\n </AnimatePresence>\n </Flex>\n )\n}\n\nexport default NetworkFilter\n"],"names":["_jsxs","_jsx","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/NetworkFilter/index.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport clsx from 'clsx'\nimport { AnimatePresence, motion } from 'framer-motion'\nimport { MAINNET_CHAINS, NETWORK_ICONS, NETWORK_LABEL, TESTNET_CHAINS } from '../../config/constants/chains'\nimport Checkbox from '../uikit-sdk/Checkbox'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport { useSDKConfig } from '../../state/useSDKConfig'\nimport Flex from '../uikit-sdk/Flex'\nimport Text from '../uikit-sdk/Text'\nimport Caret from '../uikit-sdk/Svg/Icons/Caret'\nimport AllChains from '../uikit-sdk/Svg/Icons/AllChains'\nimport Question from '../uikit-sdk/Svg/Icons/Question'\n\nconst rowClasses = 'ape:rounded-normal ape:p-[5px_15px] ape:min-h-[40px] ape:cursor-pointer ape:hover:bg-white3'\n\nconst NetworkFilter = ({\n chainFilterOption,\n setChainFilterOption,\n}: {\n chainFilterOption: string[]\n setChainFilterOption: (newValue: string[]) => void\n}) => {\n // Hooks\n const SDKConfig = useSDKConfig()\n const chains = SDKConfig?.chains as number[]\n const mainnetChains = chains.filter((item) => !TESTNET_CHAINS.includes(item))\n const testnetChains = chains.filter((item) => TESTNET_CHAINS.includes(item))\n\n // State\n const [isOpen, setIsOpen] = useState(false)\n\n // Handlers\n const handleCheckbox = (newChain: string) => {\n const prevChainFilterOptions = chainFilterOption.map(String)\n let newChainFilterOption: string[]\n\n if (newChain === 'All Chains') {\n newChainFilterOption = ['All Chains']\n } else if (newChain === 'All Testnet') {\n if (prevChainFilterOptions.includes('All Testnet')) {\n newChainFilterOption = prevChainFilterOptions.filter(\n (option) => ![...testnetChains.map((t) => t.toString()), 'All Testnet'].includes(option),\n )\n } else {\n newChainFilterOption = [\n ...prevChainFilterOptions.filter((option) => option !== 'All Chains'),\n ...testnetChains.map((t) => t.toString()),\n 'All Testnet',\n ]\n }\n newChainFilterOption = newChainFilterOption.length === 0 ? ['All Chains'] : newChainFilterOption\n } else {\n if (prevChainFilterOptions.includes(newChain)) {\n const filteredChains = prevChainFilterOptions.filter((option) => option !== newChain)\n newChainFilterOption = filteredChains.length === 0 ? ['All Chains'] : filteredChains\n } else {\n const newArray = [...prevChainFilterOptions.filter((option) => option !== 'All Chains'), newChain]\n\n const allMainnetsSelected = MAINNET_CHAINS.every((chain) => newArray.includes(chain.toString()))\n newChainFilterOption = allMainnetsSelected ? ['All Chains'] : newArray\n }\n }\n\n setChainFilterOption(newChainFilterOption)\n }\n\n return (\n <Flex className=\"ape:w-full ape:relative\">\n {isOpen && (\n // Backdrop that closes the dropdown if a user clicks outside of it\n <Flex\n className=\"ape:bg-transparent ape:fixed ape:top-0 ape:left-0 ape:w-screen ape:h-screen ape:z-[1000]\"\n onClick={() => setIsOpen(false)}\n />\n )}\n <Flex\n className=\"dropdown ape:bg-white2 ape:p-[6px] ape:rounded-normal ape:cursor-pointer ape:items-center ape:w-full ape:justify-between\"\n onClick={() => setIsOpen(!isOpen)}\n >\n <Text size=\"14px\" className=\"ape:font-normal ape:px-[10px]\" style={{ lineHeight: '22px' }}>\n {chainFilterOption.includes('All Chains') ? 'All Chains' : `Chains (${chainFilterOption.length})`}\n </Text>\n <Flex className=\"ape:ml-[5px]\">\n <Caret direction={isOpen ? 'up' : 'down'} />\n </Flex>\n </Flex>\n <AnimatePresence>\n {isOpen && (\n <motion.div\n initial={{ opacity: 0, height: 0 }}\n animate={{ opacity: 1, height: 'fit-content' }}\n transition={{ opacity: { duration: 0.2 } }}\n exit={{ opacity: 0, height: 0 }}\n className=\"ape:flex ape:flex-col ape:absolute ape:top-[45px] ape:right-0 ape:w-[235px] ape:max-h-[300px] ape:md:max-h-[350px] ape:overflow-y-scroll ape:rounded-normal ape:bg-white2 ape:z-[1001] ape:shadow-[0px_1px_4px_rgb(0_0_0/0.16)]\"\n >\n {['All Chains', ...mainnetChains].map((chainId) => {\n return (\n <Flex key={chainId} className={rowClasses} onClick={() => handleCheckbox(chainId.toString())}>\n <Flex className=\"ape:w-full ape:items-center ape:text-[14px]\">\n <Checkbox\n checked={chainFilterOption.includes(chainId.toString())}\n onChange={() => handleCheckbox(chainId.toString())}\n />\n {chainId === 'All Chains' ? (\n <>\n <Flex className=\"ape:mx-[8px]\">\n <AllChains width=\"22px\" />\n </Flex>\n <Text size=\"14px\" className=\"ape:font-normal\" style={{ lineHeight: '22px' }}>\n All Chains\n </Text>\n </>\n ) : (\n <>\n <Flex className=\"ape:mx-[8px] ape:rounded-[50px] ape:overflow-hidden\">\n {(() => {\n const ChainIcon = NETWORK_ICONS[chainId as ChainId] ?? Question\n return <ChainIcon width=\"22px\" />\n })()}\n </Flex>\n <Text size=\"14px\" className=\"ape:font-normal\" style={{ lineHeight: '22px' }}>\n {NETWORK_LABEL[chainId as ChainId]}\n </Text>\n </>\n )}\n </Flex>\n </Flex>\n )\n })}\n {testnetChains.length > 0 &&\n ['All Testnet', ...testnetChains].map((chainId) => {\n return (\n <Flex\n key={chainId}\n className={clsx(rowClasses, chainId !== 'All Testnet' ? 'ape:pl-[35px]' : 'ape:pl-[15px]')}\n onClick={() => handleCheckbox(chainId.toString())}\n >\n <Flex className=\"ape:w-full ape:items-center ape:text-[14px]\">\n <Checkbox\n checked={chainFilterOption.includes(chainId.toString())}\n onChange={() => handleCheckbox(chainId.toString())}\n />\n {chainId === 'All Testnet' ? (\n <>\n <Flex className=\"ape:mx-[8px]\">\n <AllChains width=\"22px\" />\n </Flex>\n <Text size=\"14px\" className=\"ape:font-normal\" style={{ lineHeight: '22px' }}>\n All Testnet\n </Text>\n </>\n ) : (\n <>\n <Flex className=\"ape:mx-[8px] ape:rounded-[50px] ape:overflow-hidden\">\n {(() => {\n const ChainIcon = NETWORK_ICONS[chainId as ChainId] ?? Question\n return <ChainIcon width=\"22px\" />\n })()}\n </Flex>\n <Text size=\"14px\" className=\"ape:font-normal\" style={{ lineHeight: '22px' }}>\n {NETWORK_LABEL[chainId as ChainId]}\n </Text>\n </>\n )}\n </Flex>\n </Flex>\n )\n })}\n </motion.div>\n )}\n </AnimatePresence>\n </Flex>\n )\n}\n\nexport default NetworkFilter\n"],"names":["_jsxs","_jsx","_Fragment"],"mappings":"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"}
@@ -39,7 +39,7 @@ const Toast = ({ popIndex, popup }) => {
39
39
  : isInsufficientFundsError
40
40
  ? 'Insufficient funds.'
41
41
  : popup?.description;
42
- return (jsx(AnimatePresence, { children: show && (jsxs(motion.div, { initial: { right: '-300px' }, animate: { right: '10px' }, transition: { duration: 0.5 }, exit: { right: '-300px' }, className: "ape:fixed ape:flex ape:w-[300px] ape:bg-white2 ape:rounded-[10px] ape:pl-[20px] ape:py-[14px] ape:pr-[14px] ape:min-h-[90px] ape:z-[103]", style: { top: 108 * popIndex, columnGap: '11px' }, children: [jsx(Flex, { children: jsx(VariantIcon, { color: variant, width: "30px" }) }), jsxs(Flex, { className: "ape:flex-col ape:flex-1 ape:text-text ape:ml-[10px]", children: [jsx(Text, { size: "14px", className: "ape:font-medium", style: { color: resolveColor(variant) }, children: title }), description && (jsx(Text, { size: "12px", className: "ape:font-normal ape:max-h-[48px] ape:min-h-4 ape:line-clamp-3 ape:break-all", style: { lineHeight: '1rem' }, children: parsedErrorString })), url && (jsxs("a", { href: url, className: linkClasses, target: "_blank", rel: "noreferrer", children: [jsx("div", { className: "ape:mr-[5px]", children: "View on Explorer" }), jsx(External, {})] })), showSupportLink && (jsxs("a", { href: 'https://discord.com/channels/821817977917538375/1110438345701593088', className: linkClasses, target: "_blank", rel: "noreferrer", children: [jsx("div", { className: "ape:mr-[5px]", children: "Having issues? Get support" }), jsx(External, {})] }))] }), jsx(Flex, { className: "ape:items-start ape:pt-[3px]", onClick: () => removePopup(popup), children: jsx(IconButton, { icon: Close, color: "text", variant: "transparent" }) })] })) }));
42
+ return (jsx(AnimatePresence, { children: show && (jsxs(motion.div, { initial: { right: '-300px' }, animate: { right: '10px' }, transition: { duration: 0.5 }, exit: { right: '-300px' }, className: "ape:fixed ape:flex ape:w-[300px] ape:bg-white2 ape:rounded-[10px] ape:pl-[20px] ape:py-[14px] ape:pr-[14px] ape:min-h-[90px] ape:z-[103] ape:shadow-[0px_1px_4px_rgb(0_0_0/0.26)]", style: { top: 108 * popIndex, columnGap: '11px' }, children: [jsx(Flex, { children: jsx(VariantIcon, { color: variant, width: "30px" }) }), jsxs(Flex, { className: "ape:flex-col ape:flex-1 ape:text-text ape:ml-[10px]", children: [jsx(Text, { size: "14px", className: "ape:font-medium", style: { color: resolveColor(variant) }, children: title }), description && (jsx(Text, { size: "12px", className: "ape:font-normal ape:max-h-[48px] ape:min-h-4 ape:line-clamp-3 ape:break-all", style: { lineHeight: '1rem' }, children: parsedErrorString })), url && (jsxs("a", { href: url, className: linkClasses, target: "_blank", rel: "noreferrer", children: [jsx("div", { className: "ape:mr-[5px]", children: "View on Explorer" }), jsx(External, {})] })), showSupportLink && (jsxs("a", { href: 'https://discord.com/channels/821817977917538375/1110438345701593088', className: linkClasses, target: "_blank", rel: "noreferrer", children: [jsx("div", { className: "ape:mr-[5px]", children: "Having issues? Get support" }), jsx(External, {})] }))] }), jsx(Flex, { className: "ape:items-start ape:pt-[3px]", onClick: () => removePopup(popup), children: jsx(IconButton, { icon: Close, color: "text", variant: "transparent" }) })] })) }));
43
43
  };
44
44
 
45
45
  export { Toast as default };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/Toast/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react'\nimport { AnimatePresence, motion } from 'framer-motion'\nimport { resolveColor } from '../../utils/resolveColor'\nimport { PopupProps, usePopups } from '../../state/popups/usePopups'\nimport Flex from '../uikit-sdk/Flex'\nimport IconButton from '../uikit-sdk/Button/IconButton'\nimport Text from '../uikit-sdk/Text'\nimport Close from '../uikit-sdk/Svg/Icons/Close'\nimport External from '../uikit-sdk/Svg/Icons/External'\nimport Success from '../uikit-sdk/Svg/Icons/Success'\nimport ErrorIcon from '../uikit-sdk/Svg/Icons/Error'\n\nconst linkClasses = 'ape:text-[12px] ape:underline ape:text-primary-bright ape:font-bold ape:flex ape:items-center'\n\nconst Toast = ({ popIndex, popup }: { popIndex: number; popup: PopupProps }) => {\n const { variant, title, description, url } = popup\n const { removePopup } = usePopups()\n const [show, setShow] = useState(true)\n const VariantIcon = variant === 'success' ? Success : ErrorIcon\n\n useEffect(() => {\n setTimeout(() => {\n setShow(false)\n setTimeout(() => {\n removePopup(popup)\n }, 500)\n }, 10000)\n /* eslint-disable react-hooks/exhaustive-deps */\n }, [])\n\n const showSupportLink = variant === 'error' && !url && !popup?.description?.includes('User rejected the request')\n const isSlippageError =\n popup?.description?.includes('INSUFFICIENT') ||\n popup?.description?.includes('Slippage') ||\n popup?.description?.includes('Return amount is not enough')\n\n const isTimeoutError = popup?.description?.includes('Blockhash not found')\n\n const isInsufficientFundsError = popup?.description?.includes('insufficient funds')\n\n const parsedErrorString = isSlippageError\n ? 'Slippage error. Try increasing Slippage in the cog icon ⚙️.'\n : isTimeoutError\n ? 'Tx timeout. Please try again.'\n : isInsufficientFundsError\n ? 'Insufficient funds.'\n : popup?.description\n\n return (\n <AnimatePresence>\n {show && (\n <motion.div\n initial={{ right: '-300px' }}\n animate={{ right: '10px' }}\n transition={{ duration: 0.5 }}\n exit={{ right: '-300px' }}\n className=\"ape:fixed ape:flex ape:w-[300px] ape:bg-white2 ape:rounded-[10px] ape:pl-[20px] ape:py-[14px] ape:pr-[14px] ape:min-h-[90px] ape:z-[103]\"\n style={{ top: 108 * popIndex, columnGap: '11px' }}\n >\n <Flex>\n <VariantIcon color={variant} width=\"30px\" />\n </Flex>\n <Flex className=\"ape:flex-col ape:flex-1 ape:text-text ape:ml-[10px]\">\n <Text size=\"14px\" className=\"ape:font-medium\" style={{ color: resolveColor(variant) }}>\n {title}\n </Text>\n {description && (\n <Text\n size=\"12px\"\n className=\"ape:font-normal ape:max-h-[48px] ape:min-h-4 ape:line-clamp-3 ape:break-all\"\n style={{ lineHeight: '1rem' }}\n >\n {parsedErrorString}\n </Text>\n )}\n {url && (\n <a href={url} className={linkClasses} target=\"_blank\" rel=\"noreferrer\">\n <div className=\"ape:mr-[5px]\">View on Explorer</div>\n <External />\n </a>\n )}\n {showSupportLink && (\n <a\n href={'https://discord.com/channels/821817977917538375/1110438345701593088'}\n className={linkClasses}\n target=\"_blank\"\n rel=\"noreferrer\"\n >\n <div className=\"ape:mr-[5px]\">Having issues? Get support</div>\n <External />\n </a>\n )}\n </Flex>\n <Flex className=\"ape:items-start ape:pt-[3px]\" onClick={() => removePopup(popup)}>\n <IconButton icon={Close} color=\"text\" variant=\"transparent\" />\n </Flex>\n </motion.div>\n )}\n </AnimatePresence>\n )\n}\n\nexport default Toast\n"],"names":["ErrorIcon","_jsx","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/Toast/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react'\nimport { AnimatePresence, motion } from 'framer-motion'\nimport { resolveColor } from '../../utils/resolveColor'\nimport { PopupProps, usePopups } from '../../state/popups/usePopups'\nimport Flex from '../uikit-sdk/Flex'\nimport IconButton from '../uikit-sdk/Button/IconButton'\nimport Text from '../uikit-sdk/Text'\nimport Close from '../uikit-sdk/Svg/Icons/Close'\nimport External from '../uikit-sdk/Svg/Icons/External'\nimport Success from '../uikit-sdk/Svg/Icons/Success'\nimport ErrorIcon from '../uikit-sdk/Svg/Icons/Error'\n\nconst linkClasses = 'ape:text-[12px] ape:underline ape:text-primary-bright ape:font-bold ape:flex ape:items-center'\n\nconst Toast = ({ popIndex, popup }: { popIndex: number; popup: PopupProps }) => {\n const { variant, title, description, url } = popup\n const { removePopup } = usePopups()\n const [show, setShow] = useState(true)\n const VariantIcon = variant === 'success' ? Success : ErrorIcon\n\n useEffect(() => {\n setTimeout(() => {\n setShow(false)\n setTimeout(() => {\n removePopup(popup)\n }, 500)\n }, 10000)\n /* eslint-disable react-hooks/exhaustive-deps */\n }, [])\n\n const showSupportLink = variant === 'error' && !url && !popup?.description?.includes('User rejected the request')\n const isSlippageError =\n popup?.description?.includes('INSUFFICIENT') ||\n popup?.description?.includes('Slippage') ||\n popup?.description?.includes('Return amount is not enough')\n\n const isTimeoutError = popup?.description?.includes('Blockhash not found')\n\n const isInsufficientFundsError = popup?.description?.includes('insufficient funds')\n\n const parsedErrorString = isSlippageError\n ? 'Slippage error. Try increasing Slippage in the cog icon ⚙️.'\n : isTimeoutError\n ? 'Tx timeout. Please try again.'\n : isInsufficientFundsError\n ? 'Insufficient funds.'\n : popup?.description\n\n return (\n <AnimatePresence>\n {show && (\n <motion.div\n initial={{ right: '-300px' }}\n animate={{ right: '10px' }}\n transition={{ duration: 0.5 }}\n exit={{ right: '-300px' }}\n className=\"ape:fixed ape:flex ape:w-[300px] ape:bg-white2 ape:rounded-[10px] ape:pl-[20px] ape:py-[14px] ape:pr-[14px] ape:min-h-[90px] ape:z-[103] ape:shadow-[0px_1px_4px_rgb(0_0_0/0.26)]\"\n style={{ top: 108 * popIndex, columnGap: '11px' }}\n >\n <Flex>\n <VariantIcon color={variant} width=\"30px\" />\n </Flex>\n <Flex className=\"ape:flex-col ape:flex-1 ape:text-text ape:ml-[10px]\">\n <Text size=\"14px\" className=\"ape:font-medium\" style={{ color: resolveColor(variant) }}>\n {title}\n </Text>\n {description && (\n <Text\n size=\"12px\"\n className=\"ape:font-normal ape:max-h-[48px] ape:min-h-4 ape:line-clamp-3 ape:break-all\"\n style={{ lineHeight: '1rem' }}\n >\n {parsedErrorString}\n </Text>\n )}\n {url && (\n <a href={url} className={linkClasses} target=\"_blank\" rel=\"noreferrer\">\n <div className=\"ape:mr-[5px]\">View on Explorer</div>\n <External />\n </a>\n )}\n {showSupportLink && (\n <a\n href={'https://discord.com/channels/821817977917538375/1110438345701593088'}\n className={linkClasses}\n target=\"_blank\"\n rel=\"noreferrer\"\n >\n <div className=\"ape:mr-[5px]\">Having issues? Get support</div>\n <External />\n </a>\n )}\n </Flex>\n <Flex className=\"ape:items-start ape:pt-[3px]\" onClick={() => removePopup(popup)}>\n <IconButton icon={Close} color=\"text\" variant=\"transparent\" />\n </Flex>\n </motion.div>\n )}\n </AnimatePresence>\n )\n}\n\nexport default Toast\n"],"names":["ErrorIcon","_jsx","_jsxs"],"mappings":"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"}
package/dist/main.d.ts CHANGED
@@ -35,7 +35,7 @@ import { BLOCK_EXPLORER } from './config/constants/chains';
35
35
  import useCurrencyBalance from './state/balance/useCurrencyBalance';
36
36
  import useUserTokensBalance from './state/balance/useUserTokensBalance';
37
37
  import TokenImage from './components/uikit-sdk/TokenImage';
38
- import { useApproval } from './adapters/evm/useAllowance';
38
+ import { useApproval } from './adapters/evm/state/useAllowance';
39
39
  import useBondsData from './state/bonds/useBondsData';
40
40
  /** @deprecated Use granular import: `import Bonds from '@ape.swap/bonds-sdk/views/Bonds'` */
41
41
  declare const _Bonds: typeof Bonds;
package/dist/main.js CHANGED
@@ -12,7 +12,7 @@ import { BLOCK_EXPLORER } from './config/constants/chains.js';
12
12
  import useCurrencyBalance from './state/balance/useCurrencyBalance.js';
13
13
  import useUserTokensBalance from './state/balance/useUserTokensBalance.js';
14
14
  import TokenImage from './components/uikit-sdk/TokenImage/index.js';
15
- import { useApproval } from './adapters/evm/useAllowance.js';
15
+ import { useApproval } from './adapters/evm/state/useAllowance.js';
16
16
  import useBondsData from './state/bonds/useBondsData.js';
17
17
 
18
18
  /**
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sources":["../src/main.ts"],"sourcesContent":["/**\n * @ape.swap/bonds-sdk - Main Entry Point\n *\n * This barrel export provides backward compatibility.\n * For optimal bundle size, use granular imports:\n *\n * @example Tree-shakeable imports (RECOMMENDED for bundle optimization)\n * ```typescript\n * // Import only what you need - reduces bundle by ~90%\n * import Bonds from '@ape.swap/bonds-sdk/views/Bonds'\n * import TokenImage from '@ape.swap/bonds-sdk/components/TokenImage'\n * import { useTokenPrices } from '@ape.swap/bonds-sdk/hooks/useTokenPrices'\n * ```\n *\n * @example Barrel imports (backward compatible, larger bundle)\n * ```typescript\n * // Works but includes more code in bundle\n * import { Bonds, TokenImage, useTokenPrices } from '@ape.swap/bonds-sdk'\n * ```\n *\n * @see https://vercel.com/docs/concepts/functions/edge-functions/best-practices\n * Rule: bundle-barrel-imports - Avoid barrel imports for optimal tree-shaking\n */\n\n// Components\nimport Bonds from './views/Bonds'\nimport YourBonds from './views/YourBonds'\nimport BuyBondModal from './views/BuyBond'\nimport FullBondsView from './views/FullBondsView'\nimport ProjectView from './views/ProjectView'\nimport { generateImageFromTemplate } from './views/YourBondsModal/components/LinkShare/utils'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport SingleBond from './views/SingleBond'\nimport useTokenPrices from './state/tokenPrices/useTokenPrices'\nimport { useSDKConfig } from './state/useSDKConfig'\nimport { BLOCK_EXPLORER } from './config/constants/chains'\nimport useCurrencyBalance from './state/balance/useCurrencyBalance'\nimport useUserTokensBalance from './state/balance/useUserTokensBalance'\nimport TokenImage from './components/uikit-sdk/TokenImage'\n// The legacy barrel keeps re-exporting useApproval, so it requires the EVM peers (wagmi, viem); partners without EVM\n// use the subpath imports instead. See docs/PLAN_CHAIN_ADAPTERS.md, section 3.7.\n// eslint-disable-next-line no-restricted-imports\nimport { useApproval } from './adapters/evm/useAllowance'\nimport useBondsData from './state/bonds/useBondsData'\n\n/** @deprecated Use granular import: `import Bonds from '@ape.swap/bonds-sdk/views/Bonds'` */\nconst _Bonds: typeof Bonds = Bonds\n/** @deprecated Use granular import: `import BuyBondModal from '@ape.swap/bonds-sdk/views/BuyBondModal'` */\nconst _BuyBondModal: typeof BuyBondModal = BuyBondModal\n/** @deprecated Use granular import: `import YourBonds from '@ape.swap/bonds-sdk/views/YourBonds'` */\nconst _YourBonds: typeof YourBonds = YourBonds\n/** @deprecated Use granular import: `import FullBondsView from '@ape.swap/bonds-sdk/views/FullBondsView'` */\nconst _FullBondsView: typeof FullBondsView = FullBondsView\n/** @deprecated Use granular import: `import ProjectView from '@ape.swap/bonds-sdk/views/ProjectView'` */\nconst _ProjectView: typeof ProjectView = ProjectView\n/** @deprecated Use granular import: `import { generateImageFromTemplate } from '@ape.swap/bonds-sdk/utils/generateImageFromTemplate'` */\nconst _generateImageFromTemplate: typeof generateImageFromTemplate = generateImageFromTemplate\n/** @deprecated Use granular import: `import { ChainId } from '@ape.swap/apeswap-lists'` */\nconst _ChainId: typeof ChainId = ChainId\n/** @deprecated Use granular import: `import SingleBond from '@ape.swap/bonds-sdk/views/SingleBond'` */\nconst _SingleBond: typeof SingleBond = SingleBond\n/** @deprecated Use granular import: `import useTokenPrices from '@ape.swap/bonds-sdk/hooks/useTokenPrices'` */\nconst _useTokenPrices: typeof useTokenPrices = useTokenPrices\n/** @deprecated Use granular import: `import useBondsData from '@ape.swap/bonds-sdk/hooks/useBondsData'` */\nconst _useBondsData: typeof useBondsData = useBondsData\n/** @deprecated Use granular import: `import { useSDKConfig } from '@ape.swap/bonds-sdk/hooks/useSDKConfig'` */\nconst _useSDKConfig: typeof useSDKConfig = useSDKConfig\n/** @deprecated Use granular import: `import { BLOCK_EXPLORER } from '@ape.swap/bonds-sdk/constants/chains'` */\nconst _BLOCK_EXPLORER: typeof BLOCK_EXPLORER = BLOCK_EXPLORER\n/** @deprecated Use granular import: `import useCurrencyBalance from '@ape.swap/bonds-sdk/hooks/useCurrencyBalance'` */\nconst _useCurrencyBalance: typeof useCurrencyBalance = useCurrencyBalance\n/** @deprecated Use granular import: `import useUserTokensBalance from '@ape.swap/bonds-sdk/hooks/useUserTokensBalance'` */\nconst _useUserTokensBalance: typeof useUserTokensBalance = useUserTokensBalance\n/** @deprecated Use granular import: `import TokenImage from '@ape.swap/bonds-sdk/components/TokenImage'` */\nconst _TokenImage: typeof TokenImage = TokenImage\n/** @deprecated Use granular import: `import { useApproval } from '@ape.swap/bonds-sdk/hooks/useApproval'` */\nconst _useApproval: typeof useApproval = useApproval\n\nexport {\n _Bonds as Bonds,\n _BuyBondModal as BuyBondModal,\n _YourBonds as YourBonds,\n _FullBondsView as FullBondsView,\n _ProjectView as ProjectView,\n _generateImageFromTemplate as generateImageFromTemplate,\n _ChainId as ChainId,\n _SingleBond as SingleBond,\n _useTokenPrices as useTokenPrices,\n _useBondsData as useBondsData,\n _useSDKConfig as useSDKConfig,\n _BLOCK_EXPLORER as BLOCK_EXPLORER,\n _useCurrencyBalance as useCurrencyBalance,\n _useUserTokensBalance as useUserTokensBalance,\n _TokenImage as TokenImage,\n _useApproval as useApproval,\n}\n"],"names":["Bonds","BuyBondModal","YourBonds","FullBondsView","ProjectView","SingleBond"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;AAsBG;AAEH;AAqBA;AACA,MAAM,MAAM,GAAiBA;AAC7B;AACA,MAAM,aAAa,GAAwBC;AAC3C;AACA,MAAM,UAAU,GAAqBC;AACrC;AACA,MAAM,cAAc,GAAyBC;AAC7C;AACA,MAAM,YAAY,GAAuBC;AACzC;AACA,MAAM,0BAA0B,GAAqC;AACrE;AACA,MAAM,QAAQ,GAAmB;AACjC;AACA,MAAM,WAAW,GAAsBC;AACvC;AACA,MAAM,eAAe,GAA0B;AAC/C;AACA,MAAM,aAAa,GAAwB;AAC3C;AACA,MAAM,aAAa,GAAwB;AAC3C;AACA,MAAM,eAAe,GAA0B;AAC/C;AACA,MAAM,mBAAmB,GAA8B;AACvD;AACA,MAAM,qBAAqB,GAAgC;AAC3D;AACA,MAAM,WAAW,GAAsB;AACvC;AACA,MAAM,YAAY,GAAuB;;;;"}
1
+ {"version":3,"file":"main.js","sources":["../src/main.ts"],"sourcesContent":["/**\n * @ape.swap/bonds-sdk - Main Entry Point\n *\n * This barrel export provides backward compatibility.\n * For optimal bundle size, use granular imports:\n *\n * @example Tree-shakeable imports (RECOMMENDED for bundle optimization)\n * ```typescript\n * // Import only what you need - reduces bundle by ~90%\n * import Bonds from '@ape.swap/bonds-sdk/views/Bonds'\n * import TokenImage from '@ape.swap/bonds-sdk/components/TokenImage'\n * import { useTokenPrices } from '@ape.swap/bonds-sdk/hooks/useTokenPrices'\n * ```\n *\n * @example Barrel imports (backward compatible, larger bundle)\n * ```typescript\n * // Works but includes more code in bundle\n * import { Bonds, TokenImage, useTokenPrices } from '@ape.swap/bonds-sdk'\n * ```\n *\n * @see https://vercel.com/docs/concepts/functions/edge-functions/best-practices\n * Rule: bundle-barrel-imports - Avoid barrel imports for optimal tree-shaking\n */\n\n// Components\nimport Bonds from './views/Bonds'\nimport YourBonds from './views/YourBonds'\nimport BuyBondModal from './views/BuyBond'\nimport FullBondsView from './views/FullBondsView'\nimport ProjectView from './views/ProjectView'\nimport { generateImageFromTemplate } from './views/YourBondsModal/components/LinkShare/utils'\nimport { ChainId } from '@ape.swap/apeswap-lists'\nimport SingleBond from './views/SingleBond'\nimport useTokenPrices from './state/tokenPrices/useTokenPrices'\nimport { useSDKConfig } from './state/useSDKConfig'\nimport { BLOCK_EXPLORER } from './config/constants/chains'\nimport useCurrencyBalance from './state/balance/useCurrencyBalance'\nimport useUserTokensBalance from './state/balance/useUserTokensBalance'\nimport TokenImage from './components/uikit-sdk/TokenImage'\n// The legacy barrel keeps re-exporting useApproval, so it requires the EVM peers (wagmi, viem); partners without EVM\n// use the subpath imports instead. See docs/PLAN_CHAIN_ADAPTERS.md, section 3.7.\n// eslint-disable-next-line no-restricted-imports\nimport { useApproval } from './adapters/evm/state/useAllowance'\nimport useBondsData from './state/bonds/useBondsData'\n\n/** @deprecated Use granular import: `import Bonds from '@ape.swap/bonds-sdk/views/Bonds'` */\nconst _Bonds: typeof Bonds = Bonds\n/** @deprecated Use granular import: `import BuyBondModal from '@ape.swap/bonds-sdk/views/BuyBondModal'` */\nconst _BuyBondModal: typeof BuyBondModal = BuyBondModal\n/** @deprecated Use granular import: `import YourBonds from '@ape.swap/bonds-sdk/views/YourBonds'` */\nconst _YourBonds: typeof YourBonds = YourBonds\n/** @deprecated Use granular import: `import FullBondsView from '@ape.swap/bonds-sdk/views/FullBondsView'` */\nconst _FullBondsView: typeof FullBondsView = FullBondsView\n/** @deprecated Use granular import: `import ProjectView from '@ape.swap/bonds-sdk/views/ProjectView'` */\nconst _ProjectView: typeof ProjectView = ProjectView\n/** @deprecated Use granular import: `import { generateImageFromTemplate } from '@ape.swap/bonds-sdk/utils/generateImageFromTemplate'` */\nconst _generateImageFromTemplate: typeof generateImageFromTemplate = generateImageFromTemplate\n/** @deprecated Use granular import: `import { ChainId } from '@ape.swap/apeswap-lists'` */\nconst _ChainId: typeof ChainId = ChainId\n/** @deprecated Use granular import: `import SingleBond from '@ape.swap/bonds-sdk/views/SingleBond'` */\nconst _SingleBond: typeof SingleBond = SingleBond\n/** @deprecated Use granular import: `import useTokenPrices from '@ape.swap/bonds-sdk/hooks/useTokenPrices'` */\nconst _useTokenPrices: typeof useTokenPrices = useTokenPrices\n/** @deprecated Use granular import: `import useBondsData from '@ape.swap/bonds-sdk/hooks/useBondsData'` */\nconst _useBondsData: typeof useBondsData = useBondsData\n/** @deprecated Use granular import: `import { useSDKConfig } from '@ape.swap/bonds-sdk/hooks/useSDKConfig'` */\nconst _useSDKConfig: typeof useSDKConfig = useSDKConfig\n/** @deprecated Use granular import: `import { BLOCK_EXPLORER } from '@ape.swap/bonds-sdk/constants/chains'` */\nconst _BLOCK_EXPLORER: typeof BLOCK_EXPLORER = BLOCK_EXPLORER\n/** @deprecated Use granular import: `import useCurrencyBalance from '@ape.swap/bonds-sdk/hooks/useCurrencyBalance'` */\nconst _useCurrencyBalance: typeof useCurrencyBalance = useCurrencyBalance\n/** @deprecated Use granular import: `import useUserTokensBalance from '@ape.swap/bonds-sdk/hooks/useUserTokensBalance'` */\nconst _useUserTokensBalance: typeof useUserTokensBalance = useUserTokensBalance\n/** @deprecated Use granular import: `import TokenImage from '@ape.swap/bonds-sdk/components/TokenImage'` */\nconst _TokenImage: typeof TokenImage = TokenImage\n/** @deprecated Use granular import: `import { useApproval } from '@ape.swap/bonds-sdk/hooks/useApproval'` */\nconst _useApproval: typeof useApproval = useApproval\n\nexport {\n _Bonds as Bonds,\n _BuyBondModal as BuyBondModal,\n _YourBonds as YourBonds,\n _FullBondsView as FullBondsView,\n _ProjectView as ProjectView,\n _generateImageFromTemplate as generateImageFromTemplate,\n _ChainId as ChainId,\n _SingleBond as SingleBond,\n _useTokenPrices as useTokenPrices,\n _useBondsData as useBondsData,\n _useSDKConfig as useSDKConfig,\n _BLOCK_EXPLORER as BLOCK_EXPLORER,\n _useCurrencyBalance as useCurrencyBalance,\n _useUserTokensBalance as useUserTokensBalance,\n _TokenImage as TokenImage,\n _useApproval as useApproval,\n}\n"],"names":["Bonds","BuyBondModal","YourBonds","FullBondsView","ProjectView","SingleBond"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;AAsBG;AAEH;AAqBA;AACA,MAAM,MAAM,GAAiBA;AAC7B;AACA,MAAM,aAAa,GAAwBC;AAC3C;AACA,MAAM,UAAU,GAAqBC;AACrC;AACA,MAAM,cAAc,GAAyBC;AAC7C;AACA,MAAM,YAAY,GAAuBC;AACzC;AACA,MAAM,0BAA0B,GAAqC;AACrE;AACA,MAAM,QAAQ,GAAmB;AACjC;AACA,MAAM,WAAW,GAAsBC;AACvC;AACA,MAAM,eAAe,GAA0B;AAC/C;AACA,MAAM,aAAa,GAAwB;AAC3C;AACA,MAAM,aAAa,GAAwB;AAC3C;AACA,MAAM,eAAe,GAA0B;AAC/C;AACA,MAAM,mBAAmB,GAA8B;AACvD;AACA,MAAM,qBAAqB,GAAgC;AAC3D;AACA,MAAM,WAAW,GAAsB;AACvC;AACA,MAAM,YAAY,GAAuB;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useBondsData.js","sources":["../../../src/state/bonds/useBondsData.ts"],"sourcesContent":["import { QueryClient, useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { BondsData } from '../../types/bonds'\nimport { apiGet } from '../../utils/httpClient'\nimport { SDKProps } from '../useSDKConfig'\nimport useTokenPrices, { TokenPrices } from '../tokenPrices/useTokenPrices'\nimport useBondsList from './useBondsList'\nimport { BillsConfig, ChainId, PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport useBondsListPreTGE from '../bonds/useBondsListPreTGE'\nimport { getAdapterForChain } from '../../adapters/registry'\n\nexport default function useBondsData(): UseQueryResult<BondsData[]> {\n const { data: bondList } = useBondsList()\n const { data: preTGEList } = useBondsListPreTGE()\n const { data: tokenPrices } = useTokenPrices()\n const tokenPricesKey = Object.keys(tokenPrices ?? {})?.length\n\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_DATA],\n queryFn: ({ client }) => calculateBondsData(client),\n refetchInterval: 25000, // i.e. 25 sec\n enabled: !!bondList && !!preTGEList && !!tokenPricesKey,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n refetchOnReconnect: false,\n retry: 0,\n staleTime: 25000, // i.e. 25 sec\n })\n}\n\nexport const calculateBondsData = async (queryClient: QueryClient): Promise<BondsData[]> => {\n // ----------------------- Step 1 -----------------------\n // Fetch necessary data from the queryClient\n const { chains, urls } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const realTimeApiUrl = urls['realTimeApi']\n const apiUrl = urls['apiV2']\n\n // Adapters that don't use the realtime API are read on-chain in step 3. Chains without a registered adapter are\n // unsupported.\n const usesRealtimeApi = (chainId: ChainId) => getAdapterForChain(chainId)?.usesRealtimeApi ?? false\n\n // ----------------------- Step 2 -----------------------\n // Fetch the realtime-API adapters' bonds (EVM incl. PreTGE, Solana)\n let evmSolBondsData: BondsData[] = []\n\n try {\n // We first try to fetch from realtime; if it fails we fall back to each adapter's on-chain reads.\n const realTimeApiResponse = await apiGet<{ bonds: BondsData[] }>(`${realTimeApiUrl}/bonds`)\n evmSolBondsData = realTimeApiResponse.bonds.filter(\n (bond: BondsData) => chains.includes(bond.chainId) && usesRealtimeApi(bond.chainId),\n )\n } catch {\n // Fallback strategy\n console.time('Fallback BondsData')\n const bondList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST]) as Record<ChainId, BillsConfig[]>\n const preTGEList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST_PRE_TGE]) as PreTGEConfig[]\n const tokenPrices = queryClient?.getQueryData([QUERY_KEYS.TOKEN_PRICES]) as Partial<Record<ChainId, TokenPrices[]>>\n const billData = await Promise.all([\n ...chains\n .filter((c) => usesRealtimeApi(c))\n .map(async (chainId: ChainId) => {\n if (!bondList[chainId]) return []\n return await getAdapterForChain(chainId)!.fetchBondsData(\n chainId,\n bondList[chainId],\n tokenPrices[chainId],\n apiUrl,\n )\n }),\n ...chains.map(async (chainId: ChainId) => {\n const preTGE = getAdapterForChain(chainId)?.preTGE\n if (!preTGE) return []\n const filteredBonds = preTGEList?.filter((bond) => bond.chainId === chainId) ?? []\n return await preTGE.fetchBondsData(chainId, tokenPrices, filteredBonds, apiUrl)\n }),\n ])\n console.timeEnd('Fallback BondsData')\n evmSolBondsData = billData.flat()\n }\n\n // ----------------------- Step 3 -----------------------\n // Fetch on-chain-only bonds: adapters that don't use the realtime API (e.g. Aptos, Sui)\n let onChainBonds: BondsData[] = []\n const onChainAdapterChains = (chains as ChainId[]).filter((chainId) => {\n const adapter = getAdapterForChain(chainId)\n return !!adapter && !adapter.usesRealtimeApi\n })\n\n if (onChainAdapterChains.length > 0) {\n try {\n const bondList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST]) as Record<ChainId, BillsConfig[]>\n const tokenPrices = queryClient?.getQueryData([QUERY_KEYS.TOKEN_PRICES]) as Partial<\n Record<ChainId, TokenPrices[]>\n >\n const results = await Promise.all(\n onChainAdapterChains.map((chainId) =>\n getAdapterForChain(chainId)!.fetchBondsData(chainId, bondList[chainId] ?? [], tokenPrices[chainId], apiUrl),\n ),\n )\n onChainBonds = results.flat()\n } catch (e) {\n console.error(e)\n }\n }\n\n return [...evmSolBondsData, ...onChainBonds]\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useBondsData.js","sources":["../../../src/state/bonds/useBondsData.ts"],"sourcesContent":["import { QueryClient, useQuery, UseQueryResult } from '@tanstack/react-query'\nimport { QUERY_KEYS } from '../../config/constants/queryKeys'\nimport { BondsData } from '../../types/bonds'\nimport { apiGet } from '../../utils/httpClient'\nimport { SDKProps } from '../useSDKConfig'\nimport useTokenPrices, { TokenPrices } from '../tokenPrices/useTokenPrices'\nimport useBondsList from './useBondsList'\nimport { BillsConfig, ChainId, PreTGEConfig } from '@ape.swap/apeswap-lists'\nimport useBondsListPreTGE from './useBondsListPreTGE'\nimport { getAdapterForChain } from '../../adapters/registry'\n\nexport default function useBondsData(): UseQueryResult<BondsData[]> {\n const { data: bondList } = useBondsList()\n const { data: preTGEList } = useBondsListPreTGE()\n const { data: tokenPrices } = useTokenPrices()\n const tokenPricesKey = Object.keys(tokenPrices ?? {})?.length\n\n return useQuery({\n queryKey: [QUERY_KEYS.BONDS_DATA],\n queryFn: ({ client }) => calculateBondsData(client),\n refetchInterval: 25000, // i.e. 25 sec\n enabled: !!bondList && !!preTGEList && !!tokenPricesKey,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n refetchOnReconnect: false,\n retry: 0,\n staleTime: 25000, // i.e. 25 sec\n })\n}\n\nexport const calculateBondsData = async (queryClient: QueryClient): Promise<BondsData[]> => {\n // ----------------------- Step 1 -----------------------\n // Fetch necessary data from the queryClient\n const { chains, urls } = queryClient?.getQueryData([QUERY_KEYS.SDK_CONFIG]) as SDKProps\n const realTimeApiUrl = urls['realTimeApi']\n const apiUrl = urls['apiV2']\n\n // Adapters that don't use the realtime API are read on-chain in step 3. Chains without a registered adapter are\n // unsupported.\n const usesRealtimeApi = (chainId: ChainId) => getAdapterForChain(chainId)?.usesRealtimeApi ?? false\n\n // ----------------------- Step 2 -----------------------\n // Fetch the realtime-API adapters' bonds (EVM incl. PreTGE, Solana)\n let evmSolBondsData: BondsData[] = []\n\n try {\n // We first try to fetch from realtime; if it fails we fall back to each adapter's on-chain reads.\n const realTimeApiResponse = await apiGet<{ bonds: BondsData[] }>(`${realTimeApiUrl}/bonds`)\n evmSolBondsData = realTimeApiResponse.bonds.filter(\n (bond: BondsData) => chains.includes(bond.chainId) && usesRealtimeApi(bond.chainId),\n )\n } catch {\n // Fallback strategy\n console.time('Fallback BondsData')\n const bondList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST]) as Record<ChainId, BillsConfig[]>\n const preTGEList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST_PRE_TGE]) as PreTGEConfig[]\n const tokenPrices = queryClient?.getQueryData([QUERY_KEYS.TOKEN_PRICES]) as Partial<Record<ChainId, TokenPrices[]>>\n const billData = await Promise.all([\n ...chains\n .filter((c) => usesRealtimeApi(c))\n .map(async (chainId: ChainId) => {\n if (!bondList[chainId]) return []\n return await getAdapterForChain(chainId)!.fetchBondsData(\n chainId,\n bondList[chainId],\n tokenPrices[chainId],\n apiUrl,\n )\n }),\n ...chains.map(async (chainId: ChainId) => {\n const preTGE = getAdapterForChain(chainId)?.preTGE\n if (!preTGE) return []\n const filteredBonds = preTGEList?.filter((bond) => bond.chainId === chainId) ?? []\n return await preTGE.fetchBondsData(chainId, tokenPrices, filteredBonds, apiUrl)\n }),\n ])\n console.timeEnd('Fallback BondsData')\n evmSolBondsData = billData.flat()\n }\n\n // ----------------------- Step 3 -----------------------\n // Fetch on-chain-only bonds: adapters that don't use the realtime API (e.g. Aptos, Sui)\n let onChainBonds: BondsData[] = []\n const onChainAdapterChains = (chains as ChainId[]).filter((chainId) => {\n const adapter = getAdapterForChain(chainId)\n return !!adapter && !adapter.usesRealtimeApi\n })\n\n if (onChainAdapterChains.length > 0) {\n try {\n const bondList = queryClient?.getQueryData([QUERY_KEYS.BONDS_LIST]) as Record<ChainId, BillsConfig[]>\n const tokenPrices = queryClient?.getQueryData([QUERY_KEYS.TOKEN_PRICES]) as Partial<\n Record<ChainId, TokenPrices[]>\n >\n const results = await Promise.all(\n onChainAdapterChains.map((chainId) =>\n getAdapterForChain(chainId)!.fetchBondsData(chainId, bondList[chainId] ?? [], tokenPrices[chainId], apiUrl),\n ),\n )\n onChainBonds = results.flat()\n } catch (e) {\n console.error(e)\n }\n }\n\n return [...evmSolBondsData, ...onChainBonds]\n}\n"],"names":[],"mappings":";;;;;;;;AAWc,SAAU,YAAY,GAAA;IAClC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,YAAY,EAAE;IACzC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,kBAAkB,EAAE;IACjD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,cAAc,EAAE;AAC9C,IAAA,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,MAAM;AAE7D,IAAA,OAAO,QAAQ,CAAC;AACd,QAAA,QAAQ,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QACjC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,kBAAkB,CAAC,MAAM,CAAC;QACnD,eAAe,EAAE,KAAK;QACtB,OAAO,EAAE,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,cAAc;AACvD,QAAA,oBAAoB,EAAE,KAAK;AAC3B,QAAA,cAAc,EAAE,KAAK;AACrB,QAAA,kBAAkB,EAAE,KAAK;AACzB,QAAA,KAAK,EAAE,CAAC;QACR,SAAS,EAAE,KAAK;AACjB,KAAA,CAAC;AACJ;MAEa,kBAAkB,GAAG,OAAO,WAAwB,KAA0B;;;AAGzF,IAAA,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAa;AACvF,IAAA,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;AAC1C,IAAA,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;;;AAI5B,IAAA,MAAM,eAAe,GAAG,CAAC,OAAgB,KAAK,kBAAkB,CAAC,OAAO,CAAC,EAAE,eAAe,IAAI,KAAK;;;IAInG,IAAI,eAAe,GAAgB,EAAE;AAErC,IAAA,IAAI;;QAEF,MAAM,mBAAmB,GAAG,MAAM,MAAM,CAAyB,CAAA,EAAG,cAAc,CAAA,MAAA,CAAQ,CAAC;AAC3F,QAAA,eAAe,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAChD,CAAC,IAAe,KAAK,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CACpF;IACH;AAAE,IAAA,MAAM;;AAEN,QAAA,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC;AAClC,QAAA,MAAM,QAAQ,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAmC;AACrG,QAAA,MAAM,UAAU,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAmB;AAC/F,QAAA,MAAM,WAAW,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAA4C;AACnH,QAAA,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;AACjC,YAAA,GAAG;iBACA,MAAM,CAAC,CAAC,CAAC,KAAK,eAAe,CAAC,CAAC,CAAC;AAChC,iBAAA,GAAG,CAAC,OAAO,OAAgB,KAAI;AAC9B,gBAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AAAE,oBAAA,OAAO,EAAE;gBACjC,OAAO,MAAM,kBAAkB,CAAC,OAAO,CAAE,CAAC,cAAc,CACtD,OAAO,EACP,QAAQ,CAAC,OAAO,CAAC,EACjB,WAAW,CAAC,OAAO,CAAC,EACpB,MAAM,CACP;AACH,YAAA,CAAC,CAAC;YACJ,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,OAAgB,KAAI;gBACvC,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM;AAClD,gBAAA,IAAI,CAAC,MAAM;AAAE,oBAAA,OAAO,EAAE;AACtB,gBAAA,MAAM,aAAa,GAAG,UAAU,EAAE,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,EAAE;AAClF,gBAAA,OAAO,MAAM,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,CAAC;AACjF,YAAA,CAAC,CAAC;AACH,SAAA,CAAC;AACF,QAAA,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;AACrC,QAAA,eAAe,GAAG,QAAQ,CAAC,IAAI,EAAE;IACnC;;;IAIA,IAAI,YAAY,GAAgB,EAAE;IAClC,MAAM,oBAAoB,GAAI,MAAoB,CAAC,MAAM,CAAC,CAAC,OAAO,KAAI;AACpE,QAAA,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC;QAC3C,OAAO,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe;AAC9C,IAAA,CAAC,CAAC;AAEF,IAAA,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE;AACnC,QAAA,IAAI;AACF,YAAA,MAAM,QAAQ,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAmC;AACrG,YAAA,MAAM,WAAW,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAEtE;AACD,YAAA,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,oBAAoB,CAAC,GAAG,CAAC,CAAC,OAAO,KAC/B,kBAAkB,CAAC,OAAO,CAAE,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAC5G,CACF;AACD,YAAA,YAAY,GAAG,OAAO,CAAC,IAAI,EAAE;QAC/B;QAAE,OAAO,CAAC,EAAE;AACV,YAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAClB;IACF;AAEA,IAAA,OAAO,CAAC,GAAG,eAAe,EAAE,GAAG,YAAY,CAAC;AAC9C;;;;"}