@b3dotfun/sdk 0.0.73-test.3 → 0.0.74-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (461) hide show
  1. package/dist/cjs/anyspend/react/components/AnySpend.js +75 -50
  2. package/dist/cjs/anyspend/react/components/AnySpendBuySpin.js +9 -10
  3. package/dist/cjs/anyspend/react/components/AnySpendCustom.js +41 -41
  4. package/dist/cjs/anyspend/react/components/AnySpendCustomExactIn.d.ts +1 -0
  5. package/dist/cjs/anyspend/react/components/AnySpendCustomExactIn.js +17 -9
  6. package/dist/cjs/anyspend/react/components/AnySpendStakeB3.js +7 -8
  7. package/dist/cjs/anyspend/react/components/AnySpendStakeB3ExactIn.js +7 -8
  8. package/dist/cjs/anyspend/react/components/AnyspendDepositHype.d.ts +2 -1
  9. package/dist/cjs/anyspend/react/components/AnyspendDepositHype.js +2 -2
  10. package/dist/cjs/anyspend/react/components/common/CryptoPaymentMethod.d.ts +0 -6
  11. package/dist/cjs/anyspend/react/components/common/CryptoPaymentMethod.js +18 -14
  12. package/dist/cjs/anyspend/react/components/common/FeeDetailPanel.js +1 -1
  13. package/dist/cjs/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
  14. package/dist/cjs/anyspend/react/components/common/InsufficientDepositPayment.js +6 -6
  15. package/dist/cjs/anyspend/react/components/common/OrderDetails.js +35 -35
  16. package/dist/cjs/anyspend/react/components/common/OrderDetailsCollapsible.js +1 -2
  17. package/dist/cjs/anyspend/react/components/common/OrderHistory.d.ts +1 -1
  18. package/dist/cjs/anyspend/react/components/common/OrderHistory.js +7 -3
  19. package/dist/cjs/anyspend/react/components/common/OrderHistoryItem.js +1 -1
  20. package/dist/cjs/anyspend/react/components/common/PanelOnramp.js +4 -4
  21. package/dist/cjs/anyspend/react/components/common/PanelOnrampPayment.js +8 -9
  22. package/dist/cjs/anyspend/react/components/common/PointsDetailPanel.js +1 -1
  23. package/dist/cjs/anyspend/react/components/common/RecipientSelection.js +1 -1
  24. package/dist/cjs/anyspend/react/components/common/TransferCryptoDetails.js +2 -3
  25. package/dist/cjs/anyspend/react/components/webview/WebviewOnrampOrderStatus.js +1 -2
  26. package/dist/cjs/anyspend/react/components/webview/WebviewOnrampPayment.js +12 -12
  27. package/dist/cjs/anyspend/react/hooks/useAnyspendFlow.js +4 -5
  28. package/dist/cjs/anyspend/react/hooks/useConnectedWalletDisplay.js +3 -2
  29. package/dist/cjs/anyspend/react/hooks/usePhantomTransfer.js +17 -17
  30. package/dist/cjs/anyspend/react/utils/toast.d.ts +6 -0
  31. package/dist/cjs/anyspend/react/utils/toast.js +9 -0
  32. package/dist/cjs/global-account/react/components/AccountAssets/AccountAssets.js +38 -2
  33. package/dist/cjs/global-account/react/components/AvatarCreator/AvatarCreator.js +2 -3
  34. package/dist/cjs/global-account/react/components/AvatarEditor/AvatarEditor.d.ts +1 -0
  35. package/dist/cjs/global-account/react/components/AvatarEditor/AvatarEditor.js +275 -39
  36. package/dist/cjs/global-account/react/components/B3DynamicModal.js +40 -13
  37. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.d.ts +1 -1
  38. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.js +19 -3
  39. package/dist/cjs/global-account/react/components/Deposit/Deposit.d.ts +1 -0
  40. package/dist/cjs/global-account/react/components/Deposit/Deposit.js +61 -0
  41. package/dist/cjs/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +39 -0
  42. package/dist/cjs/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.js +34 -0
  43. package/dist/cjs/global-account/react/components/LinkAccount/LinkAccount.d.ts +6 -4
  44. package/dist/cjs/global-account/react/components/LinkAccount/LinkAccount.js +104 -283
  45. package/dist/cjs/global-account/react/components/LinkAccount/LinkNewAccount.d.ts +4 -0
  46. package/dist/cjs/global-account/react/components/LinkAccount/LinkNewAccount.js +320 -0
  47. package/dist/cjs/global-account/react/components/LinkAccount/LinkedAccountItem.d.ts +16 -0
  48. package/dist/cjs/global-account/react/components/LinkAccount/LinkedAccountItem.js +44 -0
  49. package/dist/cjs/global-account/react/components/ManageAccount/BottomNavigation.d.ts +2 -0
  50. package/dist/cjs/global-account/react/components/ManageAccount/BottomNavigation.js +23 -0
  51. package/dist/cjs/global-account/react/components/ManageAccount/ContentTokens.js +1 -2
  52. package/dist/cjs/global-account/react/components/ManageAccount/Header.d.ts +3 -0
  53. package/dist/cjs/global-account/react/components/ManageAccount/Header.js +120 -0
  54. package/dist/cjs/global-account/react/components/ManageAccount/HomeActions.d.ts +5 -0
  55. package/dist/cjs/global-account/react/components/ManageAccount/HomeActions.js +43 -0
  56. package/dist/cjs/global-account/react/components/ManageAccount/HomeContent.d.ts +6 -0
  57. package/dist/cjs/global-account/react/components/ManageAccount/HomeContent.js +16 -0
  58. package/dist/cjs/global-account/react/components/ManageAccount/ManageAccount.js +16 -194
  59. package/dist/cjs/global-account/react/components/ManageAccount/NFTContent.d.ts +2 -0
  60. package/dist/cjs/global-account/react/components/ManageAccount/NFTContent.js +15 -0
  61. package/dist/cjs/global-account/react/components/ManageAccount/NotificationChannel.d.ts +16 -0
  62. package/dist/cjs/global-account/react/components/ManageAccount/NotificationChannel.js +13 -0
  63. package/dist/cjs/global-account/react/components/ManageAccount/NotificationsContent.d.ts +8 -0
  64. package/dist/cjs/global-account/react/components/ManageAccount/NotificationsContent.js +152 -0
  65. package/dist/cjs/global-account/react/components/ManageAccount/ProfileSection.d.ts +2 -0
  66. package/dist/cjs/global-account/react/components/ManageAccount/ProfileSection.js +47 -0
  67. package/dist/cjs/global-account/react/components/ManageAccount/SettingsContent.d.ts +7 -0
  68. package/dist/cjs/global-account/react/components/ManageAccount/SettingsContent.js +60 -0
  69. package/dist/cjs/global-account/react/components/ManageAccount/SettingsMenuItem.d.ts +9 -0
  70. package/dist/cjs/global-account/react/components/ManageAccount/SettingsMenuItem.js +8 -0
  71. package/dist/cjs/global-account/react/components/ManageAccount/SettingsProfileCard.d.ts +2 -0
  72. package/dist/cjs/global-account/react/components/ManageAccount/SettingsProfileCard.js +116 -0
  73. package/dist/cjs/global-account/react/components/ManageAccount/TokenBalanceRow.d.ts +3 -3
  74. package/dist/cjs/global-account/react/components/ManageAccount/TokenBalanceRow.js +2 -2
  75. package/dist/cjs/global-account/react/components/ManageAccount/TokenContent.d.ts +2 -0
  76. package/dist/cjs/global-account/react/components/ManageAccount/TokenContent.js +44 -0
  77. package/dist/cjs/global-account/react/components/ManageAccount/channels/DiscordChannel.d.ts +11 -0
  78. package/dist/cjs/global-account/react/components/ManageAccount/channels/DiscordChannel.js +48 -0
  79. package/dist/cjs/global-account/react/components/ManageAccount/channels/EmailChannel.d.ts +11 -0
  80. package/dist/cjs/global-account/react/components/ManageAccount/channels/EmailChannel.js +68 -0
  81. package/dist/cjs/global-account/react/components/ManageAccount/channels/PhoneChannel.d.ts +14 -0
  82. package/dist/cjs/global-account/react/components/ManageAccount/channels/PhoneChannel.js +79 -0
  83. package/dist/cjs/global-account/react/components/ManageAccount/channels/TelegramChannel.d.ts +11 -0
  84. package/dist/cjs/global-account/react/components/ManageAccount/channels/TelegramChannel.js +79 -0
  85. package/dist/cjs/global-account/react/components/ManageAccount/channels/index.d.ts +4 -0
  86. package/dist/cjs/global-account/react/components/ManageAccount/channels/index.js +11 -0
  87. package/dist/cjs/global-account/react/components/ModalHeader/ModalHeader.d.ts +11 -0
  88. package/dist/cjs/global-account/react/components/ModalHeader/ModalHeader.js +12 -0
  89. package/dist/cjs/global-account/react/components/Send/Send.d.ts +5 -0
  90. package/dist/cjs/global-account/react/components/Send/Send.js +195 -0
  91. package/dist/cjs/global-account/react/components/SignInWithB3/SignIn.js +5 -4
  92. package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Flow.js +1 -1
  93. package/dist/cjs/global-account/react/components/Toast/ToastComponents.d.ts +15 -0
  94. package/dist/cjs/global-account/react/components/Toast/ToastComponents.js +54 -0
  95. package/dist/cjs/global-account/react/components/Toast/ToastContext.d.ts +19 -0
  96. package/dist/cjs/global-account/react/components/Toast/ToastContext.js +59 -0
  97. package/dist/cjs/global-account/react/components/Toast/index.d.ts +4 -0
  98. package/dist/cjs/global-account/react/components/Toast/index.js +12 -0
  99. package/dist/cjs/global-account/react/components/Toast/toastApi.d.ts +21 -0
  100. package/dist/cjs/global-account/react/components/Toast/toastApi.js +93 -0
  101. package/dist/cjs/global-account/react/components/WalletImage/WalletImage.d.ts +4 -0
  102. package/dist/cjs/global-account/react/components/WalletImage/WalletImage.js +13 -0
  103. package/dist/cjs/global-account/react/components/icons/BellIcon.d.ts +3 -0
  104. package/dist/cjs/global-account/react/components/icons/BellIcon.js +5 -0
  105. package/dist/cjs/global-account/react/components/icons/ChevronDownIcon.d.ts +2 -0
  106. package/dist/cjs/global-account/react/components/icons/ChevronDownIcon.js +7 -0
  107. package/dist/cjs/global-account/react/components/icons/CopyIcon.d.ts +2 -0
  108. package/dist/cjs/global-account/react/components/icons/CopyIcon.js +7 -0
  109. package/dist/cjs/global-account/react/components/icons/LinkIcon.d.ts +3 -0
  110. package/dist/cjs/global-account/react/components/icons/LinkIcon.js +5 -0
  111. package/dist/cjs/global-account/react/components/icons/LockIcon.d.ts +3 -0
  112. package/dist/cjs/global-account/react/components/icons/LockIcon.js +5 -0
  113. package/dist/cjs/global-account/react/components/icons/WalletIcon.d.ts +2 -0
  114. package/dist/cjs/global-account/react/components/icons/WalletIcon.js +7 -0
  115. package/dist/cjs/global-account/react/components/index.d.ts +10 -4
  116. package/dist/cjs/global-account/react/components/index.js +29 -9
  117. package/dist/cjs/global-account/react/components/ui/Tabs.js +2 -2
  118. package/dist/cjs/global-account/react/components/ui/dialog.js +2 -2
  119. package/dist/cjs/global-account/react/components/ui/drawer.js +1 -1
  120. package/dist/cjs/global-account/react/hooks/index.d.ts +3 -2
  121. package/dist/cjs/global-account/react/hooks/index.js +7 -3
  122. package/dist/cjs/global-account/react/hooks/useAccountWallet.d.ts +1 -0
  123. package/dist/cjs/global-account/react/hooks/useAccountWallet.js +18 -0
  124. package/dist/cjs/global-account/react/hooks/useB3BalanceFromAddresses.js +1 -0
  125. package/dist/cjs/global-account/react/hooks/useChainSwitchWithAction.js +11 -11
  126. package/dist/cjs/global-account/react/hooks/useNativeBalance.js +2 -2
  127. package/dist/cjs/global-account/react/hooks/useNotifications.d.ts +48 -0
  128. package/dist/cjs/global-account/react/hooks/useNotifications.js +189 -0
  129. package/dist/cjs/global-account/react/hooks/useSimBalance.js +3 -3
  130. package/dist/cjs/global-account/react/hooks/useTokenBalanceDirect.d.ts +1 -0
  131. package/dist/cjs/global-account/react/hooks/useTokenBalanceDirect.js +1 -0
  132. package/dist/cjs/global-account/react/hooks/useUnifiedChainSwitchAndExecute.js +17 -17
  133. package/dist/cjs/global-account/react/stores/index.d.ts +1 -0
  134. package/dist/cjs/global-account/react/stores/index.js +3 -1
  135. package/dist/cjs/global-account/react/stores/useModalStore.d.ts +47 -6
  136. package/dist/cjs/global-account/react/stores/useRecentAddressesStore.d.ts +25 -0
  137. package/dist/cjs/global-account/react/stores/useRecentAddressesStore.js +36 -0
  138. package/dist/cjs/global-account/react/utils/index.d.ts +4 -0
  139. package/dist/cjs/global-account/react/utils/index.js +20 -0
  140. package/dist/cjs/global-account/react/utils/notificationsAPI.d.ts +80 -0
  141. package/dist/cjs/global-account/react/utils/notificationsAPI.js +257 -0
  142. package/dist/cjs/global-account/react/utils/profileDisplay.d.ts +3 -0
  143. package/dist/cjs/global-account/react/utils/profileDisplay.js +8 -4
  144. package/dist/cjs/global-account/react/utils/toast.d.ts +6 -0
  145. package/dist/cjs/global-account/react/utils/toast.js +9 -0
  146. package/dist/cjs/shared/constants/chains/supported.d.ts +3 -2
  147. package/dist/cjs/shared/constants/chains/supported.js +4 -0
  148. package/dist/cjs/shared/utils/ipfs.js +10 -3
  149. package/dist/esm/anyspend/react/components/AnySpend.js +67 -42
  150. package/dist/esm/anyspend/react/components/AnySpendBuySpin.js +1 -2
  151. package/dist/esm/anyspend/react/components/AnySpendCustom.js +10 -10
  152. package/dist/esm/anyspend/react/components/AnySpendCustomExactIn.d.ts +1 -0
  153. package/dist/esm/anyspend/react/components/AnySpendCustomExactIn.js +12 -4
  154. package/dist/esm/anyspend/react/components/AnySpendStakeB3.js +1 -2
  155. package/dist/esm/anyspend/react/components/AnySpendStakeB3ExactIn.js +1 -2
  156. package/dist/esm/anyspend/react/components/AnyspendDepositHype.d.ts +2 -1
  157. package/dist/esm/anyspend/react/components/AnyspendDepositHype.js +2 -2
  158. package/dist/esm/anyspend/react/components/common/CryptoPaymentMethod.d.ts +0 -6
  159. package/dist/esm/anyspend/react/components/common/CryptoPaymentMethod.js +9 -5
  160. package/dist/esm/anyspend/react/components/common/FeeDetailPanel.js +1 -1
  161. package/dist/esm/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
  162. package/dist/esm/anyspend/react/components/common/InsufficientDepositPayment.js +1 -1
  163. package/dist/esm/anyspend/react/components/common/OrderDetails.js +2 -2
  164. package/dist/esm/anyspend/react/components/common/OrderDetailsCollapsible.js +1 -2
  165. package/dist/esm/anyspend/react/components/common/OrderHistory.d.ts +1 -1
  166. package/dist/esm/anyspend/react/components/common/OrderHistory.js +6 -5
  167. package/dist/esm/anyspend/react/components/common/OrderHistoryItem.js +2 -2
  168. package/dist/esm/anyspend/react/components/common/PanelOnramp.js +4 -4
  169. package/dist/esm/anyspend/react/components/common/PanelOnrampPayment.js +2 -3
  170. package/dist/esm/anyspend/react/components/common/PointsDetailPanel.js +1 -1
  171. package/dist/esm/anyspend/react/components/common/RecipientSelection.js +1 -1
  172. package/dist/esm/anyspend/react/components/common/TransferCryptoDetails.js +1 -2
  173. package/dist/esm/anyspend/react/components/webview/WebviewOnrampOrderStatus.js +1 -2
  174. package/dist/esm/anyspend/react/components/webview/WebviewOnrampPayment.js +1 -1
  175. package/dist/esm/anyspend/react/hooks/useAnyspendFlow.js +1 -2
  176. package/dist/esm/anyspend/react/hooks/useConnectedWalletDisplay.js +3 -2
  177. package/dist/esm/anyspend/react/hooks/usePhantomTransfer.js +1 -1
  178. package/dist/esm/anyspend/react/utils/toast.d.ts +6 -0
  179. package/dist/esm/anyspend/react/utils/toast.js +5 -0
  180. package/dist/esm/global-account/react/components/AccountAssets/AccountAssets.js +38 -2
  181. package/dist/esm/global-account/react/components/AvatarCreator/AvatarCreator.js +1 -2
  182. package/dist/esm/global-account/react/components/AvatarEditor/AvatarEditor.d.ts +1 -0
  183. package/dist/esm/global-account/react/components/AvatarEditor/AvatarEditor.js +276 -40
  184. package/dist/esm/global-account/react/components/B3DynamicModal.js +37 -13
  185. package/dist/esm/global-account/react/components/B3Provider/B3Provider.d.ts +1 -1
  186. package/dist/esm/global-account/react/components/B3Provider/B3Provider.js +19 -3
  187. package/dist/esm/global-account/react/components/Deposit/Deposit.d.ts +1 -0
  188. package/dist/esm/global-account/react/components/Deposit/Deposit.js +55 -0
  189. package/dist/esm/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +39 -0
  190. package/dist/esm/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.js +31 -0
  191. package/dist/esm/global-account/react/components/LinkAccount/LinkAccount.d.ts +6 -4
  192. package/dist/esm/global-account/react/components/LinkAccount/LinkAccount.js +103 -283
  193. package/dist/esm/global-account/react/components/LinkAccount/LinkNewAccount.d.ts +4 -0
  194. package/dist/esm/global-account/react/components/LinkAccount/LinkNewAccount.js +314 -0
  195. package/dist/esm/global-account/react/components/LinkAccount/LinkedAccountItem.d.ts +16 -0
  196. package/dist/esm/global-account/react/components/LinkAccount/LinkedAccountItem.js +42 -0
  197. package/dist/esm/global-account/react/components/ManageAccount/BottomNavigation.d.ts +2 -0
  198. package/dist/esm/global-account/react/components/ManageAccount/BottomNavigation.js +21 -0
  199. package/dist/esm/global-account/react/components/ManageAccount/ContentTokens.js +1 -2
  200. package/dist/esm/global-account/react/components/ManageAccount/Header.d.ts +3 -0
  201. package/dist/esm/global-account/react/components/ManageAccount/Header.js +81 -0
  202. package/dist/esm/global-account/react/components/ManageAccount/HomeActions.d.ts +5 -0
  203. package/dist/esm/global-account/react/components/ManageAccount/HomeActions.js +41 -0
  204. package/dist/esm/global-account/react/components/ManageAccount/HomeContent.d.ts +6 -0
  205. package/dist/esm/global-account/react/components/ManageAccount/HomeContent.js +10 -0
  206. package/dist/esm/global-account/react/components/ManageAccount/ManageAccount.js +18 -196
  207. package/dist/esm/global-account/react/components/ManageAccount/NFTContent.d.ts +2 -0
  208. package/dist/esm/global-account/react/components/ManageAccount/NFTContent.js +13 -0
  209. package/dist/esm/global-account/react/components/ManageAccount/NotificationChannel.d.ts +16 -0
  210. package/dist/esm/global-account/react/components/ManageAccount/NotificationChannel.js +9 -0
  211. package/dist/esm/global-account/react/components/ManageAccount/NotificationsContent.d.ts +8 -0
  212. package/dist/esm/global-account/react/components/ManageAccount/NotificationsContent.js +147 -0
  213. package/dist/esm/global-account/react/components/ManageAccount/ProfileSection.d.ts +2 -0
  214. package/dist/esm/global-account/react/components/ManageAccount/ProfileSection.js +45 -0
  215. package/dist/esm/global-account/react/components/ManageAccount/SettingsContent.d.ts +7 -0
  216. package/dist/esm/global-account/react/components/ManageAccount/SettingsContent.js +55 -0
  217. package/dist/esm/global-account/react/components/ManageAccount/SettingsMenuItem.d.ts +9 -0
  218. package/dist/esm/global-account/react/components/ManageAccount/SettingsMenuItem.js +6 -0
  219. package/dist/esm/global-account/react/components/ManageAccount/SettingsProfileCard.d.ts +2 -0
  220. package/dist/esm/global-account/react/components/ManageAccount/SettingsProfileCard.js +111 -0
  221. package/dist/esm/global-account/react/components/ManageAccount/TokenBalanceRow.d.ts +3 -3
  222. package/dist/esm/global-account/react/components/ManageAccount/TokenBalanceRow.js +3 -3
  223. package/dist/esm/global-account/react/components/ManageAccount/TokenContent.d.ts +2 -0
  224. package/dist/esm/global-account/react/components/ManageAccount/TokenContent.js +42 -0
  225. package/dist/esm/global-account/react/components/ManageAccount/channels/DiscordChannel.d.ts +11 -0
  226. package/dist/esm/global-account/react/components/ManageAccount/channels/DiscordChannel.js +44 -0
  227. package/dist/esm/global-account/react/components/ManageAccount/channels/EmailChannel.d.ts +11 -0
  228. package/dist/esm/global-account/react/components/ManageAccount/channels/EmailChannel.js +64 -0
  229. package/dist/esm/global-account/react/components/ManageAccount/channels/PhoneChannel.d.ts +14 -0
  230. package/dist/esm/global-account/react/components/ManageAccount/channels/PhoneChannel.js +75 -0
  231. package/dist/esm/global-account/react/components/ManageAccount/channels/TelegramChannel.d.ts +11 -0
  232. package/dist/esm/global-account/react/components/ManageAccount/channels/TelegramChannel.js +75 -0
  233. package/dist/esm/global-account/react/components/ManageAccount/channels/index.d.ts +4 -0
  234. package/dist/esm/global-account/react/components/ManageAccount/channels/index.js +4 -0
  235. package/dist/esm/global-account/react/components/ModalHeader/ModalHeader.d.ts +11 -0
  236. package/dist/esm/global-account/react/components/ModalHeader/ModalHeader.js +10 -0
  237. package/dist/esm/global-account/react/components/Send/Send.d.ts +5 -0
  238. package/dist/esm/global-account/react/components/Send/Send.js +189 -0
  239. package/dist/esm/global-account/react/components/SignInWithB3/SignIn.js +7 -6
  240. package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Flow.js +1 -1
  241. package/dist/esm/global-account/react/components/Toast/ToastComponents.d.ts +15 -0
  242. package/dist/esm/global-account/react/components/Toast/ToastComponents.js +50 -0
  243. package/dist/esm/global-account/react/components/Toast/ToastContext.d.ts +19 -0
  244. package/dist/esm/global-account/react/components/Toast/ToastContext.js +55 -0
  245. package/dist/esm/global-account/react/components/Toast/index.d.ts +4 -0
  246. package/dist/esm/global-account/react/components/Toast/index.js +3 -0
  247. package/dist/esm/global-account/react/components/Toast/toastApi.d.ts +21 -0
  248. package/dist/esm/global-account/react/components/Toast/toastApi.js +89 -0
  249. package/dist/esm/global-account/react/components/WalletImage/WalletImage.d.ts +4 -0
  250. package/dist/esm/global-account/react/components/WalletImage/WalletImage.js +11 -0
  251. package/dist/esm/global-account/react/components/icons/BellIcon.d.ts +3 -0
  252. package/dist/esm/global-account/react/components/icons/BellIcon.js +3 -0
  253. package/dist/esm/global-account/react/components/icons/ChevronDownIcon.d.ts +2 -0
  254. package/dist/esm/global-account/react/components/icons/ChevronDownIcon.js +4 -0
  255. package/dist/esm/global-account/react/components/icons/CopyIcon.d.ts +2 -0
  256. package/dist/esm/global-account/react/components/icons/CopyIcon.js +4 -0
  257. package/dist/esm/global-account/react/components/icons/LinkIcon.d.ts +3 -0
  258. package/dist/esm/global-account/react/components/icons/LinkIcon.js +3 -0
  259. package/dist/esm/global-account/react/components/icons/LockIcon.d.ts +3 -0
  260. package/dist/esm/global-account/react/components/icons/LockIcon.js +3 -0
  261. package/dist/esm/global-account/react/components/icons/WalletIcon.d.ts +2 -0
  262. package/dist/esm/global-account/react/components/icons/WalletIcon.js +4 -0
  263. package/dist/esm/global-account/react/components/index.d.ts +10 -4
  264. package/dist/esm/global-account/react/components/index.js +14 -5
  265. package/dist/esm/global-account/react/components/ui/Tabs.js +2 -2
  266. package/dist/esm/global-account/react/components/ui/dialog.js +2 -2
  267. package/dist/esm/global-account/react/components/ui/drawer.js +1 -1
  268. package/dist/esm/global-account/react/hooks/index.d.ts +3 -2
  269. package/dist/esm/global-account/react/hooks/index.js +3 -2
  270. package/dist/esm/global-account/react/hooks/useAccountWallet.d.ts +1 -0
  271. package/dist/esm/global-account/react/hooks/useAccountWallet.js +17 -0
  272. package/dist/esm/global-account/react/hooks/useB3BalanceFromAddresses.js +1 -0
  273. package/dist/esm/global-account/react/hooks/useChainSwitchWithAction.js +2 -2
  274. package/dist/esm/global-account/react/hooks/useNativeBalance.js +1 -1
  275. package/dist/esm/global-account/react/hooks/useNotifications.d.ts +48 -0
  276. package/dist/esm/global-account/react/hooks/useNotifications.js +186 -0
  277. package/dist/esm/global-account/react/hooks/useSimBalance.js +3 -3
  278. package/dist/esm/global-account/react/hooks/useTokenBalanceDirect.d.ts +1 -0
  279. package/dist/esm/global-account/react/hooks/useTokenBalanceDirect.js +1 -0
  280. package/dist/esm/global-account/react/hooks/useUnifiedChainSwitchAndExecute.js +2 -2
  281. package/dist/esm/global-account/react/stores/index.d.ts +1 -0
  282. package/dist/esm/global-account/react/stores/index.js +1 -0
  283. package/dist/esm/global-account/react/stores/useModalStore.d.ts +47 -6
  284. package/dist/esm/global-account/react/stores/useRecentAddressesStore.d.ts +25 -0
  285. package/dist/esm/global-account/react/stores/useRecentAddressesStore.js +33 -0
  286. package/dist/esm/global-account/react/utils/index.d.ts +4 -0
  287. package/dist/esm/global-account/react/utils/index.js +4 -0
  288. package/dist/esm/global-account/react/utils/notificationsAPI.d.ts +80 -0
  289. package/dist/esm/global-account/react/utils/notificationsAPI.js +254 -0
  290. package/dist/esm/global-account/react/utils/profileDisplay.d.ts +3 -0
  291. package/dist/esm/global-account/react/utils/profileDisplay.js +8 -4
  292. package/dist/esm/global-account/react/utils/toast.d.ts +6 -0
  293. package/dist/esm/global-account/react/utils/toast.js +5 -0
  294. package/dist/esm/shared/constants/chains/supported.d.ts +3 -2
  295. package/dist/esm/shared/constants/chains/supported.js +3 -0
  296. package/dist/esm/shared/utils/ipfs.js +10 -3
  297. package/dist/styles/index.css +1 -1
  298. package/dist/types/anyspend/react/components/AnySpendCustomExactIn.d.ts +1 -0
  299. package/dist/types/anyspend/react/components/AnyspendDepositHype.d.ts +2 -1
  300. package/dist/types/anyspend/react/components/common/CryptoPaymentMethod.d.ts +0 -6
  301. package/dist/types/anyspend/react/components/common/OrderHistory.d.ts +1 -1
  302. package/dist/types/anyspend/react/utils/toast.d.ts +6 -0
  303. package/dist/types/global-account/react/components/AvatarEditor/AvatarEditor.d.ts +1 -0
  304. package/dist/types/global-account/react/components/B3Provider/B3Provider.d.ts +1 -1
  305. package/dist/types/global-account/react/components/Deposit/Deposit.d.ts +1 -0
  306. package/dist/types/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +39 -0
  307. package/dist/types/global-account/react/components/LinkAccount/LinkAccount.d.ts +6 -4
  308. package/dist/types/global-account/react/components/LinkAccount/LinkNewAccount.d.ts +4 -0
  309. package/dist/types/global-account/react/components/LinkAccount/LinkedAccountItem.d.ts +16 -0
  310. package/dist/types/global-account/react/components/ManageAccount/BottomNavigation.d.ts +2 -0
  311. package/dist/types/global-account/react/components/ManageAccount/Header.d.ts +3 -0
  312. package/dist/types/global-account/react/components/ManageAccount/HomeActions.d.ts +5 -0
  313. package/dist/types/global-account/react/components/ManageAccount/HomeContent.d.ts +6 -0
  314. package/dist/types/global-account/react/components/ManageAccount/NFTContent.d.ts +2 -0
  315. package/dist/types/global-account/react/components/ManageAccount/NotificationChannel.d.ts +16 -0
  316. package/dist/types/global-account/react/components/ManageAccount/NotificationsContent.d.ts +8 -0
  317. package/dist/types/global-account/react/components/ManageAccount/ProfileSection.d.ts +2 -0
  318. package/dist/types/global-account/react/components/ManageAccount/SettingsContent.d.ts +7 -0
  319. package/dist/types/global-account/react/components/ManageAccount/SettingsMenuItem.d.ts +9 -0
  320. package/dist/types/global-account/react/components/ManageAccount/SettingsProfileCard.d.ts +2 -0
  321. package/dist/types/global-account/react/components/ManageAccount/TokenBalanceRow.d.ts +3 -3
  322. package/dist/types/global-account/react/components/ManageAccount/TokenContent.d.ts +2 -0
  323. package/dist/types/global-account/react/components/ManageAccount/channels/DiscordChannel.d.ts +11 -0
  324. package/dist/types/global-account/react/components/ManageAccount/channels/EmailChannel.d.ts +11 -0
  325. package/dist/types/global-account/react/components/ManageAccount/channels/PhoneChannel.d.ts +14 -0
  326. package/dist/types/global-account/react/components/ManageAccount/channels/TelegramChannel.d.ts +11 -0
  327. package/dist/types/global-account/react/components/ManageAccount/channels/index.d.ts +4 -0
  328. package/dist/types/global-account/react/components/ModalHeader/ModalHeader.d.ts +11 -0
  329. package/dist/types/global-account/react/components/Send/Send.d.ts +5 -0
  330. package/dist/types/global-account/react/components/Toast/ToastComponents.d.ts +15 -0
  331. package/dist/types/global-account/react/components/Toast/ToastContext.d.ts +19 -0
  332. package/dist/types/global-account/react/components/Toast/index.d.ts +4 -0
  333. package/dist/types/global-account/react/components/Toast/toastApi.d.ts +21 -0
  334. package/dist/types/global-account/react/components/WalletImage/WalletImage.d.ts +4 -0
  335. package/dist/types/global-account/react/components/icons/BellIcon.d.ts +3 -0
  336. package/dist/types/global-account/react/components/icons/ChevronDownIcon.d.ts +2 -0
  337. package/dist/types/global-account/react/components/icons/CopyIcon.d.ts +2 -0
  338. package/dist/types/global-account/react/components/icons/LinkIcon.d.ts +3 -0
  339. package/dist/types/global-account/react/components/icons/LockIcon.d.ts +3 -0
  340. package/dist/types/global-account/react/components/icons/WalletIcon.d.ts +2 -0
  341. package/dist/types/global-account/react/components/index.d.ts +10 -4
  342. package/dist/types/global-account/react/hooks/index.d.ts +3 -2
  343. package/dist/types/global-account/react/hooks/useAccountWallet.d.ts +1 -0
  344. package/dist/types/global-account/react/hooks/useNotifications.d.ts +48 -0
  345. package/dist/types/global-account/react/hooks/useTokenBalanceDirect.d.ts +1 -0
  346. package/dist/types/global-account/react/stores/index.d.ts +1 -0
  347. package/dist/types/global-account/react/stores/useModalStore.d.ts +47 -6
  348. package/dist/types/global-account/react/stores/useRecentAddressesStore.d.ts +25 -0
  349. package/dist/types/global-account/react/utils/index.d.ts +4 -0
  350. package/dist/types/global-account/react/utils/notificationsAPI.d.ts +80 -0
  351. package/dist/types/global-account/react/utils/profileDisplay.d.ts +3 -0
  352. package/dist/types/global-account/react/utils/toast.d.ts +6 -0
  353. package/dist/types/shared/constants/chains/supported.d.ts +3 -2
  354. package/package.json +2 -1
  355. package/src/anyspend/react/components/AnySpend.tsx +213 -173
  356. package/src/anyspend/react/components/AnySpendBuySpin.tsx +2 -1
  357. package/src/anyspend/react/components/AnySpendCustom.tsx +80 -77
  358. package/src/anyspend/react/components/AnySpendCustomExactIn.tsx +20 -4
  359. package/src/anyspend/react/components/AnySpendStakeB3.tsx +2 -1
  360. package/src/anyspend/react/components/AnySpendStakeB3ExactIn.tsx +2 -1
  361. package/src/anyspend/react/components/AnyspendDepositHype.tsx +3 -0
  362. package/src/anyspend/react/components/common/CryptoPaymentMethod.tsx +56 -22
  363. package/src/anyspend/react/components/common/FeeDetailPanel.tsx +1 -1
  364. package/src/anyspend/react/components/common/FiatPaymentMethod.tsx +2 -2
  365. package/src/anyspend/react/components/common/InsufficientDepositPayment.tsx +1 -1
  366. package/src/anyspend/react/components/common/OrderDetails.tsx +6 -2
  367. package/src/anyspend/react/components/common/OrderDetailsCollapsible.tsx +2 -2
  368. package/src/anyspend/react/components/common/OrderHistory.tsx +8 -13
  369. package/src/anyspend/react/components/common/OrderHistoryItem.tsx +69 -25
  370. package/src/anyspend/react/components/common/PanelOnramp.tsx +6 -4
  371. package/src/anyspend/react/components/common/PanelOnrampPayment.tsx +3 -3
  372. package/src/anyspend/react/components/common/PointsDetailPanel.tsx +1 -1
  373. package/src/anyspend/react/components/common/RecipientSelection.tsx +1 -1
  374. package/src/anyspend/react/components/common/TransferCryptoDetails.tsx +2 -2
  375. package/src/anyspend/react/components/webview/WebviewOnrampOrderStatus.tsx +3 -3
  376. package/src/anyspend/react/components/webview/WebviewOnrampPayment.tsx +2 -1
  377. package/src/anyspend/react/hooks/useAnyspendFlow.ts +2 -1
  378. package/src/anyspend/react/hooks/useConnectedWalletDisplay.ts +3 -2
  379. package/src/anyspend/react/hooks/usePhantomTransfer.ts +1 -1
  380. package/src/anyspend/react/utils/toast.ts +6 -0
  381. package/src/global-account/react/components/AccountAssets/AccountAssets.tsx +115 -25
  382. package/src/global-account/react/components/AvatarCreator/AvatarCreator.tsx +2 -2
  383. package/src/global-account/react/components/AvatarEditor/AvatarEditor.tsx +491 -130
  384. package/src/global-account/react/components/B3DynamicModal.tsx +76 -17
  385. package/src/global-account/react/components/B3Provider/B3Provider.tsx +40 -20
  386. package/src/global-account/react/components/Deposit/Deposit.tsx +208 -0
  387. package/src/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.tsx +84 -0
  388. package/src/global-account/react/components/LinkAccount/LinkAccount.tsx +269 -434
  389. package/src/global-account/react/components/LinkAccount/LinkNewAccount.tsx +480 -0
  390. package/src/global-account/react/components/LinkAccount/LinkedAccountItem.tsx +135 -0
  391. package/src/global-account/react/components/ManageAccount/BottomNavigation.tsx +83 -0
  392. package/src/global-account/react/components/ManageAccount/ContentTokens.tsx +2 -1
  393. package/src/global-account/react/components/ManageAccount/Header.tsx +230 -0
  394. package/src/global-account/react/components/ManageAccount/HomeActions.tsx +118 -0
  395. package/src/global-account/react/components/ManageAccount/HomeContent.tsx +42 -0
  396. package/src/global-account/react/components/ManageAccount/ManageAccount.tsx +74 -597
  397. package/src/global-account/react/components/ManageAccount/NFTContent.tsx +24 -0
  398. package/src/global-account/react/components/ManageAccount/NotificationChannel.tsx +94 -0
  399. package/src/global-account/react/components/ManageAccount/NotificationsContent.tsx +268 -0
  400. package/src/global-account/react/components/ManageAccount/ProfileSection.tsx +79 -0
  401. package/src/global-account/react/components/ManageAccount/SettingsContent.tsx +106 -0
  402. package/src/global-account/react/components/ManageAccount/SettingsMenuItem.tsx +31 -0
  403. package/src/global-account/react/components/ManageAccount/SettingsProfileCard.tsx +197 -0
  404. package/src/global-account/react/components/ManageAccount/TokenBalanceRow.tsx +20 -5
  405. package/src/global-account/react/components/ManageAccount/TokenContent.tsx +66 -0
  406. package/src/global-account/react/components/ManageAccount/channels/DiscordChannel.tsx +119 -0
  407. package/src/global-account/react/components/ManageAccount/channels/EmailChannel.tsx +168 -0
  408. package/src/global-account/react/components/ManageAccount/channels/PhoneChannel.tsx +227 -0
  409. package/src/global-account/react/components/ManageAccount/channels/TelegramChannel.tsx +150 -0
  410. package/src/global-account/react/components/ManageAccount/channels/index.ts +4 -0
  411. package/src/global-account/react/components/ModalHeader/ModalHeader.tsx +61 -0
  412. package/src/global-account/react/components/Send/Send.tsx +621 -0
  413. package/src/global-account/react/components/SignInWithB3/SignIn.tsx +13 -12
  414. package/src/global-account/react/components/SignInWithB3/SignInWithB3Flow.tsx +1 -1
  415. package/src/global-account/react/components/Toast/README.md +350 -0
  416. package/src/global-account/react/components/Toast/ToastComponents.tsx +159 -0
  417. package/src/global-account/react/components/Toast/ToastContext.tsx +86 -0
  418. package/src/global-account/react/components/Toast/index.ts +4 -0
  419. package/src/global-account/react/components/Toast/toastApi.ts +98 -0
  420. package/src/global-account/react/components/WalletImage/WalletImage.tsx +12 -0
  421. package/src/global-account/react/components/icons/BellIcon.tsx +15 -0
  422. package/src/global-account/react/components/icons/ChevronDownIcon.tsx +17 -0
  423. package/src/global-account/react/components/icons/CopyIcon.tsx +22 -0
  424. package/src/global-account/react/components/icons/LinkIcon.tsx +15 -0
  425. package/src/global-account/react/components/icons/LockIcon.tsx +15 -0
  426. package/src/global-account/react/components/icons/WalletIcon.tsx +21 -0
  427. package/src/global-account/react/components/index.ts +19 -5
  428. package/src/global-account/react/components/ui/Tabs.tsx +5 -13
  429. package/src/global-account/react/components/ui/dialog.tsx +23 -14
  430. package/src/global-account/react/components/ui/drawer.tsx +1 -1
  431. package/src/global-account/react/hooks/index.ts +5 -1
  432. package/src/global-account/react/hooks/useAccountWallet.tsx +26 -0
  433. package/src/global-account/react/hooks/useB3BalanceFromAddresses.ts +1 -0
  434. package/src/global-account/react/hooks/useChainSwitchWithAction.ts +3 -2
  435. package/src/global-account/react/hooks/useNativeBalance.tsx +2 -1
  436. package/src/global-account/react/hooks/useNotifications.ts +229 -0
  437. package/src/global-account/react/hooks/useSimBalance.ts +3 -3
  438. package/src/global-account/react/hooks/useTokenBalanceDirect.tsx +2 -0
  439. package/src/global-account/react/hooks/useUnifiedChainSwitchAndExecute.ts +3 -2
  440. package/src/global-account/react/stores/index.ts +1 -0
  441. package/src/global-account/react/stores/useModalStore.ts +53 -6
  442. package/src/global-account/react/stores/useRecentAddressesStore.ts +54 -0
  443. package/src/global-account/react/utils/index.ts +4 -0
  444. package/src/global-account/react/utils/notificationsAPI.ts +305 -0
  445. package/src/global-account/react/utils/profileDisplay.ts +12 -4
  446. package/src/global-account/react/utils/toast.ts +6 -0
  447. package/src/shared/constants/chains/supported.ts +4 -0
  448. package/src/shared/utils/ipfs.ts +10 -3
  449. package/src/styles/index.css +12 -1
  450. package/dist/cjs/global-account/react/components/ManageAccount/BalanceContent.d.ts +0 -7
  451. package/dist/cjs/global-account/react/components/ManageAccount/BalanceContent.js +0 -107
  452. package/dist/cjs/global-account/react/components/ProfileEditor/ProfileEditor.d.ts +0 -6
  453. package/dist/cjs/global-account/react/components/ProfileEditor/ProfileEditor.js +0 -151
  454. package/dist/esm/global-account/react/components/ManageAccount/BalanceContent.d.ts +0 -7
  455. package/dist/esm/global-account/react/components/ManageAccount/BalanceContent.js +0 -104
  456. package/dist/esm/global-account/react/components/ProfileEditor/ProfileEditor.d.ts +0 -6
  457. package/dist/esm/global-account/react/components/ProfileEditor/ProfileEditor.js +0 -145
  458. package/dist/types/global-account/react/components/ManageAccount/BalanceContent.d.ts +0 -7
  459. package/dist/types/global-account/react/components/ProfileEditor/ProfileEditor.d.ts +0 -6
  460. package/src/global-account/react/components/ManageAccount/BalanceContent.tsx +0 -258
  461. package/src/global-account/react/components/ProfileEditor/ProfileEditor.tsx +0 -279
@@ -2,12 +2,13 @@
2
2
 
3
3
  import { useAnyspendOrderHistory } from "@b3dotfun/sdk/anyspend/react";
4
4
  import { Button, Skeleton, useAccountWallet } from "@b3dotfun/sdk/global-account/react";
5
- import { ArrowLeft, RefreshCcw } from "lucide-react";
5
+ import ModalHeader from "@b3dotfun/sdk/global-account/react/components/ModalHeader/ModalHeader";
6
+ import { RefreshCcw } from "lucide-react";
6
7
  import { OrderHistoryItem } from "./OrderHistoryItem";
7
8
 
8
9
  interface OrderHistoryProps {
9
10
  mode: "modal" | "page";
10
- onBack: () => void;
11
+ onBack?: () => void;
11
12
  onSelectOrder?: (orderId: string) => void;
12
13
  }
13
14
 
@@ -17,13 +18,7 @@ export function OrderHistory({ mode, onBack, onSelectOrder }: OrderHistoryProps)
17
18
 
18
19
  return (
19
20
  <>
20
- <div className="mb-8 flex w-full items-center gap-3">
21
- <Button onClick={onBack} variant="ghost" size="icon" className="hover:bg-as-surface-secondary">
22
- <ArrowLeft className="h-5 w-5" />
23
- </Button>
24
- <div className="flex-1">
25
- <h3 className="text-as-primary text-2xl font-bold">Order History</h3>
26
- </div>
21
+ <ModalHeader title="Order History" showCloseButton={false} handleBack={onBack} className="w-full">
27
22
  <Button
28
23
  variant="ghost"
29
24
  size="icon"
@@ -34,20 +29,20 @@ export function OrderHistory({ mode, onBack, onSelectOrder }: OrderHistoryProps)
34
29
  >
35
30
  <RefreshCcw className="text-as-secondary hover:text-as-primary h-5 w-5 cursor-pointer transition-all hover:rotate-180" />
36
31
  </Button>
37
- </div>
32
+ </ModalHeader>
38
33
 
39
34
  {isLoadingOrderHistory ? (
40
- <div className="w-full space-y-3">
35
+ <div className="w-full space-y-3 px-5">
41
36
  {[1, 2, 3].map(i => (
42
37
  <Skeleton key={i} className="h-[180px] w-full rounded-2xl" />
43
38
  ))}
44
39
  </div>
45
40
  ) : !orderHistory?.length ? (
46
- <div className="bg-as-surface-secondary w-full rounded-2xl p-12 text-center">
41
+ <div className="bg-as-surface-secondary w-full rounded-2xl p-12 px-5 text-center">
47
42
  <p className="text-as-secondary text-sm">No order history found</p>
48
43
  </div>
49
44
  ) : (
50
- <div className="mb-12 w-full space-y-3">
45
+ <div className="mb-12 w-full px-5 pt-5">
51
46
  {[...orderHistory]
52
47
  .sort((a, b) => b.createdAt - a.createdAt)
53
48
  .map(order => (
@@ -1,11 +1,11 @@
1
1
  import { ALL_CHAINS, getChainName, getStatusDisplay } from "@b3dotfun/sdk/anyspend";
2
+ import { components } from "@b3dotfun/sdk/anyspend/types/api";
2
3
  import { Badge, useIsMobile } from "@b3dotfun/sdk/global-account/react";
3
4
  import { cn } from "@b3dotfun/sdk/shared/utils";
4
5
  import { formatTokenAmount } from "@b3dotfun/sdk/shared/utils/number";
5
6
  import { getVendorDisplayName } from "@b3dotfun/sdk/shared/utils/payment.utils";
6
- import { ArrowRight } from "lucide-react";
7
+ import { ArrowRight, Coins, Image } from "lucide-react";
7
8
  import TimeAgo from "react-timeago";
8
- import { components } from "@b3dotfun/sdk/anyspend/types/api";
9
9
 
10
10
  interface OrderHistoryItemProps {
11
11
  order: components["schemas"]["Order"];
@@ -39,8 +39,8 @@ export function OrderHistoryItem({ order, onSelectOrder, mode }: OrderHistoryIte
39
39
  <div
40
40
  key={`anyspend-${order.id}`}
41
41
  className={cn(
42
- "bg-as-surface-secondary hover:bg-as-surface-tertiary rounded-xl p-4 transition-all",
43
- onSelectOrder && "cursor-pointer",
42
+ "font-inter border-as-border-secondary border-b py-5 font-medium transition-all last:border-b-0",
43
+ onSelectOrder && "hover:bg-as-surface-secondary/50 cursor-pointer",
44
44
  )}
45
45
  onClick={() => onSelectOrder?.(order.id)}
46
46
  >
@@ -49,7 +49,7 @@ export function OrderHistoryItem({ order, onSelectOrder, mode }: OrderHistoryIte
49
49
  <div className="flex items-center gap-2">
50
50
  <div
51
51
  className={cn(
52
- "text-xs font-semibold",
52
+ "text-xs",
53
53
  orderDisplayStatus === "processing" && "text-yellow-600",
54
54
  orderDisplayStatus === "success" && "text-green-600",
55
55
  orderDisplayStatus === "failure" && "text-red-600",
@@ -72,11 +72,22 @@ export function OrderHistoryItem({ order, onSelectOrder, mode }: OrderHistoryIte
72
72
  <div className={cn("flex items-center", isSmallView ? "gap-2" : "gap-4")}>
73
73
  {/* From Section */}
74
74
  <div className={cn("flex min-w-0 flex-1 items-center", isSmallView ? "gap-1.5" : "gap-2")}>
75
- <img
76
- src={order.metadata.srcToken.metadata.logoURI}
77
- alt={order.metadata.srcToken.symbol}
78
- className={cn("shrink-0 rounded-full", isSmallView ? "h-7 w-7" : "h-8 w-8")}
79
- />
75
+ {order.metadata.srcToken.metadata.logoURI ? (
76
+ <img
77
+ src={order.metadata.srcToken.metadata.logoURI}
78
+ alt={order.metadata.srcToken.symbol}
79
+ className={cn("shrink-0 rounded-full", isSmallView ? "h-7 w-7" : "h-8 w-8")}
80
+ />
81
+ ) : (
82
+ <div
83
+ className={cn(
84
+ "flex shrink-0 items-center justify-center rounded-full bg-gray-200",
85
+ isSmallView ? "h-7 w-7" : "h-8 w-8",
86
+ )}
87
+ >
88
+ <Coins className={cn("text-gray-400", isSmallView ? "h-3.5 w-3.5" : "h-4 w-4")} />
89
+ </div>
90
+ )}
80
91
  <div className="min-w-0 flex-1">
81
92
  <div className={cn("text-as-primary truncate font-bold", isSmallView ? "text-xs" : "text-sm")}>
82
93
  {formatTokenAmount(BigInt(order.srcAmount), order.metadata.srcToken.decimals)}{" "}
@@ -96,11 +107,22 @@ export function OrderHistoryItem({ order, onSelectOrder, mode }: OrderHistoryIte
96
107
  <div className={cn("flex min-w-0 flex-1 items-center", isSmallView ? "gap-1.5" : "gap-2")}>
97
108
  {nft ? (
98
109
  <>
99
- <img
100
- src={nft.imageUrl}
101
- alt={nft.name}
102
- className={cn("shrink-0 rounded-full", isSmallView ? "h-7 w-7" : "h-8 w-8")}
103
- />
110
+ {nft.imageUrl ? (
111
+ <img
112
+ src={nft.imageUrl}
113
+ alt={nft.name}
114
+ className={cn("shrink-0 rounded-full", isSmallView ? "h-7 w-7" : "h-8 w-8")}
115
+ />
116
+ ) : (
117
+ <div
118
+ className={cn(
119
+ "flex shrink-0 items-center justify-center rounded-full bg-gray-200",
120
+ isSmallView ? "h-7 w-7" : "h-8 w-8",
121
+ )}
122
+ >
123
+ <Image className={cn("text-gray-400", isSmallView ? "h-3.5 w-3.5" : "h-4 w-4")} />
124
+ </div>
125
+ )}
104
126
  <div className="min-w-0 flex-1">
105
127
  <div className={cn("text-as-primary truncate font-bold", isSmallView ? "text-xs" : "text-sm")}>
106
128
  {nft.name}
@@ -119,11 +141,22 @@ export function OrderHistoryItem({ order, onSelectOrder, mode }: OrderHistoryIte
119
141
  </>
120
142
  ) : tournament ? (
121
143
  <>
122
- <img
123
- src={tournament.imageUrl}
124
- alt={tournament.name}
125
- className={cn("shrink-0 rounded-full", isSmallView ? "h-7 w-7" : "h-8 w-8")}
126
- />
144
+ {tournament.imageUrl ? (
145
+ <img
146
+ src={tournament.imageUrl}
147
+ alt={tournament.name}
148
+ className={cn("shrink-0 rounded-full", isSmallView ? "h-7 w-7" : "h-8 w-8")}
149
+ />
150
+ ) : (
151
+ <div
152
+ className={cn(
153
+ "flex shrink-0 items-center justify-center rounded-full bg-gray-200",
154
+ isSmallView ? "h-7 w-7" : "h-8 w-8",
155
+ )}
156
+ >
157
+ <Image className={cn("text-gray-400", isSmallView ? "h-3.5 w-3.5" : "h-4 w-4")} />
158
+ </div>
159
+ )}
127
160
  <div className="min-w-0 flex-1">
128
161
  <div className={cn("text-as-primary truncate font-bold", isSmallView ? "text-xs" : "text-sm")}>
129
162
  {tournament.name}
@@ -142,11 +175,22 @@ export function OrderHistoryItem({ order, onSelectOrder, mode }: OrderHistoryIte
142
175
  </>
143
176
  ) : (
144
177
  <>
145
- <img
146
- src={dstToken.metadata.logoURI}
147
- alt={dstToken.symbol}
148
- className={cn("shrink-0 rounded-full", isSmallView ? "h-7 w-7" : "h-8 w-8")}
149
- />
178
+ {dstToken.metadata.logoURI ? (
179
+ <img
180
+ src={dstToken.metadata.logoURI}
181
+ alt={dstToken.symbol}
182
+ className={cn("shrink-0 rounded-full", isSmallView ? "h-7 w-7" : "h-8 w-8")}
183
+ />
184
+ ) : (
185
+ <div
186
+ className={cn(
187
+ "flex shrink-0 items-center justify-center rounded-full bg-gray-200",
188
+ isSmallView ? "h-7 w-7" : "h-8 w-8",
189
+ )}
190
+ >
191
+ <Coins className={cn("text-gray-400", isSmallView ? "h-3.5 w-3.5" : "h-4 w-4")} />
192
+ </div>
193
+ )}
150
194
  <div className="min-w-0 flex-1">
151
195
  <div className={cn("text-as-primary truncate font-bold", isSmallView ? "text-xs" : "text-sm")}>
152
196
  {formatTokenAmount(
@@ -2,17 +2,19 @@ import { useCoinbaseOnrampOptions } from "@b3dotfun/sdk/anyspend/react";
2
2
  import { components } from "@b3dotfun/sdk/anyspend/types/api";
3
3
  import { GetQuoteResponse } from "@b3dotfun/sdk/anyspend/types/api_req_res";
4
4
  import { ALL_CHAINS } from "@b3dotfun/sdk/anyspend/utils/chain";
5
- import { Input, useGetGeo, useProfile } from "@b3dotfun/sdk/global-account/react";
5
+ import { Input, toast, useGetGeo, useProfile } from "@b3dotfun/sdk/global-account/react";
6
6
  import { cn, formatUsername } from "@b3dotfun/sdk/shared/utils";
7
7
  import { formatAddress } from "@b3dotfun/sdk/shared/utils/formatAddress";
8
8
  import { ChevronRight, Info, Wallet } from "lucide-react";
9
9
  import { useRef } from "react";
10
- import { toast } from "sonner";
10
+
11
11
  import { useFeatureFlags } from "../../contexts/FeatureFlagsContext";
12
12
  import { FiatPaymentMethod } from "./FiatPaymentMethod";
13
13
  import { OrderTokenAmountFiat } from "./OrderTokenAmountFiat";
14
14
  import { PointsBadge } from "./PointsBadge";
15
15
 
16
+ const ONE_CHAR_WIDTH = 30;
17
+
16
18
  export function PanelOnramp({
17
19
  srcAmountOnRamp,
18
20
  setSrcAmountOnRamp,
@@ -176,9 +178,9 @@ export function PanelOnramp({
176
178
  value={srcAmountOnRamp}
177
179
  onChange={handleAmountChange}
178
180
  placeholder="5"
179
- className="text-as-primary placeholder:text-as-primary/50 h-auto min-w-[70px] border-0 bg-transparent p-0 px-1 pt-1 text-4xl font-bold focus-visible:ring-0 focus-visible:ring-offset-0"
181
+ className="text-as-primary placeholder:text-as-primary/50 h-auto border-0 bg-transparent p-0 px-1 pt-1 text-4xl font-bold focus-visible:ring-0 focus-visible:ring-offset-0"
180
182
  style={{
181
- width: `${Math.max(50, srcAmountOnRamp.length * 34)}px`,
183
+ width: `${Math.max(ONE_CHAR_WIDTH, srcAmountOnRamp.length * ONE_CHAR_WIDTH)}px`,
182
184
  }}
183
185
  />
184
186
  </div>
@@ -1,12 +1,12 @@
1
1
  import { useAnyspendCreateOnrampOrder, useGeoOnrampOptions } from "@b3dotfun/sdk/anyspend/react";
2
2
  import { components } from "@b3dotfun/sdk/anyspend/types/api";
3
3
  import { GetQuoteResponse } from "@b3dotfun/sdk/anyspend/types/api_req_res";
4
- import { Button } from "@b3dotfun/sdk/global-account/react";
4
+ import { Button, toast } from "@b3dotfun/sdk/global-account/react";
5
5
  import centerTruncate from "@b3dotfun/sdk/shared/utils/centerTruncate";
6
6
  import invariant from "invariant";
7
7
  import { ChevronLeft, ChevronRight, Landmark, Loader2 } from "lucide-react";
8
8
  import { motion } from "motion/react";
9
- import { toast } from "sonner";
9
+
10
10
  import { AnySpendFingerprintWrapper, getFingerprintConfig } from "../AnySpendFingerprintWrapper";
11
11
 
12
12
  interface PanelOnrampPaymentProps {
@@ -150,7 +150,7 @@ function PanelOnrampPaymentInner(props: PanelOnrampPaymentProps) {
150
150
  };
151
151
 
152
152
  return (
153
- <div className="mx-auto flex w-full max-w-[460px] flex-col gap-6">
153
+ <div className="mx-auto flex w-full max-w-[460px] flex-col gap-6 px-5 pt-5">
154
154
  {/* Order Summary Section */}
155
155
  <>
156
156
  <h2 className="-mb-3 text-lg font-semibold">Order summary</h2>
@@ -9,7 +9,7 @@ interface PointsDetailPanelProps {
9
9
 
10
10
  export function PointsDetailPanel({ pointsAmount = 0, onBack }: PointsDetailPanelProps) {
11
11
  return (
12
- <div className="mx-auto flex w-[460px] max-w-full flex-col items-center gap-4">
12
+ <div className="mx-auto flex w-[460px] max-w-full flex-col items-center gap-4 px-5">
13
13
  <div className="flex flex-col items-center gap-4 text-center">
14
14
  <h3 className="text-as-primary text-xl font-bold">Earn Points with Every Swap</h3>
15
15
  <p className="text-as-primary/70 text-balance text-sm leading-relaxed">
@@ -88,7 +88,7 @@ export function RecipientSelection({
88
88
  const canConfirm = recipientAddress && isAddressValid;
89
89
 
90
90
  return (
91
- <div className="recipient-selection mx-auto w-[460px] max-w-full">
91
+ <div className="recipient-selection mx-auto w-[460px] max-w-full p-5">
92
92
  <div className="flex flex-col gap-6">
93
93
  {/* Header */}
94
94
  <div className="flex justify-around">
@@ -2,14 +2,14 @@
2
2
 
3
3
  import { ALL_CHAINS, getChainName, getPaymentUrl, RELAY_ETH_ADDRESS } from "@b3dotfun/sdk/anyspend";
4
4
  import { components } from "@b3dotfun/sdk/anyspend/types/api";
5
- import { CopyToClipboard, ShinyButton, TextLoop } from "@b3dotfun/sdk/global-account/react";
5
+ import { CopyToClipboard, ShinyButton, TextLoop, toast } from "@b3dotfun/sdk/global-account/react";
6
6
  import { cn } from "@b3dotfun/sdk/shared/utils";
7
7
  import { formatTokenAmount } from "@b3dotfun/sdk/shared/utils/number";
8
8
  import { WalletCoinbase, WalletMetamask, WalletPhantom, WalletTrust } from "@web3icons/react";
9
9
  import { ChevronLeft, Copy } from "lucide-react";
10
10
  import { QRCodeSVG } from "qrcode.react";
11
11
  import { memo, useEffect, useMemo, useState } from "react";
12
- import { toast } from "sonner";
12
+
13
13
  import { b3 } from "viem/chains";
14
14
  import { CryptoPaymentMethodType } from "./CryptoPaymentMethod";
15
15
  import { OrderDetailsCollapsible } from "./OrderDetailsCollapsible";
@@ -1,10 +1,10 @@
1
1
  import { getChainName } from "@b3dotfun/sdk/anyspend";
2
- import { Badge, useTokenData } from "@b3dotfun/sdk/global-account/react";
2
+ import { Badge, toast, useTokenData } from "@b3dotfun/sdk/global-account/react";
3
3
  import centerTruncate from "@b3dotfun/sdk/shared/utils/centerTruncate";
4
4
  import { CheckIcon, Copy, ExternalLink, Loader2 } from "lucide-react";
5
- import { toast } from "sonner";
6
- import { formatUnits } from "viem";
5
+
7
6
  import { components } from "@b3dotfun/sdk/anyspend/types/api";
7
+ import { formatUnits } from "viem";
8
8
 
9
9
  interface WebviewOnrampOrderStatusProps {
10
10
  order: components["schemas"]["Order"];
@@ -2,13 +2,14 @@ import { getChainName, STRIPE_CONFIG } from "@b3dotfun/sdk/anyspend";
2
2
  import { useAnyspendCreateOnrampOrder, useGeoOnrampOptions, useStripeClientSecret } from "@b3dotfun/sdk/anyspend/react";
3
3
  import { components } from "@b3dotfun/sdk/anyspend/types/api";
4
4
  import { GetQuoteResponse } from "@b3dotfun/sdk/anyspend/types/api_req_res";
5
+ import { toast } from "@b3dotfun/sdk/global-account/react";
5
6
  import centerTruncate from "@b3dotfun/sdk/shared/utils/centerTruncate";
6
7
  import { AddressElement, Elements, PaymentElement, useElements, useStripe } from "@stripe/react-stripe-js";
7
8
  import { loadStripe } from "@stripe/stripe-js";
8
9
  import { Loader2 } from "lucide-react";
9
10
  import { motion } from "motion/react";
10
11
  import { useEffect, useRef, useState } from "react";
11
- import { toast } from "sonner";
12
+
12
13
  import { formatUnits } from "viem";
13
14
  import { AnySpendFingerprintWrapper, getFingerprintConfig } from "../AnySpendFingerprintWrapper";
14
15
 
@@ -8,6 +8,7 @@ import {
8
8
  } from "@b3dotfun/sdk/anyspend/react";
9
9
  import { anyspendService } from "@b3dotfun/sdk/anyspend/services/anyspend";
10
10
  import {
11
+ toast,
11
12
  useAccountWallet,
12
13
  useProfile,
13
14
  useRouter,
@@ -16,7 +17,7 @@ import {
16
17
  } from "@b3dotfun/sdk/global-account/react";
17
18
  import { formatTokenAmount, formatUnits } from "@b3dotfun/sdk/shared/utils/number";
18
19
  import { useEffect, useMemo, useState } from "react";
19
- import { toast } from "sonner";
20
+
20
21
  import { parseUnits } from "viem";
21
22
  import { base, mainnet } from "viem/chains";
22
23
  import { components } from "../../types/api";
@@ -18,7 +18,7 @@ export function useConnectedWalletDisplay(
18
18
  selectedCryptoPaymentMethod?: CryptoPaymentMethodType,
19
19
  ): UseConnectedWalletDisplayResult {
20
20
  const { connectedEOAWallet, connectedSmartWallet } = useAccountWallet();
21
- const { address: wagmiAddress, isConnected: wagmiWalletIsConnected } = useAccount();
21
+ const { address: wagmiAddress } = useAccount();
22
22
 
23
23
  const globalWalletAddress = connectedSmartWallet?.getAccount()?.address;
24
24
 
@@ -35,7 +35,8 @@ export function useConnectedWalletDisplay(
35
35
 
36
36
  // Determine which wallet to show (prefer connectedEOAWallet if both exist and are the same)
37
37
  const shouldShowConnectedEOA = !!connectedEOAWallet;
38
- const shouldShowWagmiWallet = wagmiWalletIsConnected && (!isWalletDuplicated || !connectedEOAWallet);
38
+ // this is disabled because we don't want to display In-App Wallet as a payment method
39
+ const shouldShowWagmiWallet = false; // wagmiWalletIsConnected && (!isWalletDuplicated || !connectedEOAWallet);
39
40
 
40
41
  // Determine which address to use based on payment method
41
42
  let walletAddress: string | undefined;
@@ -1,3 +1,4 @@
1
+ import { toast } from "@b3dotfun/sdk/global-account/react";
1
2
  import {
2
3
  createAssociatedTokenAccountInstruction,
3
4
  createTransferCheckedInstruction,
@@ -5,7 +6,6 @@ import {
5
6
  } from "@solana/spl-token";
6
7
  import { ComputeBudgetProgram, Connection, PublicKey, SystemProgram, Transaction } from "@solana/web3.js";
7
8
  import { useCallback, useMemo } from "react";
8
- import { toast } from "sonner";
9
9
 
10
10
  interface UsePhantomTransferParams {
11
11
  /** RPC endpoint URL for Solana network */
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Re-export toast from global-account for consistency
3
+ * This allows anyspend components to continue using the same toast API
4
+ */
5
+ export { toast } from "@b3dotfun/sdk/global-account/react/components/Toast/toastApi";
6
+ export type { ToastItem, ToastType } from "@b3dotfun/sdk/global-account/react/components/Toast/ToastContext";
@@ -1,16 +1,55 @@
1
- import { SimpleHashNFTResponse } from "@b3dotfun/sdk/global-account/types/simplehash.types";
1
+ import { NFT, SimpleHashNFTResponse } from "@b3dotfun/sdk/global-account/types/simplehash.types";
2
+ import { useState } from "react";
2
3
 
3
4
  interface AccountAssetsProps {
4
5
  nfts: SimpleHashNFTResponse;
5
6
  isLoading?: boolean;
6
7
  }
7
8
 
9
+ interface GroupedNFTs {
10
+ collection_id: string;
11
+ collection_name: string;
12
+ collection_image: string;
13
+ nfts: NFT[];
14
+ }
15
+
8
16
  export function AccountAssets({ nfts, isLoading }: AccountAssetsProps) {
17
+ // Initialize with all collections expanded
18
+ // Group NFTs by collection
19
+ const groupedNFTs = nfts?.nfts?.reduce(
20
+ (acc, nft) => {
21
+ const collectionId = nft.collection?.collection_id || "unknown";
22
+ if (!acc[collectionId]) {
23
+ acc[collectionId] = {
24
+ collection_id: collectionId,
25
+ collection_name: nft.collection?.name || "Unknown Collection",
26
+ collection_image: nft.collection?.image_url || nft.previews?.image_small_url || "",
27
+ nfts: [],
28
+ };
29
+ }
30
+ acc[collectionId].nfts.push(nft);
31
+ return acc;
32
+ },
33
+ {} as Record<string, GroupedNFTs>,
34
+ );
35
+
36
+ const collections = Object.values(groupedNFTs || {});
37
+
38
+ const [expandedCollections, setExpandedCollections] = useState<Set<string>>(
39
+ () => new Set(collections.map(c => c.collection_id)),
40
+ );
41
+
9
42
  if (isLoading) {
10
43
  return (
11
- <div className="grid animate-pulse grid-cols-2 gap-4">
12
- {[...Array(4)].map((_, i) => (
13
- <div key={i} className="bg-b3-react-muted aspect-square rounded-lg" />
44
+ <div className="flex flex-col gap-3">
45
+ {[...Array(2)].map((_, i) => (
46
+ <div key={i} className="animate-pulse">
47
+ <div className="bg-b3-react-muted mb-3 h-6 w-48 rounded" />
48
+ <div className="flex gap-3">
49
+ <div className="bg-b3-react-muted h-[98px] w-[98px] shrink-0 rounded-lg" />
50
+ <div className="bg-b3-react-muted h-[98px] w-[98px] shrink-0 rounded-lg" />
51
+ </div>
52
+ </div>
14
53
  ))}
15
54
  </div>
16
55
  );
@@ -20,29 +59,80 @@ export function AccountAssets({ nfts, isLoading }: AccountAssetsProps) {
20
59
  return <div className="text-b3-react-muted-foreground py-8 text-center">No NFTs found</div>;
21
60
  }
22
61
 
62
+ const toggleCollection = (collectionId: string) => {
63
+ setExpandedCollections(prev => {
64
+ const next = new Set(prev);
65
+ if (next.has(collectionId)) {
66
+ next.delete(collectionId);
67
+ } else {
68
+ next.add(collectionId);
69
+ }
70
+ return next;
71
+ });
72
+ };
73
+
23
74
  return (
24
- <div className="grid grid-cols-2 gap-4">
25
- {nfts.nfts.map(nft => (
26
- <div key={nft.nft_id} className="group relative aspect-square overflow-hidden">
27
- <div className="relative h-full w-full overflow-hidden rounded-xl">
28
- <img
29
- src={
30
- nft.previews?.image_medium_url || nft.extra_metadata?.image_original_url || nft.collection?.image_url
31
- }
32
- alt={nft.name || "NFT"}
33
- className="h-full w-full rounded-xl object-cover"
34
- />
35
- <div className="absolute inset-0 flex flex-col justify-end bg-gradient-to-t from-black from-35% via-black/70 to-transparent p-3 opacity-0 transition-all duration-200 ease-in-out group-hover:opacity-100">
36
- <p className="font-neue-montreal-bold text-[16px] text-white drop-shadow-[0_1px_2px_rgba(0,0,0,1)]">
37
- {nft.name || `#${nft.token_id}`}
38
- </p>
39
- <p className="font-neue-montreal-bold text-sm text-white/95 drop-shadow-[0_1px_2px_rgba(0,0,0,1)]">
40
- {nft.collection?.name}
41
- </p>
42
- </div>
75
+ <div className="flex flex-col gap-3 px-4">
76
+ {collections.map(collection => {
77
+ const isExpanded = expandedCollections.has(collection.collection_id);
78
+
79
+ return (
80
+ <div key={collection.collection_id} className="flex flex-col gap-3">
81
+ {/* Collection Header */}
82
+ <button
83
+ onClick={() => toggleCollection(collection.collection_id)}
84
+ className="flex w-full items-center justify-between"
85
+ >
86
+ <div className="flex items-center gap-1">
87
+ {collection.collection_image && (
88
+ <img
89
+ src={collection.collection_image}
90
+ alt={collection.collection_name}
91
+ className="h-5 w-5 shrink-0 rounded object-cover"
92
+ />
93
+ )}
94
+ <p className="font-neue-montreal-medium text-[14px] text-[#3f3f46]">
95
+ {collection.collection_name} ({collection.nfts.length})
96
+ </p>
97
+ </div>
98
+ <svg
99
+ className={`h-[18px] w-[18px] shrink-0 transition-transform ${isExpanded ? "rotate-180" : ""}`}
100
+ viewBox="0 0 18 18"
101
+ fill="none"
102
+ xmlns="http://www.w3.org/2000/svg"
103
+ >
104
+ <path
105
+ d="M4.5 6.75L9 11.25L13.5 6.75"
106
+ stroke="#51525C"
107
+ strokeWidth="1.5"
108
+ strokeLinecap="round"
109
+ strokeLinejoin="round"
110
+ />
111
+ </svg>
112
+ </button>
113
+
114
+ {/* NFT Grid */}
115
+ {isExpanded && (
116
+ <div className="flex gap-3 overflow-x-auto">
117
+ {collection.nfts.map(nft => (
118
+ <div key={nft.nft_id} className="relative h-[98px] w-[98px] shrink-0 overflow-hidden rounded-lg">
119
+ <img
120
+ src={
121
+ nft.previews?.image_medium_url ||
122
+ nft.extra_metadata?.image_original_url ||
123
+ nft.collection?.image_url ||
124
+ ""
125
+ }
126
+ alt={nft.name || "NFT"}
127
+ className="h-full w-full object-cover"
128
+ />
129
+ </div>
130
+ ))}
131
+ </div>
132
+ )}
43
133
  </div>
44
- </div>
45
- ))}
134
+ );
135
+ })}
46
136
  </div>
47
137
  );
48
138
  }
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import { useProfile } from "@b3dotfun/sdk/global-account/react";
3
+ import { toast, useProfile } from "@b3dotfun/sdk/global-account/react";
4
4
  import { useRPMToken } from "@b3dotfun/sdk/global-account/react/hooks/useRPMToken";
5
5
  import { updateAvatar } from "@b3dotfun/sdk/global-account/react/utils/updateAvatar";
6
6
  import { cn } from "@b3dotfun/sdk/shared/utils/cn";
@@ -11,7 +11,7 @@ import {
11
11
  AvatarExportedEvent,
12
12
  } from "@readyplayerme/react-avatar-creator";
13
13
  import { useState } from "react";
14
- import { toast } from "sonner";
14
+
15
15
  import { useActiveAccount } from "thirdweb/react";
16
16
 
17
17
  const debug = debugB3React("AvatarCreator");