@b3dotfun/sdk 0.0.23 → 0.0.24-alpha.1

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 (303) hide show
  1. package/dist/cjs/anyspend/react/components/AnySpend.js +6 -9
  2. package/dist/cjs/anyspend/react/components/AnySpendBondKit.js +2 -2
  3. package/dist/cjs/anyspend/react/components/AnySpendBuySpin.js +35 -28
  4. package/dist/cjs/anyspend/react/components/AnySpendCustom.js +5 -5
  5. package/dist/cjs/anyspend/react/components/AnySpendStakeB3.js +35 -28
  6. package/dist/cjs/anyspend/react/components/common/Accordion.d.ts +7 -0
  7. package/dist/cjs/anyspend/react/components/common/Accordion.js +53 -0
  8. package/dist/cjs/anyspend/react/components/common/ConnectWalletPayment.js +3 -22
  9. package/dist/cjs/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
  10. package/dist/cjs/anyspend/react/components/common/OrderDetails.js +76 -83
  11. package/dist/cjs/anyspend/react/components/common/OrderStatus.js +1 -1
  12. package/dist/cjs/anyspend/react/components/common/PanelOnramp.js +4 -3
  13. package/dist/cjs/anyspend/react/components/common/PanelOnrampPayment.js +1 -5
  14. package/dist/cjs/anyspend/react/components/common/StepProgress.js +2 -2
  15. package/dist/cjs/anyspend/react/components/common/TokenBalance.js +1 -1
  16. package/dist/cjs/anyspend/react/hooks/useGeoOnrampOptions.d.ts +0 -1
  17. package/dist/cjs/anyspend/react/hooks/useGeoOnrampOptions.js +2 -4
  18. package/dist/cjs/anyspend/react/hooks/useSigMint.d.ts +2 -2
  19. package/dist/cjs/anyspend/react/hooks/useStripeSupport.d.ts +0 -1
  20. package/dist/cjs/anyspend/react/hooks/useStripeSupport.js +0 -1
  21. package/dist/cjs/anyspend/utils/chain.js +1 -1
  22. package/dist/cjs/bondkit/abis/BondkitTokenABI.d.ts +1020 -0
  23. package/dist/cjs/bondkit/abis/BondkitTokenABI.js +1332 -0
  24. package/dist/cjs/bondkit/abis/BondkitTokenFactoryABI.d.ts +391 -0
  25. package/dist/cjs/bondkit/abis/BondkitTokenFactoryABI.js +514 -0
  26. package/dist/cjs/bondkit/abis/index.d.ts +2 -0
  27. package/dist/cjs/bondkit/abis/index.js +18 -0
  28. package/dist/cjs/bondkit/bondkitToken.d.ts +68 -0
  29. package/dist/cjs/bondkit/bondkitToken.js +456 -0
  30. package/dist/cjs/bondkit/bondkitTokenFactory.d.ts +60 -0
  31. package/dist/cjs/bondkit/bondkitTokenFactory.js +274 -0
  32. package/dist/cjs/bondkit/components/TradingView.d.ts +3 -0
  33. package/dist/cjs/bondkit/components/TradingView.js +296 -0
  34. package/dist/cjs/bondkit/components/config/cdn.d.ts +42 -0
  35. package/dist/cjs/bondkit/components/config/cdn.js +63 -0
  36. package/dist/cjs/bondkit/components/index.d.ts +5 -0
  37. package/dist/cjs/bondkit/components/index.js +25 -0
  38. package/dist/cjs/bondkit/components/types.d.ts +8 -0
  39. package/dist/cjs/bondkit/components/types.js +5 -0
  40. package/dist/cjs/bondkit/components/utils/cdn-loader.d.ts +24 -0
  41. package/dist/cjs/bondkit/components/utils/cdn-loader.js +73 -0
  42. package/dist/cjs/bondkit/components/utils/format.d.ts +4 -0
  43. package/dist/cjs/bondkit/components/utils/format.js +31 -0
  44. package/dist/cjs/bondkit/config.d.ts +10 -0
  45. package/dist/cjs/bondkit/config.js +18 -0
  46. package/dist/cjs/bondkit/constants.d.ts +3 -0
  47. package/dist/cjs/bondkit/constants.js +5 -0
  48. package/dist/cjs/bondkit/index.d.ts +7 -0
  49. package/dist/cjs/bondkit/index.js +33 -0
  50. package/dist/cjs/bondkit/json_abis/BondkitABI.json +1329 -0
  51. package/dist/cjs/bondkit/json_abis/BondkitFactoryABI.json +511 -0
  52. package/dist/cjs/bondkit/json_abis/index.d.ts +3 -0
  53. package/dist/cjs/bondkit/json_abis/index.js +10 -0
  54. package/dist/cjs/bondkit/json_abis/index.ts +4 -0
  55. package/dist/cjs/bondkit/types.d.ts +77 -0
  56. package/dist/cjs/bondkit/types.js +11 -0
  57. package/dist/cjs/global-account/react/components/B3DynamicModal.js +14 -16
  58. package/dist/cjs/global-account/react/components/ManageAccount/ManageAccount.js +31 -20
  59. package/dist/cjs/global-account/react/components/MintButton/MintButton.js +0 -1
  60. package/dist/cjs/global-account/react/components/SendERC20Button/SendERC20Button.d.ts +13 -0
  61. package/dist/cjs/global-account/react/components/SendERC20Button/SendERC20Button.js +33 -0
  62. package/dist/cjs/global-account/react/components/SendETHButton/SendETHButton.d.ts +12 -0
  63. package/dist/cjs/global-account/react/components/SendETHButton/SendETHButton.js +23 -0
  64. package/dist/cjs/global-account/react/components/SignInWithB3/SignIn.js +4 -2
  65. package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Flow.js +2 -2
  66. package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Privy.js +1 -1
  67. package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStep.js +4 -4
  68. package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStepCustom.js +2 -2
  69. package/dist/cjs/global-account/react/components/custom/CopyToClipboard.d.ts +2 -1
  70. package/dist/cjs/global-account/react/components/custom/CopyToClipboard.js +3 -2
  71. package/dist/cjs/global-account/react/components/icons/BankIcon.d.ts +9 -0
  72. package/dist/cjs/global-account/react/components/icons/BankIcon.js +8 -0
  73. package/dist/cjs/global-account/react/components/icons/EditIcon.d.ts +9 -0
  74. package/dist/cjs/global-account/react/components/icons/EditIcon.js +8 -0
  75. package/dist/cjs/global-account/react/components/icons/SignOutIcon.d.ts +9 -0
  76. package/dist/cjs/global-account/react/components/icons/SignOutIcon.js +8 -0
  77. package/dist/cjs/global-account/react/components/icons/SwapIcon.d.ts +9 -0
  78. package/dist/cjs/global-account/react/components/icons/SwapIcon.js +8 -0
  79. package/dist/cjs/global-account/react/components/index.d.ts +2 -0
  80. package/dist/cjs/global-account/react/components/index.js +8 -2
  81. package/dist/cjs/global-account/react/components/ui/scroll-area.js +1 -1
  82. package/dist/cjs/global-account/react/components/ui/tooltip.d.ts +1 -1
  83. package/dist/cjs/global-account/react/hooks/index.d.ts +2 -1
  84. package/dist/cjs/global-account/react/hooks/index.js +18 -3
  85. package/dist/cjs/global-account/react/hooks/useAccountWallet.js +8 -0
  86. package/dist/cjs/global-account/react/hooks/useAuthentication.js +4 -4
  87. package/dist/cjs/global-account/react/hooks/useB3BalanceFromAddresses.d.ts +6 -0
  88. package/dist/cjs/global-account/react/hooks/useB3BalanceFromAddresses.js +11 -0
  89. package/dist/cjs/global-account/react/hooks/useChainSwitchWithAction.d.ts +1 -2
  90. package/dist/cjs/global-account/react/hooks/useChainSwitchWithAction.js +2 -2
  91. package/dist/cjs/global-account/react/hooks/useFirstEOA.js +9 -7
  92. package/dist/cjs/global-account/react/hooks/useNativeBalance.d.ts +6 -0
  93. package/dist/cjs/global-account/react/hooks/useNativeBalance.js +39 -6
  94. package/dist/cjs/global-account/react/hooks/useTokenPrice.d.ts +10 -0
  95. package/dist/cjs/global-account/react/hooks/useTokenPrice.js +81 -2
  96. package/dist/cjs/global-account/react/hooks/useUnifiedChainSwitchAndExecute.d.ts +11 -0
  97. package/dist/cjs/global-account/react/hooks/useUnifiedChainSwitchAndExecute.js +160 -0
  98. package/dist/cjs/shared/constants/chains/supported.d.ts +4 -0
  99. package/dist/cjs/shared/constants/chains/supported.js +11 -0
  100. package/dist/cjs/shared/generated/chain-networks.json +1 -1
  101. package/dist/esm/anyspend/react/components/AnySpend.js +6 -9
  102. package/dist/esm/anyspend/react/components/AnySpendBondKit.js +2 -2
  103. package/dist/esm/anyspend/react/components/AnySpendBuySpin.js +37 -30
  104. package/dist/esm/anyspend/react/components/AnySpendCustom.js +5 -5
  105. package/dist/esm/anyspend/react/components/AnySpendStakeB3.js +37 -30
  106. package/dist/esm/anyspend/react/components/common/Accordion.d.ts +7 -0
  107. package/dist/esm/anyspend/react/components/common/Accordion.js +14 -0
  108. package/dist/esm/anyspend/react/components/common/ConnectWalletPayment.js +3 -22
  109. package/dist/esm/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
  110. package/dist/esm/anyspend/react/components/common/OrderDetails.js +79 -86
  111. package/dist/esm/anyspend/react/components/common/OrderStatus.js +1 -1
  112. package/dist/esm/anyspend/react/components/common/PanelOnramp.js +5 -4
  113. package/dist/esm/anyspend/react/components/common/PanelOnrampPayment.js +1 -5
  114. package/dist/esm/anyspend/react/components/common/StepProgress.js +2 -2
  115. package/dist/esm/anyspend/react/components/common/TokenBalance.js +1 -1
  116. package/dist/esm/anyspend/react/hooks/useGeoOnrampOptions.d.ts +0 -1
  117. package/dist/esm/anyspend/react/hooks/useGeoOnrampOptions.js +2 -4
  118. package/dist/esm/anyspend/react/hooks/useSigMint.d.ts +2 -2
  119. package/dist/esm/anyspend/react/hooks/useStripeSupport.d.ts +0 -1
  120. package/dist/esm/anyspend/react/hooks/useStripeSupport.js +0 -1
  121. package/dist/esm/anyspend/utils/chain.js +1 -1
  122. package/dist/esm/bondkit/abis/BondkitTokenABI.d.ts +1020 -0
  123. package/dist/esm/bondkit/abis/BondkitTokenABI.js +1329 -0
  124. package/dist/esm/bondkit/abis/BondkitTokenFactoryABI.d.ts +391 -0
  125. package/dist/esm/bondkit/abis/BondkitTokenFactoryABI.js +511 -0
  126. package/dist/esm/bondkit/abis/index.d.ts +2 -0
  127. package/dist/esm/bondkit/abis/index.js +2 -0
  128. package/dist/esm/bondkit/bondkitToken.d.ts +68 -0
  129. package/dist/esm/bondkit/bondkitToken.js +452 -0
  130. package/dist/esm/bondkit/bondkitTokenFactory.d.ts +60 -0
  131. package/dist/esm/bondkit/bondkitTokenFactory.js +270 -0
  132. package/dist/esm/bondkit/components/TradingView.d.ts +3 -0
  133. package/dist/esm/bondkit/components/TradingView.js +294 -0
  134. package/dist/esm/bondkit/components/config/cdn.d.ts +42 -0
  135. package/dist/esm/bondkit/components/config/cdn.js +55 -0
  136. package/dist/esm/bondkit/components/index.d.ts +5 -0
  137. package/dist/esm/bondkit/components/index.js +4 -0
  138. package/dist/esm/bondkit/components/types.d.ts +8 -0
  139. package/dist/esm/bondkit/components/types.js +4 -0
  140. package/dist/esm/bondkit/components/utils/cdn-loader.d.ts +24 -0
  141. package/dist/esm/bondkit/components/utils/cdn-loader.js +66 -0
  142. package/dist/esm/bondkit/components/utils/format.d.ts +4 -0
  143. package/dist/esm/bondkit/components/utils/format.js +28 -0
  144. package/dist/esm/bondkit/config.d.ts +10 -0
  145. package/dist/esm/bondkit/config.js +14 -0
  146. package/dist/esm/bondkit/constants.d.ts +3 -0
  147. package/dist/esm/bondkit/constants.js +2 -0
  148. package/dist/esm/bondkit/index.d.ts +7 -0
  149. package/dist/esm/bondkit/index.js +12 -0
  150. package/dist/esm/bondkit/json_abis/BondkitABI.json +1329 -0
  151. package/dist/esm/bondkit/json_abis/BondkitFactoryABI.json +511 -0
  152. package/dist/esm/bondkit/json_abis/index.d.ts +3 -0
  153. package/dist/esm/bondkit/json_abis/index.js +3 -0
  154. package/dist/esm/bondkit/json_abis/index.ts +4 -0
  155. package/dist/esm/bondkit/types.d.ts +77 -0
  156. package/dist/esm/bondkit/types.js +8 -0
  157. package/dist/esm/global-account/react/components/B3DynamicModal.js +14 -16
  158. package/dist/esm/global-account/react/components/ManageAccount/ManageAccount.js +33 -22
  159. package/dist/esm/global-account/react/components/MintButton/MintButton.js +0 -1
  160. package/dist/esm/global-account/react/components/SendERC20Button/SendERC20Button.d.ts +13 -0
  161. package/dist/esm/global-account/react/components/SendERC20Button/SendERC20Button.js +30 -0
  162. package/dist/esm/global-account/react/components/SendETHButton/SendETHButton.d.ts +12 -0
  163. package/dist/esm/global-account/react/components/SendETHButton/SendETHButton.js +20 -0
  164. package/dist/esm/global-account/react/components/SignInWithB3/SignIn.js +4 -2
  165. package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Flow.js +2 -2
  166. package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Privy.js +1 -1
  167. package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStep.js +4 -4
  168. package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStepCustom.js +2 -2
  169. package/dist/esm/global-account/react/components/custom/CopyToClipboard.d.ts +2 -1
  170. package/dist/esm/global-account/react/components/custom/CopyToClipboard.js +4 -3
  171. package/dist/esm/global-account/react/components/icons/BankIcon.d.ts +9 -0
  172. package/dist/esm/global-account/react/components/icons/BankIcon.js +5 -0
  173. package/dist/esm/global-account/react/components/icons/EditIcon.d.ts +9 -0
  174. package/dist/esm/global-account/react/components/icons/EditIcon.js +5 -0
  175. package/dist/esm/global-account/react/components/icons/SignOutIcon.d.ts +9 -0
  176. package/dist/esm/global-account/react/components/icons/SignOutIcon.js +5 -0
  177. package/dist/esm/global-account/react/components/icons/SwapIcon.d.ts +9 -0
  178. package/dist/esm/global-account/react/components/icons/SwapIcon.js +5 -0
  179. package/dist/esm/global-account/react/components/index.d.ts +2 -0
  180. package/dist/esm/global-account/react/components/index.js +4 -0
  181. package/dist/esm/global-account/react/components/ui/scroll-area.js +1 -1
  182. package/dist/esm/global-account/react/components/ui/tooltip.d.ts +1 -1
  183. package/dist/esm/global-account/react/hooks/index.d.ts +2 -1
  184. package/dist/esm/global-account/react/hooks/index.js +2 -1
  185. package/dist/esm/global-account/react/hooks/useAccountWallet.js +8 -0
  186. package/dist/esm/global-account/react/hooks/useAuthentication.js +4 -4
  187. package/dist/esm/global-account/react/hooks/useB3BalanceFromAddresses.d.ts +6 -0
  188. package/dist/esm/global-account/react/hooks/useB3BalanceFromAddresses.js +11 -0
  189. package/dist/esm/global-account/react/hooks/useChainSwitchWithAction.d.ts +1 -2
  190. package/dist/esm/global-account/react/hooks/useChainSwitchWithAction.js +2 -2
  191. package/dist/esm/global-account/react/hooks/useFirstEOA.js +9 -7
  192. package/dist/esm/global-account/react/hooks/useNativeBalance.d.ts +6 -0
  193. package/dist/esm/global-account/react/hooks/useNativeBalance.js +39 -6
  194. package/dist/esm/global-account/react/hooks/useTokenPrice.d.ts +10 -0
  195. package/dist/esm/global-account/react/hooks/useTokenPrice.js +78 -3
  196. package/dist/esm/global-account/react/hooks/useUnifiedChainSwitchAndExecute.d.ts +11 -0
  197. package/dist/esm/global-account/react/hooks/useUnifiedChainSwitchAndExecute.js +154 -0
  198. package/dist/esm/shared/constants/chains/supported.d.ts +4 -0
  199. package/dist/esm/shared/constants/chains/supported.js +10 -0
  200. package/dist/esm/shared/generated/chain-networks.json +1 -1
  201. package/dist/styles/index.css +1 -1
  202. package/dist/types/anyspend/react/components/common/Accordion.d.ts +7 -0
  203. package/dist/types/anyspend/react/hooks/useGeoOnrampOptions.d.ts +0 -1
  204. package/dist/types/anyspend/react/hooks/useSigMint.d.ts +2 -2
  205. package/dist/types/anyspend/react/hooks/useStripeSupport.d.ts +0 -1
  206. package/dist/types/bondkit/abis/BondkitTokenABI.d.ts +1020 -0
  207. package/dist/types/bondkit/abis/BondkitTokenFactoryABI.d.ts +391 -0
  208. package/dist/types/bondkit/abis/index.d.ts +2 -0
  209. package/dist/types/bondkit/bondkitToken.d.ts +68 -0
  210. package/dist/types/bondkit/bondkitTokenFactory.d.ts +60 -0
  211. package/dist/types/bondkit/components/TradingView.d.ts +3 -0
  212. package/dist/types/bondkit/components/config/cdn.d.ts +42 -0
  213. package/dist/types/bondkit/components/index.d.ts +5 -0
  214. package/dist/types/bondkit/components/types.d.ts +8 -0
  215. package/dist/types/bondkit/components/utils/cdn-loader.d.ts +24 -0
  216. package/dist/types/bondkit/components/utils/format.d.ts +4 -0
  217. package/dist/types/bondkit/config.d.ts +10 -0
  218. package/dist/types/bondkit/constants.d.ts +3 -0
  219. package/dist/types/bondkit/index.d.ts +7 -0
  220. package/dist/types/bondkit/json_abis/index.d.ts +3 -0
  221. package/dist/types/bondkit/types.d.ts +77 -0
  222. package/dist/types/global-account/react/components/SendERC20Button/SendERC20Button.d.ts +13 -0
  223. package/dist/types/global-account/react/components/SendETHButton/SendETHButton.d.ts +12 -0
  224. package/dist/types/global-account/react/components/custom/CopyToClipboard.d.ts +2 -1
  225. package/dist/types/global-account/react/components/icons/BankIcon.d.ts +9 -0
  226. package/dist/types/global-account/react/components/icons/EditIcon.d.ts +9 -0
  227. package/dist/types/global-account/react/components/icons/SignOutIcon.d.ts +9 -0
  228. package/dist/types/global-account/react/components/icons/SwapIcon.d.ts +9 -0
  229. package/dist/types/global-account/react/components/index.d.ts +2 -0
  230. package/dist/types/global-account/react/components/ui/tooltip.d.ts +1 -1
  231. package/dist/types/global-account/react/hooks/index.d.ts +2 -1
  232. package/dist/types/global-account/react/hooks/useB3BalanceFromAddresses.d.ts +6 -0
  233. package/dist/types/global-account/react/hooks/useChainSwitchWithAction.d.ts +1 -2
  234. package/dist/types/global-account/react/hooks/useNativeBalance.d.ts +6 -0
  235. package/dist/types/global-account/react/hooks/useTokenPrice.d.ts +10 -0
  236. package/dist/types/global-account/react/hooks/useUnifiedChainSwitchAndExecute.d.ts +11 -0
  237. package/dist/types/shared/constants/chains/supported.d.ts +4 -0
  238. package/package.json +43 -7
  239. package/src/anyspend/react/components/AnySpend.tsx +6 -24
  240. package/src/anyspend/react/components/AnySpendBondKit.tsx +2 -2
  241. package/src/anyspend/react/components/AnySpendBuySpin.tsx +42 -32
  242. package/src/anyspend/react/components/AnySpendCustom.tsx +8 -14
  243. package/src/anyspend/react/components/AnySpendStakeB3.tsx +44 -34
  244. package/src/anyspend/react/components/common/Accordion.tsx +56 -0
  245. package/src/anyspend/react/components/common/ConnectWalletPayment.tsx +0 -25
  246. package/src/anyspend/react/components/common/FiatPaymentMethod.tsx +1 -2
  247. package/src/anyspend/react/components/common/OrderDetails.tsx +292 -260
  248. package/src/anyspend/react/components/common/OrderStatus.tsx +1 -1
  249. package/src/anyspend/react/components/common/PanelOnramp.tsx +7 -7
  250. package/src/anyspend/react/components/common/PanelOnrampPayment.tsx +0 -6
  251. package/src/anyspend/react/components/common/StepProgress.tsx +2 -2
  252. package/src/anyspend/react/components/common/TokenBalance.tsx +3 -3
  253. package/src/anyspend/react/hooks/useGeoOnrampOptions.ts +2 -4
  254. package/src/anyspend/react/hooks/useStripeSupport.ts +0 -1
  255. package/src/anyspend/utils/chain.ts +1 -1
  256. package/src/bondkit/abis/BondkitTokenABI.ts +1329 -0
  257. package/src/bondkit/abis/BondkitTokenFactoryABI.ts +511 -0
  258. package/src/bondkit/abis/index.ts +2 -0
  259. package/src/bondkit/bondkitToken.ts +539 -0
  260. package/src/bondkit/bondkitTokenFactory.ts +336 -0
  261. package/src/bondkit/components/TradingView.tsx +341 -0
  262. package/src/bondkit/components/config/cdn.ts +63 -0
  263. package/src/bondkit/components/index.ts +5 -0
  264. package/src/bondkit/components/types.ts +9 -0
  265. package/src/bondkit/components/utils/cdn-loader.ts +77 -0
  266. package/src/bondkit/components/utils/format.ts +36 -0
  267. package/src/bondkit/config.ts +26 -0
  268. package/src/bondkit/constants.ts +5 -0
  269. package/src/bondkit/index.ts +16 -0
  270. package/src/bondkit/json_abis/BondkitABI.json +1329 -0
  271. package/src/bondkit/json_abis/BondkitFactoryABI.json +511 -0
  272. package/src/bondkit/json_abis/index.ts +4 -0
  273. package/src/bondkit/types.ts +98 -0
  274. package/src/global-account/react/components/B3DynamicModal.tsx +68 -40
  275. package/src/global-account/react/components/ManageAccount/ManageAccount.tsx +308 -137
  276. package/src/global-account/react/components/MintButton/MintButton.tsx +0 -1
  277. package/src/global-account/react/components/SendERC20Button/SendERC20Button.tsx +57 -0
  278. package/src/global-account/react/components/SendETHButton/SendETHButton.tsx +37 -0
  279. package/src/global-account/react/components/SignInWithB3/SignIn.tsx +21 -22
  280. package/src/global-account/react/components/SignInWithB3/SignInWithB3Flow.tsx +2 -2
  281. package/src/global-account/react/components/SignInWithB3/SignInWithB3Privy.tsx +1 -1
  282. package/src/global-account/react/components/SignInWithB3/steps/LoginStep.tsx +4 -3
  283. package/src/global-account/react/components/SignInWithB3/steps/LoginStepCustom.tsx +2 -2
  284. package/src/global-account/react/components/custom/CopyToClipboard.tsx +7 -4
  285. package/src/global-account/react/components/icons/BankIcon.tsx +38 -0
  286. package/src/global-account/react/components/icons/EditIcon.tsx +33 -0
  287. package/src/global-account/react/components/icons/SignOutIcon.tsx +28 -0
  288. package/src/global-account/react/components/icons/SwapIcon.tsx +41 -0
  289. package/src/global-account/react/components/index.ts +6 -0
  290. package/src/global-account/react/components/ui/scroll-area.tsx +2 -2
  291. package/src/global-account/react/components/ui/tooltip.tsx +1 -1
  292. package/src/global-account/react/hooks/index.ts +2 -1
  293. package/src/global-account/react/hooks/useAccountWallet.tsx +10 -1
  294. package/src/global-account/react/hooks/useAuthentication.ts +4 -4
  295. package/src/global-account/react/hooks/useB3BalanceFromAddresses.ts +18 -0
  296. package/src/global-account/react/hooks/useChainSwitchWithAction.ts +3 -4
  297. package/src/global-account/react/hooks/useFirstEOA.tsx +10 -7
  298. package/src/global-account/react/hooks/useNativeBalance.tsx +51 -6
  299. package/src/global-account/react/hooks/useTokenPrice.tsx +138 -3
  300. package/src/global-account/react/hooks/useUnifiedChainSwitchAndExecute.ts +186 -0
  301. package/src/shared/constants/chains/supported.ts +11 -0
  302. package/src/shared/generated/chain-networks.json +1 -1
  303. package/src/styles/index.css +345 -0
@@ -371,8 +371,10 @@ function AnySpendCustomInner({
371
371
  );
372
372
 
373
373
  // Get geo data and onramp options (after quote is available)
374
- const { geoData, isOnrampSupported, coinbaseAvailablePaymentMethods, isStripeOnrampSupported, stripeWeb2Support } =
375
- useGeoOnrampOptions(isMainnet, srcFiatAmount);
374
+ const { geoData, isOnrampSupported, coinbaseAvailablePaymentMethods, stripeWeb2Support } = useGeoOnrampOptions(
375
+ isMainnet,
376
+ srcFiatAmount,
377
+ );
376
378
 
377
379
  useEffect(() => {
378
380
  if (oat?.data?.order.status === "executed") {
@@ -404,7 +406,7 @@ function AnySpendCustomInner({
404
406
 
405
407
  const isCreatingOrder = isCreatingRegularOrder || isCreatingOnrampOrder;
406
408
 
407
- const { address: connectedAddress, name: connectedName, profile: connectedProfile } = useConnectedUserProfile();
409
+ const { address: connectedAddress, name: connectedName } = useConnectedUserProfile();
408
410
  const recipientProfile = useProfile({ address: recipientAddress });
409
411
  const recipientName = recipientProfile.data?.name;
410
412
 
@@ -556,7 +558,7 @@ function AnySpendCustomInner({
556
558
  vendor = "coinbase";
557
559
  paymentMethodString = coinbaseAvailablePaymentMethods[0]?.id || "";
558
560
  } else if (paymentMethod === FiatPaymentMethod.STRIPE) {
559
- if (!isStripeOnrampSupported && (!stripeWeb2Support || !stripeWeb2Support.isSupport)) {
561
+ if (!stripeWeb2Support || !stripeWeb2Support.isSupport) {
560
562
  toast.error("Stripe not available");
561
563
  return;
562
564
  }
@@ -861,16 +863,8 @@ function AnySpendCustomInner({
861
863
  <>
862
864
  {connectedAddress ? (
863
865
  <>
864
- {connectedProfile?.data?.avatar && (
865
- <img
866
- src={connectedProfile.data?.avatar || ""}
867
- alt="Connected Wallet"
868
- className="bg-as-primary h-6 w-6 rounded-full"
869
- />
870
- )}
871
866
  <span className="text-as-tertiarry flex items-center gap-1">
872
- {connectedName && <span>{formatUsername(connectedName)}</span>}
873
- <span>{shortenAddress(connectedAddress || "")}</span>
867
+ {connectedName ? formatUsername(connectedName) : shortenAddress(connectedAddress || "")}
874
868
  </span>
875
869
  </>
876
870
  ) : (
@@ -1186,7 +1180,7 @@ function AnySpendCustomInner({
1186
1180
  ? PanelView.CONFIRM_ORDER
1187
1181
  : activePanel
1188
1182
  }
1189
- className={cn("w-full")}
1183
+ className={cn("font-inter w-full")}
1190
1184
  variants={{
1191
1185
  enter: { x: 300, opacity: 0 },
1192
1186
  center: { x: 0, opacity: 1 },
@@ -5,10 +5,10 @@ import {
5
5
  Input,
6
6
  StyleRoot,
7
7
  TextLoop,
8
- useChainSwitchWithAction,
9
8
  useHasMounted,
10
9
  useModalStore,
11
10
  useTokenBalance,
11
+ useUnifiedChainSwitchAndExecute,
12
12
  } from "@b3dotfun/sdk/global-account/react";
13
13
  import { formatTokenAmount } from "@b3dotfun/sdk/shared/utils/number";
14
14
  import invariant from "invariant";
@@ -18,7 +18,7 @@ import { useEffect, useState } from "react";
18
18
  import { toast } from "sonner";
19
19
  import { createPublicClient, encodeFunctionData, erc20Abi, http } from "viem";
20
20
  import { base } from "viem/chains";
21
- import { useAccount, useWaitForTransactionReceipt, useWriteContract } from "wagmi";
21
+ import { useAccount, useWaitForTransactionReceipt } from "wagmi";
22
22
  import { AnySpendCustom } from "./AnySpendCustom";
23
23
  import { EthIcon } from "./icons/EthIcon";
24
24
  import { SolIcon } from "./icons/SolIcon";
@@ -70,8 +70,7 @@ export function AnySpendStakeB3({
70
70
 
71
71
  // Wagmi hooks for direct staking
72
72
  const { address } = useAccount();
73
- const { writeContractAsync } = useWriteContract();
74
- const { switchChainAndExecute } = useChainSwitchWithAction();
73
+ const { switchChainAndExecute, isSwitchingOrExecuting } = useUnifiedChainSwitchAndExecute();
75
74
 
76
75
  // State for direct staking flow
77
76
  const [isStaking, setIsStaking] = useState(false);
@@ -191,41 +190,52 @@ export function AnySpendStakeB3({
191
190
  try {
192
191
  setIsStaking(true);
193
192
 
194
- await switchChainAndExecute(base.id, async () => {
195
- // Check current allowance
196
- const allowance = await basePublicClient.readContract({
197
- address: B3_TOKEN.address as `0x${string}`,
193
+ // Check current allowance
194
+ const allowance = await basePublicClient.readContract({
195
+ address: B3_TOKEN.address as `0x${string}`,
196
+ abi: erc20Abi,
197
+ functionName: "allowance",
198
+ args: [address, ERC20Staking as `0x${string}`],
199
+ });
200
+
201
+ // If allowance is insufficient, request approval first
202
+ if (allowance < BigInt(userStakeAmount)) {
203
+ toast.info("Approving B3 spending...");
204
+
205
+ const approvalData = encodeFunctionData({
198
206
  abi: erc20Abi,
199
- functionName: "allowance",
200
- args: [address, ERC20Staking as `0x${string}`],
207
+ functionName: "approve",
208
+ args: [ERC20Staking as `0x${string}`, BigInt(userStakeAmount)],
201
209
  });
202
210
 
203
- // If allowance is insufficient, request approval
204
- if (allowance < BigInt(userStakeAmount)) {
205
- toast.info("Approving B3 spending...");
206
-
207
- await writeContractAsync({
208
- address: B3_TOKEN.address as `0x${string}`,
209
- abi: erc20Abi,
210
- functionName: "approve",
211
- args: [ERC20Staking as `0x${string}`, BigInt(userStakeAmount)],
212
- });
213
-
214
- toast.info("Approval confirmed. Proceeding with stake...");
215
- }
216
-
217
- // Execute the stake
218
- toast.info("Staking B3...");
219
- const stakeHash = await writeContractAsync({
220
- address: ERC20Staking as `0x${string}`,
221
- abi: ABI_ERC20_STAKING,
222
- functionName: "stake",
223
- args: [BigInt(userStakeAmount), recipientAddress as `0x${string}`],
211
+ await switchChainAndExecute(base.id, {
212
+ to: B3_TOKEN.address as `0x${string}`,
213
+ data: approvalData,
214
+ value: BigInt(0),
224
215
  });
225
216
 
217
+ toast.info("Approval confirmed. Proceeding with stake...");
218
+ }
219
+
220
+ // Execute the stake
221
+ toast.info("Staking B3...");
222
+
223
+ const stakeData = encodeFunctionData({
224
+ abi: ABI_ERC20_STAKING,
225
+ functionName: "stake",
226
+ args: [BigInt(userStakeAmount), recipientAddress as `0x${string}`],
227
+ });
228
+
229
+ const stakeHash = await switchChainAndExecute(base.id, {
230
+ to: ERC20Staking as `0x${string}`,
231
+ data: stakeData,
232
+ value: BigInt(0),
233
+ });
234
+
235
+ if (stakeHash) {
226
236
  setStakingTxHash(stakeHash);
227
237
  toast.success("Staking transaction submitted!");
228
- });
238
+ }
229
239
  } catch (error) {
230
240
  console.error("@@b3-stake:error:", error);
231
241
  toast.error("Staking failed. Please try again.");
@@ -375,10 +385,10 @@ export function AnySpendStakeB3({
375
385
 
376
386
  <Button
377
387
  onClick={confirmAmount}
378
- disabled={!isAmountValid || !displayAmount || isStaking || isTxPending}
388
+ disabled={!isAmountValid || !displayAmount || isStaking || isTxPending || isSwitchingOrExecuting}
379
389
  className="bg-as-brand hover:bg-as-brand/90 text-as-primary mt-4 h-14 w-full rounded-xl text-lg font-medium"
380
390
  >
381
- {isStaking ? "Staking..." : isTxPending ? "Confirming..." : "Continue"}
391
+ {isStaking || isSwitchingOrExecuting ? "Staking..." : isTxPending ? "Confirming..." : "Continue"}
382
392
  </Button>
383
393
  </motion.div>
384
394
  </div>
@@ -0,0 +1,56 @@
1
+ "use client";
2
+
3
+ import * as AccordionPrimitive from "@radix-ui/react-accordion";
4
+ import { ChevronDown } from "lucide-react";
5
+ import * as React from "react";
6
+
7
+ import { cn } from "@b3dotfun/sdk/shared/utils";
8
+
9
+ const Accordion = AccordionPrimitive.Root;
10
+
11
+ const AccordionItem = React.forwardRef<
12
+ React.ElementRef<typeof AccordionPrimitive.Item>,
13
+ React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Item>
14
+ >(({ className, ...props }, ref) => <AccordionPrimitive.Item ref={ref} className={cn("", className)} {...props} />);
15
+ AccordionItem.displayName = "AccordionItem";
16
+
17
+ const AccordionTrigger = React.forwardRef<
18
+ React.ElementRef<typeof AccordionPrimitive.Trigger>,
19
+ React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Trigger>
20
+ >(({ className, children, ...props }, ref) => (
21
+ <AccordionPrimitive.Trigger
22
+ ref={ref}
23
+ className={cn(
24
+ "border-as-border-secondary bg-as-surface-secondary flex w-full items-center justify-between rounded-xl border px-4 py-3 text-left transition-colors hover:bg-gray-100/50 data-[state=open]:rounded-b-none dark:border-gray-700 dark:bg-gray-800/50 dark:hover:bg-gray-700/50",
25
+ className,
26
+ )}
27
+ {...props}
28
+ >
29
+ <span className="text-sm font-medium text-gray-700 dark:text-gray-300">{children}</span>
30
+ <ChevronDown className="h-4 w-4 text-gray-500 transition-transform duration-200 data-[state=open]:rotate-180 dark:text-gray-400" />
31
+ </AccordionPrimitive.Trigger>
32
+ ));
33
+ AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
34
+
35
+ const AccordionContent = React.forwardRef<
36
+ React.ElementRef<typeof AccordionPrimitive.Content>,
37
+ React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Content>
38
+ >(({ className, children, ...props }, ref) => (
39
+ <AccordionPrimitive.Content
40
+ ref={ref}
41
+ className="data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden"
42
+ {...props}
43
+ >
44
+ <div
45
+ className={cn(
46
+ "border-as-border-secondary bg-as-surface-secondary w-full rounded-b-xl border-x border-b py-2 pr-4",
47
+ className,
48
+ )}
49
+ >
50
+ {children}
51
+ </div>
52
+ </AccordionPrimitive.Content>
53
+ ));
54
+ AccordionContent.displayName = AccordionPrimitive.Content.displayName;
55
+
56
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger };
@@ -6,9 +6,7 @@ import { ShinyButton, useProfile } from "@b3dotfun/sdk/global-account/react";
6
6
  import { formatTokenAmount } from "@b3dotfun/sdk/shared/utils/number";
7
7
  import { motion } from "framer-motion";
8
8
  import { ChevronRight, Loader2 } from "lucide-react";
9
- import { useMemo } from "react";
10
9
  import { OrderDetailsCollapsible } from "./OrderDetailsCollapsible";
11
- import { Step, StepProgress } from "./StepProgress";
12
10
 
13
11
  type Tournament = components["schemas"]["Tournament"];
14
12
  type NFT = components["schemas"]["NFT"];
@@ -48,35 +46,12 @@ export default function ConnectWalletPayment({
48
46
  : order.payload.expectedDstAmount.toString();
49
47
  const formattedExpectedDstAmount = formatTokenAmount(BigInt(expectedDstAmount), dstToken.decimals);
50
48
 
51
- const steps: Step[] = useMemo(
52
- () => [
53
- {
54
- id: 1,
55
- title: "Connect Wallet",
56
- description: "Connect your wallet to continue",
57
- },
58
- {
59
- id: 2,
60
- title: "Awaiting Payment",
61
- description: "Send your payment to the address below",
62
- },
63
- {
64
- id: 3,
65
- title: "Complete Payment",
66
- description: "Finalize your transaction",
67
- },
68
- ],
69
- [],
70
- );
71
-
72
49
  if (!srcToken || !dstToken) {
73
50
  return <div>Loading...</div>;
74
51
  }
75
52
 
76
53
  return (
77
54
  <div className="flex w-full flex-col items-center gap-6">
78
- <StepProgress steps={steps} currentStepIndex={1} />
79
-
80
55
  {/* Payment Button */}
81
56
  <motion.div
82
57
  initial={{ opacity: 0, y: 20 }}
@@ -47,7 +47,6 @@ export function FiatPaymentMethodComponent({
47
47
  // Load geo-based onramp options like in PanelOnramp
48
48
  const {
49
49
  coinbaseAvailablePaymentMethods,
50
- isStripeOnrampSupported,
51
50
  stripeWeb2Support,
52
51
  isLoading: isLoadingGeoOnramp,
53
52
  } = useGeoOnrampOptions(isMainnet, srcAmountOnRamp);
@@ -69,7 +68,7 @@ export function FiatPaymentMethodComponent({
69
68
  }
70
69
 
71
70
  // Add Stripe if available
72
- if (isStripeOnrampSupported || (stripeWeb2Support && stripeWeb2Support.isSupport)) {
71
+ if (stripeWeb2Support && stripeWeb2Support.isSupport) {
73
72
  const stripeFee = getFeeFromApi(FiatPaymentMethod.STRIPE);
74
73
  availablePaymentMethods.push({
75
74
  id: FiatPaymentMethod.STRIPE,