@b3dotfun/sdk 0.0.65-alpha.0 → 0.0.65-test.3

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 (268) hide show
  1. package/dist/cjs/anyspend/react/components/AnySpend.js +77 -35
  2. package/dist/cjs/anyspend/react/components/AnySpendCustom.js +2 -2
  3. package/dist/cjs/anyspend/react/components/AnySpendCustomExactIn.js +1 -1
  4. package/dist/cjs/anyspend/react/components/AnyspendDepositHype.js +1 -1
  5. package/dist/cjs/anyspend/react/components/common/CryptoPaymentMethod.d.ts +0 -6
  6. package/dist/cjs/anyspend/react/components/common/CryptoPaymentMethod.js +5 -3
  7. package/dist/cjs/anyspend/react/components/common/FeeDetailPanel.js +1 -1
  8. package/dist/cjs/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
  9. package/dist/cjs/anyspend/react/components/common/OrderHistory.d.ts +1 -1
  10. package/dist/cjs/anyspend/react/components/common/OrderHistory.js +7 -3
  11. package/dist/cjs/anyspend/react/components/common/PanelOnrampPayment.js +1 -1
  12. package/dist/cjs/anyspend/react/components/common/PointsDetailPanel.js +1 -1
  13. package/dist/cjs/anyspend/react/components/common/RecipientSelection.js +1 -1
  14. package/dist/cjs/anyspend/react/hooks/useSigMint.d.ts +1 -1
  15. package/dist/cjs/global-account/react/components/AccountAssets/AccountAssets.js +38 -2
  16. package/dist/cjs/global-account/react/components/AvatarEditor/AvatarEditor.js +184 -35
  17. package/dist/cjs/global-account/react/components/B3DynamicModal.js +23 -12
  18. package/dist/cjs/global-account/react/components/Deposit/Deposit.d.ts +1 -0
  19. package/dist/cjs/global-account/react/components/Deposit/Deposit.js +65 -0
  20. package/dist/cjs/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +39 -0
  21. package/dist/cjs/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.js +37 -0
  22. package/dist/cjs/global-account/react/components/LinkAccount/LinkAccount.d.ts +6 -4
  23. package/dist/cjs/global-account/react/components/LinkAccount/LinkAccount.js +113 -279
  24. package/dist/cjs/global-account/react/components/LinkAccount/LinkNewAccount.d.ts +4 -0
  25. package/dist/cjs/global-account/react/components/LinkAccount/LinkNewAccount.js +331 -0
  26. package/dist/cjs/global-account/react/components/ManageAccount/AppsContent.d.ts +6 -0
  27. package/dist/cjs/global-account/react/components/ManageAccount/AppsContent.js +34 -0
  28. package/dist/cjs/global-account/react/components/ManageAccount/BalanceContent.js +6 -5
  29. package/dist/cjs/global-account/react/components/ManageAccount/BottomNavigation.d.ts +2 -0
  30. package/dist/cjs/global-account/react/components/ManageAccount/BottomNavigation.js +23 -0
  31. package/dist/cjs/global-account/react/components/ManageAccount/Header.d.ts +3 -0
  32. package/dist/cjs/global-account/react/components/ManageAccount/Header.js +120 -0
  33. package/dist/cjs/global-account/react/components/ManageAccount/HomeActions.d.ts +5 -0
  34. package/dist/cjs/global-account/react/components/ManageAccount/HomeActions.js +43 -0
  35. package/dist/cjs/global-account/react/components/ManageAccount/HomeContent.d.ts +6 -0
  36. package/dist/cjs/global-account/react/components/ManageAccount/HomeContent.js +16 -0
  37. package/dist/cjs/global-account/react/components/ManageAccount/ManageAccount.js +24 -193
  38. package/dist/cjs/global-account/react/components/ManageAccount/NFTContent.d.ts +2 -0
  39. package/dist/cjs/global-account/react/components/ManageAccount/NFTContent.js +15 -0
  40. package/dist/cjs/global-account/react/components/ManageAccount/ProfileSection.d.ts +2 -0
  41. package/dist/cjs/global-account/react/components/ManageAccount/ProfileSection.js +47 -0
  42. package/dist/cjs/global-account/react/components/ManageAccount/SettingsContent.d.ts +7 -0
  43. package/dist/cjs/global-account/react/components/ManageAccount/SettingsContent.js +50 -0
  44. package/dist/cjs/global-account/react/components/ManageAccount/SettingsMenuItem.d.ts +9 -0
  45. package/dist/cjs/global-account/react/components/ManageAccount/SettingsMenuItem.js +8 -0
  46. package/dist/cjs/global-account/react/components/ManageAccount/SettingsProfileCard.d.ts +2 -0
  47. package/dist/cjs/global-account/react/components/ManageAccount/SettingsProfileCard.js +106 -0
  48. package/dist/cjs/global-account/react/components/ManageAccount/TokenContent.d.ts +2 -0
  49. package/dist/cjs/global-account/react/components/ManageAccount/TokenContent.js +22 -0
  50. package/dist/cjs/global-account/react/components/ModalHeader/ModalHeader.d.ts +10 -0
  51. package/dist/cjs/global-account/react/components/ModalHeader/ModalHeader.js +12 -0
  52. package/dist/cjs/global-account/react/components/Send/Send.d.ts +5 -0
  53. package/dist/cjs/global-account/react/components/Send/Send.js +187 -0
  54. package/dist/cjs/global-account/react/components/SignInWithB3/SignIn.js +3 -1
  55. package/dist/cjs/global-account/react/components/icons/BellIcon.d.ts +3 -0
  56. package/dist/cjs/global-account/react/components/icons/BellIcon.js +5 -0
  57. package/dist/cjs/global-account/react/components/icons/ChevronDownIcon.d.ts +2 -0
  58. package/dist/cjs/global-account/react/components/icons/ChevronDownIcon.js +7 -0
  59. package/dist/cjs/global-account/react/components/icons/CopyIcon.d.ts +2 -0
  60. package/dist/cjs/global-account/react/components/icons/CopyIcon.js +7 -0
  61. package/dist/cjs/global-account/react/components/icons/LinkIcon.d.ts +3 -0
  62. package/dist/cjs/global-account/react/components/icons/LinkIcon.js +5 -0
  63. package/dist/cjs/global-account/react/components/icons/LockIcon.d.ts +3 -0
  64. package/dist/cjs/global-account/react/components/icons/LockIcon.js +5 -0
  65. package/dist/cjs/global-account/react/components/icons/WalletIcon.d.ts +2 -0
  66. package/dist/cjs/global-account/react/components/icons/WalletIcon.js +7 -0
  67. package/dist/cjs/global-account/react/components/index.d.ts +5 -4
  68. package/dist/cjs/global-account/react/components/index.js +14 -9
  69. package/dist/cjs/global-account/react/components/ui/Tabs.js +2 -2
  70. package/dist/cjs/global-account/react/components/ui/dialog.js +2 -2
  71. package/dist/cjs/global-account/react/hooks/index.d.ts +1 -1
  72. package/dist/cjs/global-account/react/hooks/index.js +3 -1
  73. package/dist/cjs/global-account/react/hooks/useAccountWallet.d.ts +1 -0
  74. package/dist/cjs/global-account/react/hooks/useAccountWallet.js +18 -0
  75. package/dist/cjs/global-account/react/hooks/useAuthentication.d.ts +2 -2
  76. package/dist/cjs/global-account/react/hooks/useB3BalanceFromAddresses.js +1 -0
  77. package/dist/cjs/global-account/react/hooks/useUserQuery.d.ts +2 -2
  78. package/dist/cjs/global-account/react/stores/index.d.ts +1 -0
  79. package/dist/cjs/global-account/react/stores/index.js +3 -1
  80. package/dist/cjs/global-account/react/stores/useModalStore.d.ts +31 -6
  81. package/dist/cjs/global-account/react/stores/useRecentAddressesStore.d.ts +25 -0
  82. package/dist/cjs/global-account/react/stores/useRecentAddressesStore.js +36 -0
  83. package/dist/cjs/global-account/react/utils/profileDisplay.d.ts +2 -0
  84. package/dist/cjs/global-account/react/utils/profileDisplay.js +2 -2
  85. package/dist/cjs/shared/constants/chains/supported.d.ts +3 -3
  86. package/dist/cjs/shared/utils/ipfs.js +10 -3
  87. package/dist/esm/anyspend/react/components/AnySpend.js +78 -36
  88. package/dist/esm/anyspend/react/components/AnySpendCustom.js +2 -2
  89. package/dist/esm/anyspend/react/components/AnySpendCustomExactIn.js +1 -1
  90. package/dist/esm/anyspend/react/components/AnyspendDepositHype.js +1 -1
  91. package/dist/esm/anyspend/react/components/common/CryptoPaymentMethod.d.ts +0 -6
  92. package/dist/esm/anyspend/react/components/common/CryptoPaymentMethod.js +5 -3
  93. package/dist/esm/anyspend/react/components/common/FeeDetailPanel.js +1 -1
  94. package/dist/esm/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
  95. package/dist/esm/anyspend/react/components/common/OrderHistory.d.ts +1 -1
  96. package/dist/esm/anyspend/react/components/common/OrderHistory.js +6 -5
  97. package/dist/esm/anyspend/react/components/common/PanelOnrampPayment.js +1 -1
  98. package/dist/esm/anyspend/react/components/common/PointsDetailPanel.js +1 -1
  99. package/dist/esm/anyspend/react/components/common/RecipientSelection.js +1 -1
  100. package/dist/esm/anyspend/react/hooks/useSigMint.d.ts +1 -1
  101. package/dist/esm/global-account/react/components/AccountAssets/AccountAssets.js +38 -2
  102. package/dist/esm/global-account/react/components/AvatarEditor/AvatarEditor.js +186 -37
  103. package/dist/esm/global-account/react/components/B3DynamicModal.js +23 -12
  104. package/dist/esm/global-account/react/components/Deposit/Deposit.d.ts +1 -0
  105. package/dist/esm/global-account/react/components/Deposit/Deposit.js +59 -0
  106. package/dist/esm/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +39 -0
  107. package/dist/esm/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.js +34 -0
  108. package/dist/esm/global-account/react/components/LinkAccount/LinkAccount.d.ts +6 -4
  109. package/dist/esm/global-account/react/components/LinkAccount/LinkAccount.js +113 -280
  110. package/dist/esm/global-account/react/components/LinkAccount/LinkNewAccount.d.ts +4 -0
  111. package/dist/esm/global-account/react/components/LinkAccount/LinkNewAccount.js +325 -0
  112. package/dist/esm/global-account/react/components/ManageAccount/AppsContent.d.ts +6 -0
  113. package/dist/esm/global-account/react/components/ManageAccount/AppsContent.js +32 -0
  114. package/dist/esm/global-account/react/components/ManageAccount/BalanceContent.js +6 -5
  115. package/dist/esm/global-account/react/components/ManageAccount/BottomNavigation.d.ts +2 -0
  116. package/dist/esm/global-account/react/components/ManageAccount/BottomNavigation.js +21 -0
  117. package/dist/esm/global-account/react/components/ManageAccount/Header.d.ts +3 -0
  118. package/dist/esm/global-account/react/components/ManageAccount/Header.js +81 -0
  119. package/dist/esm/global-account/react/components/ManageAccount/HomeActions.d.ts +5 -0
  120. package/dist/esm/global-account/react/components/ManageAccount/HomeActions.js +41 -0
  121. package/dist/esm/global-account/react/components/ManageAccount/HomeContent.d.ts +6 -0
  122. package/dist/esm/global-account/react/components/ManageAccount/HomeContent.js +10 -0
  123. package/dist/esm/global-account/react/components/ManageAccount/ManageAccount.js +26 -195
  124. package/dist/esm/global-account/react/components/ManageAccount/NFTContent.d.ts +2 -0
  125. package/dist/esm/global-account/react/components/ManageAccount/NFTContent.js +13 -0
  126. package/dist/esm/global-account/react/components/ManageAccount/ProfileSection.d.ts +2 -0
  127. package/dist/esm/global-account/react/components/ManageAccount/ProfileSection.js +45 -0
  128. package/dist/esm/global-account/react/components/ManageAccount/SettingsContent.d.ts +7 -0
  129. package/dist/esm/global-account/react/components/ManageAccount/SettingsContent.js +45 -0
  130. package/dist/esm/global-account/react/components/ManageAccount/SettingsMenuItem.d.ts +9 -0
  131. package/dist/esm/global-account/react/components/ManageAccount/SettingsMenuItem.js +6 -0
  132. package/dist/esm/global-account/react/components/ManageAccount/SettingsProfileCard.d.ts +2 -0
  133. package/dist/esm/global-account/react/components/ManageAccount/SettingsProfileCard.js +101 -0
  134. package/dist/esm/global-account/react/components/ManageAccount/TokenContent.d.ts +2 -0
  135. package/dist/esm/global-account/react/components/ManageAccount/TokenContent.js +20 -0
  136. package/dist/esm/global-account/react/components/ModalHeader/ModalHeader.d.ts +10 -0
  137. package/dist/esm/global-account/react/components/ModalHeader/ModalHeader.js +10 -0
  138. package/dist/esm/global-account/react/components/Send/Send.d.ts +5 -0
  139. package/dist/esm/global-account/react/components/Send/Send.js +181 -0
  140. package/dist/esm/global-account/react/components/SignInWithB3/SignIn.js +4 -2
  141. package/dist/esm/global-account/react/components/icons/BellIcon.d.ts +3 -0
  142. package/dist/esm/global-account/react/components/icons/BellIcon.js +3 -0
  143. package/dist/esm/global-account/react/components/icons/ChevronDownIcon.d.ts +2 -0
  144. package/dist/esm/global-account/react/components/icons/ChevronDownIcon.js +4 -0
  145. package/dist/esm/global-account/react/components/icons/CopyIcon.d.ts +2 -0
  146. package/dist/esm/global-account/react/components/icons/CopyIcon.js +4 -0
  147. package/dist/esm/global-account/react/components/icons/LinkIcon.d.ts +3 -0
  148. package/dist/esm/global-account/react/components/icons/LinkIcon.js +3 -0
  149. package/dist/esm/global-account/react/components/icons/LockIcon.d.ts +3 -0
  150. package/dist/esm/global-account/react/components/icons/LockIcon.js +3 -0
  151. package/dist/esm/global-account/react/components/icons/WalletIcon.d.ts +2 -0
  152. package/dist/esm/global-account/react/components/icons/WalletIcon.js +4 -0
  153. package/dist/esm/global-account/react/components/index.d.ts +5 -4
  154. package/dist/esm/global-account/react/components/index.js +9 -5
  155. package/dist/esm/global-account/react/components/ui/Tabs.js +2 -2
  156. package/dist/esm/global-account/react/components/ui/dialog.js +2 -2
  157. package/dist/esm/global-account/react/hooks/index.d.ts +1 -1
  158. package/dist/esm/global-account/react/hooks/index.js +1 -1
  159. package/dist/esm/global-account/react/hooks/useAccountWallet.d.ts +1 -0
  160. package/dist/esm/global-account/react/hooks/useAccountWallet.js +17 -0
  161. package/dist/esm/global-account/react/hooks/useAuthentication.d.ts +2 -2
  162. package/dist/esm/global-account/react/hooks/useB3BalanceFromAddresses.js +1 -0
  163. package/dist/esm/global-account/react/hooks/useUserQuery.d.ts +2 -2
  164. package/dist/esm/global-account/react/stores/index.d.ts +1 -0
  165. package/dist/esm/global-account/react/stores/index.js +1 -0
  166. package/dist/esm/global-account/react/stores/useModalStore.d.ts +31 -6
  167. package/dist/esm/global-account/react/stores/useRecentAddressesStore.d.ts +25 -0
  168. package/dist/esm/global-account/react/stores/useRecentAddressesStore.js +33 -0
  169. package/dist/esm/global-account/react/utils/profileDisplay.d.ts +2 -0
  170. package/dist/esm/global-account/react/utils/profileDisplay.js +2 -2
  171. package/dist/esm/shared/constants/chains/supported.d.ts +3 -3
  172. package/dist/esm/shared/utils/ipfs.js +10 -3
  173. package/dist/styles/index.css +1 -1
  174. package/dist/types/anyspend/react/components/common/CryptoPaymentMethod.d.ts +0 -6
  175. package/dist/types/anyspend/react/components/common/OrderHistory.d.ts +1 -1
  176. package/dist/types/anyspend/react/hooks/useSigMint.d.ts +1 -1
  177. package/dist/types/global-account/react/components/Deposit/Deposit.d.ts +1 -0
  178. package/dist/types/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.d.ts +39 -0
  179. package/dist/types/global-account/react/components/LinkAccount/LinkAccount.d.ts +6 -4
  180. package/dist/types/global-account/react/components/LinkAccount/LinkNewAccount.d.ts +4 -0
  181. package/dist/types/global-account/react/components/ManageAccount/AppsContent.d.ts +6 -0
  182. package/dist/types/global-account/react/components/ManageAccount/BottomNavigation.d.ts +2 -0
  183. package/dist/types/global-account/react/components/ManageAccount/Header.d.ts +3 -0
  184. package/dist/types/global-account/react/components/ManageAccount/HomeActions.d.ts +5 -0
  185. package/dist/types/global-account/react/components/ManageAccount/HomeContent.d.ts +6 -0
  186. package/dist/types/global-account/react/components/ManageAccount/NFTContent.d.ts +2 -0
  187. package/dist/types/global-account/react/components/ManageAccount/ProfileSection.d.ts +2 -0
  188. package/dist/types/global-account/react/components/ManageAccount/SettingsContent.d.ts +7 -0
  189. package/dist/types/global-account/react/components/ManageAccount/SettingsMenuItem.d.ts +9 -0
  190. package/dist/types/global-account/react/components/ManageAccount/SettingsProfileCard.d.ts +2 -0
  191. package/dist/types/global-account/react/components/ManageAccount/TokenContent.d.ts +2 -0
  192. package/dist/types/global-account/react/components/ModalHeader/ModalHeader.d.ts +10 -0
  193. package/dist/types/global-account/react/components/Send/Send.d.ts +5 -0
  194. package/dist/types/global-account/react/components/icons/BellIcon.d.ts +3 -0
  195. package/dist/types/global-account/react/components/icons/ChevronDownIcon.d.ts +2 -0
  196. package/dist/types/global-account/react/components/icons/CopyIcon.d.ts +2 -0
  197. package/dist/types/global-account/react/components/icons/LinkIcon.d.ts +3 -0
  198. package/dist/types/global-account/react/components/icons/LockIcon.d.ts +3 -0
  199. package/dist/types/global-account/react/components/icons/WalletIcon.d.ts +2 -0
  200. package/dist/types/global-account/react/components/index.d.ts +5 -4
  201. package/dist/types/global-account/react/hooks/index.d.ts +1 -1
  202. package/dist/types/global-account/react/hooks/useAccountWallet.d.ts +1 -0
  203. package/dist/types/global-account/react/hooks/useAuthentication.d.ts +2 -2
  204. package/dist/types/global-account/react/hooks/useUserQuery.d.ts +2 -2
  205. package/dist/types/global-account/react/stores/index.d.ts +1 -0
  206. package/dist/types/global-account/react/stores/useModalStore.d.ts +31 -6
  207. package/dist/types/global-account/react/stores/useRecentAddressesStore.d.ts +25 -0
  208. package/dist/types/global-account/react/utils/profileDisplay.d.ts +2 -0
  209. package/dist/types/shared/constants/chains/supported.d.ts +3 -3
  210. package/package.json +1 -1
  211. package/src/anyspend/react/components/AnySpend.tsx +229 -170
  212. package/src/anyspend/react/components/AnySpendCustom.tsx +1 -3
  213. package/src/anyspend/react/components/AnySpendCustomExactIn.tsx +0 -2
  214. package/src/anyspend/react/components/AnyspendDepositHype.tsx +0 -2
  215. package/src/anyspend/react/components/common/CryptoPaymentMethod.tsx +7 -14
  216. package/src/anyspend/react/components/common/FeeDetailPanel.tsx +1 -1
  217. package/src/anyspend/react/components/common/FiatPaymentMethod.tsx +2 -2
  218. package/src/anyspend/react/components/common/OrderHistory.tsx +8 -13
  219. package/src/anyspend/react/components/common/PanelOnrampPayment.tsx +1 -1
  220. package/src/anyspend/react/components/common/PointsDetailPanel.tsx +1 -1
  221. package/src/anyspend/react/components/common/RecipientSelection.tsx +1 -1
  222. package/src/global-account/react/components/AccountAssets/AccountAssets.tsx +115 -25
  223. package/src/global-account/react/components/AvatarEditor/AvatarEditor.tsx +360 -128
  224. package/src/global-account/react/components/B3DynamicModal.tsx +28 -14
  225. package/src/global-account/react/components/Deposit/Deposit.tsx +211 -0
  226. package/src/global-account/react/components/IPFSMediaRenderer/IPFSMediaRenderer.tsx +84 -0
  227. package/src/global-account/react/components/LinkAccount/LinkAccount.tsx +332 -433
  228. package/src/global-account/react/components/LinkAccount/LinkNewAccount.tsx +490 -0
  229. package/src/global-account/react/components/ManageAccount/AppsContent.tsx +79 -0
  230. package/src/global-account/react/components/ManageAccount/BalanceContent.tsx +6 -10
  231. package/src/global-account/react/components/ManageAccount/BottomNavigation.tsx +83 -0
  232. package/src/global-account/react/components/ManageAccount/Header.tsx +230 -0
  233. package/src/global-account/react/components/ManageAccount/HomeActions.tsx +118 -0
  234. package/src/global-account/react/components/ManageAccount/HomeContent.tsx +42 -0
  235. package/src/global-account/react/components/ManageAccount/ManageAccount.tsx +73 -589
  236. package/src/global-account/react/components/ManageAccount/NFTContent.tsx +24 -0
  237. package/src/global-account/react/components/ManageAccount/ProfileSection.tsx +72 -0
  238. package/src/global-account/react/components/ManageAccount/SettingsContent.tsx +87 -0
  239. package/src/global-account/react/components/ManageAccount/SettingsMenuItem.tsx +31 -0
  240. package/src/global-account/react/components/ManageAccount/SettingsProfileCard.tsx +180 -0
  241. package/src/global-account/react/components/ManageAccount/TokenContent.tsx +41 -0
  242. package/src/global-account/react/components/ModalHeader/ModalHeader.tsx +50 -0
  243. package/src/global-account/react/components/Send/Send.tsx +585 -0
  244. package/src/global-account/react/components/SignInWithB3/SignIn.tsx +11 -7
  245. package/src/global-account/react/components/icons/BellIcon.tsx +15 -0
  246. package/src/global-account/react/components/icons/ChevronDownIcon.tsx +17 -0
  247. package/src/global-account/react/components/icons/CopyIcon.tsx +22 -0
  248. package/src/global-account/react/components/icons/LinkIcon.tsx +15 -0
  249. package/src/global-account/react/components/icons/LockIcon.tsx +15 -0
  250. package/src/global-account/react/components/icons/WalletIcon.tsx +21 -0
  251. package/src/global-account/react/components/index.ts +11 -5
  252. package/src/global-account/react/components/ui/Tabs.tsx +5 -13
  253. package/src/global-account/react/components/ui/dialog.tsx +32 -14
  254. package/src/global-account/react/hooks/index.ts +3 -0
  255. package/src/global-account/react/hooks/useAccountWallet.tsx +26 -0
  256. package/src/global-account/react/hooks/useB3BalanceFromAddresses.ts +1 -0
  257. package/src/global-account/react/stores/index.ts +1 -0
  258. package/src/global-account/react/stores/useModalStore.ts +35 -6
  259. package/src/global-account/react/stores/useRecentAddressesStore.ts +55 -0
  260. package/src/global-account/react/utils/profileDisplay.ts +4 -2
  261. package/src/shared/utils/ipfs.ts +10 -3
  262. package/src/styles/index.css +6 -1
  263. package/dist/cjs/global-account/react/components/ProfileEditor/ProfileEditor.d.ts +0 -6
  264. package/dist/cjs/global-account/react/components/ProfileEditor/ProfileEditor.js +0 -141
  265. package/dist/esm/global-account/react/components/ProfileEditor/ProfileEditor.d.ts +0 -6
  266. package/dist/esm/global-account/react/components/ProfileEditor/ProfileEditor.js +0 -135
  267. package/dist/types/global-account/react/components/ProfileEditor/ProfileEditor.d.ts +0 -6
  268. package/src/global-account/react/components/ProfileEditor/ProfileEditor.tsx +0 -265
@@ -10,16 +10,21 @@ import { useEffect, useRef } from "react";
10
10
  import { useSetActiveWallet } from "thirdweb/react";
11
11
  import { AvatarEditor } from "./AvatarEditor/AvatarEditor.js";
12
12
  import { useB3 } from "./B3Provider/useB3.js";
13
+ import { Deposit } from "./Deposit/Deposit.js";
13
14
  import { LinkAccount } from "./LinkAccount/LinkAccount.js";
14
- import { ProfileEditor } from "./ProfileEditor/ProfileEditor.js";
15
+ import { LinkNewAccount } from "./LinkAccount/LinkNewAccount.js";
15
16
  import { ManageAccount } from "./ManageAccount/ManageAccount.js";
16
17
  import { RequestPermissions } from "./RequestPermissions/RequestPermissions.js";
18
+ import { Send } from "./Send/Send.js";
17
19
  import { SignInWithB3Flow } from "./SignInWithB3/SignInWithB3Flow.js";
18
20
  import { Dialog, DialogContent, DialogDescription, DialogTitle } from "./ui/dialog.js";
19
21
  import { Drawer, DrawerContent, DrawerDescription, DrawerTitle } from "./ui/drawer.js";
20
22
  const debug = debugB3React("B3DynamicModal");
21
23
  export function B3DynamicModal() {
22
- const { isOpen, setB3ModalOpen, contentType, history, navigateBack } = useModalStore();
24
+ const isOpen = useModalStore(state => state.isOpen);
25
+ const setB3ModalOpen = useModalStore(state => state.setB3ModalOpen);
26
+ const contentType = useModalStore(state => state.contentType);
27
+ const navigateBack = useModalStore(state => state.navigateBack);
23
28
  const { theme } = useB3();
24
29
  const isMobile = useIsMobile();
25
30
  const prevIsOpenRef = useRef(isOpen);
@@ -50,8 +55,10 @@ export function B3DynamicModal() {
50
55
  "anySpendSignatureMint",
51
56
  "anySpendBondKit",
52
57
  "linkAccount",
58
+ "linkNewAccount",
53
59
  "avatarEditor",
54
- "profileEditor",
60
+ "deposit",
61
+ "send",
55
62
  ];
56
63
  const freestyleTypes = [
57
64
  "anySpendNft",
@@ -67,7 +74,7 @@ export function B3DynamicModal() {
67
74
  ];
68
75
  // Check if current content type is in freestyle types
69
76
  const isFreestyleType = freestyleTypes.includes(contentType?.type);
70
- const hideCloseButton = isFreestyleType;
77
+ const hideCloseButton = true;
71
78
  // Build content class using cn utility
72
79
  // eslint-disable-next-line tailwindcss/no-custom-classname
73
80
  const contentClass = cn("b3-modal", theme === "dark" && "dark", fullWidthTypes.includes(contentType?.type) && "w-full", isFreestyleType && "b3-modal-freestyle", contentType?.type === "signInWithB3" && "p-0", contentType?.type === "anySpend" && "md:px-6");
@@ -93,7 +100,7 @@ export function B3DynamicModal() {
93
100
  case "anySpendFundTournament":
94
101
  return _jsx(AnySpendTournament, { ...contentType, mode: "modal", action: "fund" });
95
102
  case "anySpendOrderHistory":
96
- return _jsx(OrderHistory, { onBack: () => { }, mode: "modal" });
103
+ return _jsx(OrderHistory, { ...contentType, mode: "modal" });
97
104
  case "anySpendStakeB3":
98
105
  return _jsx(AnySpendStakeB3, { ...contentType, mode: "modal" });
99
106
  case "anySpendStakeB3ExactIn":
@@ -110,12 +117,16 @@ export function B3DynamicModal() {
110
117
  return _jsx(AnySpendBondKit, { ...contentType });
111
118
  case "linkAccount":
112
119
  return _jsx(LinkAccount, { ...contentType });
120
+ case "linkNewAccount":
121
+ return _jsx(LinkNewAccount, { ...contentType });
113
122
  case "anySpendDepositHype":
114
123
  return _jsx(AnySpendDepositHype, { ...contentType, mode: "modal" });
115
124
  case "avatarEditor":
116
125
  return _jsx(AvatarEditor, { onSetAvatar: contentType.onSuccess });
117
- case "profileEditor":
118
- return _jsx(ProfileEditor, { onSuccess: contentType.onSuccess });
126
+ case "deposit":
127
+ return _jsx(Deposit, {});
128
+ case "send":
129
+ return _jsx(Send, { ...contentType });
119
130
  // Add other modal types here
120
131
  default:
121
132
  return null;
@@ -125,9 +136,9 @@ export function B3DynamicModal() {
125
136
  const ModalContent = isMobile ? DrawerContent : DialogContent;
126
137
  const ModalTitle = isMobile ? DrawerTitle : DialogTitle;
127
138
  const ModalDescription = isMobile ? DrawerDescription : DialogDescription;
128
- return (_jsxs(ModalComponent, { open: isOpen, onOpenChange: setB3ModalOpen, children: [_jsxs(ModalContent, { className: cn(contentClass, "rounded-2xl bg-white shadow-xl dark:bg-gray-900", "border border-gray-200 dark:border-gray-800",
129
- // Remove default width classes for avatar editor and profile editor
130
- contentType?.type === "avatarEditor" || contentType?.type === "profileEditor"
131
- ? "!w-[90vw] !max-w-none" // Use !important to override default styles
132
- : "mx-auto w-full max-w-md sm:max-w-lg"), hideCloseButton: hideCloseButton, children: [_jsx(ModalTitle, { className: "sr-only hidden", children: contentType?.type || "Modal" }), _jsx(ModalDescription, { className: "sr-only hidden", children: contentType?.type || "Modal Body" }), _jsxs("div", { className: cn("no-scrollbar max-h-[90dvh] overflow-auto sm:max-h-[80dvh]"), children: [history.length > 0 && contentType?.showBackButton && (_jsxs("button", { onClick: navigateBack, className: "flex items-center gap-2 px-6 py-4 text-gray-600 transition-colors hover:text-gray-900 dark:text-gray-400 dark:hover:text-white", children: [_jsxs("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("path", { d: "M15.8337 10H4.16699", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M10.0003 15.8334L4.16699 10L10.0003 4.16669", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })] }), _jsx("span", { className: "text-sm font-medium", children: "Back" })] })), renderContent()] })] }), (contentType?.type === "avatarEditor" || contentType?.type === "profileEditor") && (_jsx("button", { onClick: () => setB3ModalOpen(false), className: "fixed right-5 top-5 z-[100] cursor-pointer text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-white", children: _jsx("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M18 6L6 18M6 6L18 18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }) }))] }));
139
+ return (_jsxs(ModalComponent, { open: isOpen, onOpenChange: setB3ModalOpen, children: [_jsxs(ModalContent, { className: cn(contentClass, "rounded-2xl bg-white shadow-xl dark:bg-gray-900", "border border-gray-200 dark:border-gray-800", (contentType?.type === "manageAccount" ||
140
+ contentType?.type === "deposit" ||
141
+ contentType?.type === "send" ||
142
+ contentType?.type === "avatarEditor") &&
143
+ "p-0", "mx-auto w-full max-w-md sm:max-w-lg"), hideCloseButton: hideCloseButton, children: [_jsx(ModalTitle, { className: "sr-only hidden", children: contentType?.type || "Modal" }), _jsx(ModalDescription, { className: "sr-only hidden", children: contentType?.type || "Modal Body" }), _jsxs("div", { className: cn("no-scrollbar max-h-[90dvh] overflow-auto sm:max-h-[80dvh]"), children: [(!hideCloseButton || contentType?.showBackButton) && (_jsxs("button", { onClick: navigateBack, className: "flex items-center gap-2 px-6 py-4 text-gray-600 transition-colors hover:text-gray-900 dark:text-gray-400 dark:hover:text-white", children: [_jsxs("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("path", { d: "M15.8337 10H4.16699", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M10.0003 15.8334L4.16699 10L10.0003 4.16669", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })] }), _jsx("span", { className: "font-inter text-sm font-semibold", children: "Back" })] })), renderContent()] })] }), contentType?.type === "avatarEditor" && (_jsx("button", { onClick: () => setB3ModalOpen(false), className: "fixed right-5 top-5 z-[100] cursor-pointer text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-white", children: _jsx("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M18 6L6 18M6 6L18 18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }) }))] }));
133
144
  }
@@ -0,0 +1 @@
1
+ export declare function Deposit(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,59 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { RELAY_SOLANA_MAINNET_CHAIN_ID } from "../../../../anyspend/constants/index.js";
3
+ import { ALL_CHAINS } from "../../../../anyspend/utils/chain.js";
4
+ import { useAccountWallet, useModalStore } from "../../../../global-account/react/index.js";
5
+ import { TokenSelector } from "@relayprotocol/relay-kit-ui";
6
+ import { ChevronDown, Copy } from "lucide-react";
7
+ import { QRCodeSVG } from "qrcode.react";
8
+ import { useMemo, useState } from "react";
9
+ import { toast } from "sonner";
10
+ import { base } from "thirdweb/chains";
11
+ import ModalHeader from "../ModalHeader/ModalHeader.js";
12
+ import { Button } from "../ui/button.js";
13
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from "../ui/dropdown-menu.js";
14
+ // Coinbase logo SVG
15
+ const CoinbaseLogo = () => (_jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("path", { d: "M8 16C12.4183 16 16 12.4183 16 8C16 3.58172 12.4183 0 8 0C3.58172 0 0 3.58172 0 8C0 12.4183 3.58172 16 8 16Z", fill: "#0052FF" }), _jsx("path", { d: "M8.00065 11.3337C6.16065 11.3337 4.66732 9.84033 4.66732 8.00033C4.66732 6.16033 6.16065 4.66699 8.00065 4.66699C9.47399 4.66699 10.734 5.64699 11.1607 7.00033H13.2273C12.774 4.54699 10.6273 2.66699 8.00065 2.66699C5.05399 2.66699 2.66732 5.05366 2.66732 8.00033C2.66732 10.947 5.05399 13.3337 8.00065 13.3337C10.6273 13.3337 12.774 11.4537 13.2273 9.00033H11.1607C10.734 10.3537 9.47399 11.3337 8.00065 11.3337Z", fill: "white" })] }));
16
+ export function Deposit() {
17
+ const { address } = useAccountWallet();
18
+ const navigateBack = useModalStore(state => state.navigateBack);
19
+ const setB3ModalOpen = useModalStore(state => state.setB3ModalOpen);
20
+ const history = useModalStore(state => state.history);
21
+ const [selectedChainId, setSelectedChainId] = useState(base.id);
22
+ const [selectedToken, setSelectedToken] = useState({
23
+ address: "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
24
+ chainId: base.id,
25
+ decimals: 6,
26
+ symbol: "USDC",
27
+ name: "USD Coin",
28
+ metadata: {
29
+ logoURI: "https://assets.relay.link/icons/1/light/usdc.png",
30
+ },
31
+ });
32
+ // Get the selected chain object
33
+ const selectedChain = useMemo(() => ALL_CHAINS[selectedChainId], [selectedChainId]);
34
+ // Get all supported chains for the dropdown
35
+ const supportedChains = useMemo(() => Object.values(ALL_CHAINS), []);
36
+ // The deposit address is the user's active wallet address
37
+ const depositAddress = address || "0x0000000000000000000000000000000000000000";
38
+ const handleTokenSelect = (token) => {
39
+ setSelectedChainId(token.chainId);
40
+ setSelectedToken({
41
+ address: token.address,
42
+ chainId: token.chainId,
43
+ decimals: token.decimals,
44
+ metadata: { logoURI: token.logoURI },
45
+ name: token.name,
46
+ symbol: token.symbol,
47
+ });
48
+ };
49
+ const handleCopyAddress = async () => {
50
+ try {
51
+ await navigator.clipboard.writeText(depositAddress);
52
+ toast.success("Address copied to clipboard");
53
+ }
54
+ catch (error) {
55
+ toast.error("Failed to copy address");
56
+ }
57
+ };
58
+ return (_jsxs("div", { className: "flex w-full flex-col", children: [_jsx(ModalHeader, { title: "Deposit", showCloseButton: false }), _jsxs("div", { className: "flex flex-col pb-5 pt-5", children: [_jsx("div", { className: "mb-4 px-5", children: _jsx("p", { className: "font-neue-montreal-medium text-base leading-snug text-[#3f3f46]", children: "Send any accepted token and we'll convert it to B3 on Base for you to use." }) }), _jsxs("div", { className: "space-y-3 px-5", children: [_jsxs("div", { children: [_jsx("label", { className: "mb-1.5 block text-sm font-medium text-[#3f3f46]", children: "Chain" }), _jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsxs("button", { className: "flex h-10 w-full items-center justify-between rounded-lg border border-[#d1d1d6] bg-white px-2.5 py-2 transition-colors hover:bg-[#fafafa]", children: [_jsxs("div", { className: "flex items-center gap-2", children: [selectedChain?.logoUrl && (_jsx("img", { src: selectedChain.logoUrl, alt: selectedChain.name, className: "h-6 w-6 rounded-full" })), _jsx("span", { className: "text-base text-[#18181b]", children: selectedChain?.name || "Select Chain" })] }), _jsx(ChevronDown, { className: "h-4 w-4 text-[#51525c]" })] }) }), _jsx(DropdownMenuContent, { className: "max-h-[300px] w-full overflow-y-auto", children: supportedChains.map(chain => (_jsx(DropdownMenuItem, { onClick: () => setSelectedChainId(chain.id), children: _jsxs("div", { className: "flex items-center gap-2", children: [chain.logoUrl && _jsx("img", { src: chain.logoUrl, alt: chain.name, className: "h-6 w-6 rounded-full" }), _jsx("span", { className: "text-[#18181b]", children: chain.name })] }) }, chain.id))) })] })] }), _jsxs("div", { children: [_jsx("label", { className: "mb-1.5 block text-sm font-medium text-[#3f3f46]", children: "Accepted tokens" }), _jsx(TokenSelector, { address: address, chainIdsFilter: [selectedChainId], context: "from", fromChainWalletVMSupported: true, isValidAddress: true, lockedChainIds: [selectedChainId], multiWalletSupportEnabled: true, onAnalyticEvent: undefined, popularChainIds: [1, 8453, RELAY_SOLANA_MAINNET_CHAIN_ID], setToken: handleTokenSelect, supportedWalletVMs: ["evm", "svm"], token: undefined, trigger: _jsxs("button", { className: "flex h-10 w-full items-center justify-between rounded-lg border border-[#d1d1d6] bg-white px-2.5 py-2 transition-colors hover:bg-[#fafafa]", children: [_jsxs("div", { className: "flex items-center gap-2", children: [selectedToken?.metadata?.logoURI && (_jsx("img", { src: selectedToken.metadata.logoURI, alt: selectedToken.symbol, className: "h-6 w-6 rounded-full" })), _jsx("span", { className: "text-base text-[#18181b]", children: selectedToken.symbol })] }), _jsx(ChevronDown, { className: "h-4 w-4 text-[#51525c]" })] }) })] })] }), _jsxs("div", { className: "mx-5 mt-4 flex items-start rounded-xl border border-[#e4e4e7] bg-[#fafafa]", children: [_jsxs("div", { className: "flex flex-1 flex-col items-center gap-2 px-5 pb-3 pt-5", children: [_jsx("div", { className: "flex w-full items-center justify-center", children: _jsx("div", { className: "w-full", children: _jsx("div", { className: "flex aspect-[144/146] w-full flex-col items-center justify-center overflow-hidden", children: _jsx(QRCodeSVG, { value: depositAddress, size: 144, level: "M" }) }) }) }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx("span", { className: "text-xs font-semibold leading-[18px] text-[#0b57c2]", children: "SCAN WITH" }), _jsx(CoinbaseLogo, {})] })] }), _jsxs("div", { className: "relative flex flex-1 flex-col gap-2 self-stretch border-l border-[#e4e4e7] p-6", children: [_jsx("label", { className: "text-sm font-medium leading-5 text-[#3f3f46]", children: "Deposit address:" }), _jsxs("div", { className: "relative flex w-full flex-wrap items-center gap-2", children: [_jsx("p", { className: "h-[74px] flex-1 overflow-hidden text-ellipsis whitespace-pre-wrap break-all pr-6 text-base font-semibold leading-6 text-[#18181b]", children: depositAddress }), _jsx("button", { onClick: handleCopyAddress, className: "absolute bottom-0 right-0 h-4 w-4 transition-opacity hover:opacity-70", "aria-label": "Copy address", children: _jsx(Copy, { className: "h-full w-full text-[#51525c]" }) })] })] })] }), _jsx("div", { className: "mx-5 mt-4", children: _jsxs("p", { className: "font-neue-montreal-italic text-center text-sm leading-[1.3] text-[#3f3f46]", children: ["Do not send any tokens other than the ones specified.", _jsx("br", {}), "Tokens not accepted will not be converted."] }) }), _jsx("div", { className: "mt-4 px-5", children: _jsx(Button, { onClick: handleCopyAddress, className: "h-12 w-full rounded-xl bg-[#0c68e9] text-base font-semibold text-white shadow-[inset_0px_0px_0px_1px_rgba(10,13,18,0.18),inset_0px_-2px_0px_0px_rgba(10,13,18,0.05)] hover:bg-[#0b5fd4]", children: "Copy deposit address" }) })] })] }));
59
+ }
@@ -0,0 +1,39 @@
1
+ import type { ThirdwebClient } from "thirdweb";
2
+ interface IPFSMediaRendererProps {
3
+ /** The source URL - can be IPFS URL (ipfs://...) or HTTP URL */
4
+ src: string | null | undefined;
5
+ /** Alt text for the media */
6
+ alt?: string;
7
+ /** CSS class name */
8
+ className?: string;
9
+ /** Thirdweb client instance (optional, uses default if not provided) */
10
+ client?: ThirdwebClient;
11
+ /** Width of the media */
12
+ width?: string | number;
13
+ /** Height of the media */
14
+ height?: string | number;
15
+ /** Controls property for video/audio */
16
+ controls?: boolean;
17
+ /** Style object */
18
+ style?: React.CSSProperties;
19
+ }
20
+ /**
21
+ * IPFSMediaRenderer - A wrapper around Thirdweb's MediaRenderer that configures
22
+ * the IPFS gateway URL to use our validated gateway.
23
+ *
24
+ * Features:
25
+ * - Configures MediaRenderer to use cloudflare-ipfs.com gateway
26
+ * - Gateway matches our allowed list in profileDisplay.ts
27
+ * - Provides fallback for missing sources
28
+ *
29
+ * @example
30
+ * ```tsx
31
+ * <IPFSMediaRenderer
32
+ * src="ipfs://QmX..."
33
+ * alt="Profile Avatar"
34
+ * className="size-14 rounded-full"
35
+ * />
36
+ * ```
37
+ */
38
+ export declare function IPFSMediaRenderer({ src, alt, className, client, width, height, controls, style, }: IPFSMediaRendererProps): import("react/jsx-runtime").JSX.Element;
39
+ export {};
@@ -0,0 +1,34 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { client as defaultClient } from "../../../../shared/utils/thirdweb.js";
4
+ import { MediaRenderer } from "thirdweb/react";
5
+ // Primary IPFS gateway URL - matches our allowed list in profileDisplay.ts
6
+ // Note: MediaRenderer expects the base gateway URL without /ipfs path
7
+ const IPFS_GATEWAY_URL = "https://cloudflare-ipfs.com";
8
+ /**
9
+ * IPFSMediaRenderer - A wrapper around Thirdweb's MediaRenderer that configures
10
+ * the IPFS gateway URL to use our validated gateway.
11
+ *
12
+ * Features:
13
+ * - Configures MediaRenderer to use cloudflare-ipfs.com gateway
14
+ * - Gateway matches our allowed list in profileDisplay.ts
15
+ * - Provides fallback for missing sources
16
+ *
17
+ * @example
18
+ * ```tsx
19
+ * <IPFSMediaRenderer
20
+ * src="ipfs://QmX..."
21
+ * alt="Profile Avatar"
22
+ * className="size-14 rounded-full"
23
+ * />
24
+ * ```
25
+ */
26
+ export function IPFSMediaRenderer({ src, alt = "Media", className, client = defaultClient, width, height, controls, style, }) {
27
+ // If no source, render fallback
28
+ if (!src) {
29
+ return (_jsx("div", { className: className, style: style, "aria-label": alt, children: _jsx("div", { className: "bg-b3-primary-wash flex h-full w-full items-center justify-center", children: _jsx("span", { className: "text-b3-grey font-neue-montreal-semibold text-xs", children: alt.charAt(0).toUpperCase() }) }) }));
30
+ }
31
+ // Convert IPFS URLs to HTTP gateway URLs if needed
32
+ // This handles both ipfs:// URLs and existing HTTP gateway URLs
33
+ return (_jsx(MediaRenderer, { src: src, client: client, alt: alt, className: className, width: width ? width.toString() : undefined, height: height ? height.toString() : undefined, controls: controls, style: style }));
34
+ }
@@ -1,4 +1,6 @@
1
- import { LinkAccountModalProps } from "../../stores/useModalStore";
2
- export declare function LinkAccount({ onSuccess: onSuccessCallback, onError, onClose, chain, partnerId, className, }: LinkAccountModalProps & {
3
- className?: string;
4
- }): import("react/jsx-runtime").JSX.Element;
1
+ import { Chain } from "thirdweb";
2
+ export declare const LinkAccount: ({ partnerId, onLogout, chain, }: {
3
+ partnerId: string;
4
+ onLogout?: () => void;
5
+ chain: Chain;
6
+ }) => import("react/jsx-runtime").JSX.Element;