@turnkey/react-wallet-kit 2.7.1 → 2.8.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 (287) hide show
  1. package/dist/_virtual/_rollupPluginBabelHelpers.mjs +10 -1
  2. package/dist/_virtual/_rollupPluginBabelHelpers.mjs.map +1 -1
  3. package/dist/components/auth/Action.d.ts +1 -0
  4. package/dist/components/auth/Action.d.ts.map +1 -1
  5. package/dist/components/auth/Action.js +10 -3
  6. package/dist/components/auth/Action.js.map +1 -1
  7. package/dist/components/auth/Action.mjs +10 -3
  8. package/dist/components/auth/Action.mjs.map +1 -1
  9. package/dist/components/auth/wallet/DesktopWalletConnectScreen.d.ts +2 -0
  10. package/dist/components/auth/wallet/DesktopWalletConnectScreen.d.ts.map +1 -1
  11. package/dist/components/auth/wallet/DesktopWalletConnectScreen.js +7 -4
  12. package/dist/components/auth/wallet/DesktopWalletConnectScreen.js.map +1 -1
  13. package/dist/components/auth/wallet/DesktopWalletConnectScreen.mjs +22 -12
  14. package/dist/components/auth/wallet/DesktopWalletConnectScreen.mjs.map +1 -1
  15. package/dist/components/auth/wallet/ExternalWalletChainSelector.d.ts.map +1 -1
  16. package/dist/components/auth/wallet/ExternalWalletChainSelector.js +2 -1
  17. package/dist/components/auth/wallet/ExternalWalletChainSelector.js.map +1 -1
  18. package/dist/components/auth/wallet/ExternalWalletChainSelector.mjs +2 -2
  19. package/dist/components/auth/wallet/ExternalWalletChainSelector.mjs.map +1 -1
  20. package/dist/components/auth/wallet/MobileWalletConnectScreen.d.ts +1 -0
  21. package/dist/components/auth/wallet/MobileWalletConnectScreen.d.ts.map +1 -1
  22. package/dist/components/auth/wallet/MobileWalletConnectScreen.js +3 -1
  23. package/dist/components/auth/wallet/MobileWalletConnectScreen.js.map +1 -1
  24. package/dist/components/auth/wallet/MobileWalletConnectScreen.mjs +16 -8
  25. package/dist/components/auth/wallet/MobileWalletConnectScreen.mjs.map +1 -1
  26. package/dist/components/auth/wallet/ShowAllWalletsScreen.d.ts +2 -1
  27. package/dist/components/auth/wallet/ShowAllWalletsScreen.d.ts.map +1 -1
  28. package/dist/components/auth/wallet/ShowAllWalletsScreen.js +8 -3
  29. package/dist/components/auth/wallet/ShowAllWalletsScreen.js.map +1 -1
  30. package/dist/components/auth/wallet/ShowAllWalletsScreen.mjs +8 -3
  31. package/dist/components/auth/wallet/ShowAllWalletsScreen.mjs.map +1 -1
  32. package/dist/components/design/Success.d.ts +1 -1
  33. package/dist/components/design/Success.d.ts.map +1 -1
  34. package/dist/components/design/Success.js +2 -2
  35. package/dist/components/design/Success.js.map +1 -1
  36. package/dist/components/design/Success.mjs +2 -2
  37. package/dist/components/design/Success.mjs.map +1 -1
  38. package/dist/components/design/Svg.d.ts +1 -0
  39. package/dist/components/design/Svg.d.ts.map +1 -1
  40. package/dist/components/design/Svg.js +32 -12
  41. package/dist/components/design/Svg.js.map +1 -1
  42. package/dist/components/design/Svg.mjs +32 -13
  43. package/dist/components/design/Svg.mjs.map +1 -1
  44. package/dist/components/design/TabNav.d.ts +13 -0
  45. package/dist/components/design/TabNav.d.ts.map +1 -0
  46. package/dist/components/design/TabNav.js +64 -0
  47. package/dist/components/design/TabNav.js.map +1 -0
  48. package/dist/components/design/TabNav.mjs +81 -0
  49. package/dist/components/design/TabNav.mjs.map +1 -0
  50. package/dist/components/funding/CryptoAmountInput.d.ts +11 -0
  51. package/dist/components/funding/CryptoAmountInput.d.ts.map +1 -0
  52. package/dist/components/funding/CryptoAmountInput.js +82 -0
  53. package/dist/components/funding/CryptoAmountInput.js.map +1 -0
  54. package/dist/components/funding/CryptoAmountInput.mjs +87 -0
  55. package/dist/components/funding/CryptoAmountInput.mjs.map +1 -0
  56. package/dist/components/funding/CurrencyDropdown.d.ts +8 -0
  57. package/dist/components/funding/CurrencyDropdown.d.ts.map +1 -0
  58. package/dist/components/funding/CurrencyDropdown.js +132 -0
  59. package/dist/components/funding/CurrencyDropdown.js.map +1 -0
  60. package/dist/components/funding/CurrencyDropdown.mjs +132 -0
  61. package/dist/components/funding/CurrencyDropdown.mjs.map +1 -0
  62. package/dist/components/funding/FiatAmountInput.d.ts +11 -0
  63. package/dist/components/funding/FiatAmountInput.d.ts.map +1 -0
  64. package/dist/components/funding/FiatAmountInput.js +94 -0
  65. package/dist/components/funding/FiatAmountInput.js.map +1 -0
  66. package/dist/components/funding/FiatAmountInput.mjs +105 -0
  67. package/dist/components/funding/FiatAmountInput.mjs.map +1 -0
  68. package/dist/components/funding/OffRamp.d.ts +3 -0
  69. package/dist/components/funding/OffRamp.d.ts.map +1 -0
  70. package/dist/components/funding/OffRamp.js +31 -0
  71. package/dist/components/funding/OffRamp.js.map +1 -0
  72. package/dist/components/funding/OffRamp.mjs +30 -0
  73. package/dist/components/funding/OffRamp.mjs.map +1 -0
  74. package/dist/components/funding/OffRampAmount.d.ts +22 -0
  75. package/dist/components/funding/OffRampAmount.d.ts.map +1 -0
  76. package/dist/components/funding/OffRampAmount.js +304 -0
  77. package/dist/components/funding/OffRampAmount.js.map +1 -0
  78. package/dist/components/funding/OffRampAmount.mjs +376 -0
  79. package/dist/components/funding/OffRampAmount.mjs.map +1 -0
  80. package/dist/components/funding/OffRampDeposit.d.ts +22 -0
  81. package/dist/components/funding/OffRampDeposit.d.ts.map +1 -0
  82. package/dist/components/funding/OffRampDeposit.js +455 -0
  83. package/dist/components/funding/OffRampDeposit.js.map +1 -0
  84. package/dist/components/funding/OffRampDeposit.mjs +551 -0
  85. package/dist/components/funding/OffRampDeposit.mjs.map +1 -0
  86. package/dist/components/funding/OffRampReturn.d.ts +2 -0
  87. package/dist/components/funding/OffRampReturn.d.ts.map +1 -0
  88. package/dist/components/funding/OffRampReturn.js +144 -0
  89. package/dist/components/funding/OffRampReturn.js.map +1 -0
  90. package/dist/components/funding/OffRampReturn.mjs +146 -0
  91. package/dist/components/funding/OffRampReturn.mjs.map +1 -0
  92. package/dist/components/funding/OnRamp.d.ts +7 -0
  93. package/dist/components/funding/OnRamp.d.ts.map +1 -0
  94. package/dist/components/funding/OnRamp.js +64 -0
  95. package/dist/components/funding/OnRamp.js.map +1 -0
  96. package/dist/components/funding/OnRamp.mjs +58 -0
  97. package/dist/components/funding/OnRamp.mjs.map +1 -0
  98. package/dist/components/funding/OnRampAmount.d.ts +21 -0
  99. package/dist/components/funding/OnRampAmount.d.ts.map +1 -0
  100. package/dist/components/funding/OnRampAmount.js +229 -0
  101. package/dist/components/funding/OnRampAmount.js.map +1 -0
  102. package/dist/components/funding/OnRampAmount.mjs +312 -0
  103. package/dist/components/funding/OnRampAmount.mjs.map +1 -0
  104. package/dist/components/funding/OnRampCash.d.ts +3 -0
  105. package/dist/components/funding/OnRampCash.d.ts.map +1 -0
  106. package/dist/components/funding/OnRampCash.js +26 -0
  107. package/dist/components/funding/OnRampCash.js.map +1 -0
  108. package/dist/components/funding/OnRampCash.mjs +25 -0
  109. package/dist/components/funding/OnRampCash.mjs.map +1 -0
  110. package/dist/components/funding/OnRampCrypto.d.ts +11 -0
  111. package/dist/components/funding/OnRampCrypto.d.ts.map +1 -0
  112. package/dist/components/funding/OnRampCrypto.js +126 -0
  113. package/dist/components/funding/OnRampCrypto.js.map +1 -0
  114. package/dist/components/funding/OnRampCrypto.mjs +148 -0
  115. package/dist/components/funding/OnRampCrypto.mjs.map +1 -0
  116. package/dist/components/funding/OnRampCryptoSend.d.ts +15 -0
  117. package/dist/components/funding/OnRampCryptoSend.d.ts.map +1 -0
  118. package/dist/components/funding/OnRampCryptoSend.js +251 -0
  119. package/dist/components/funding/OnRampCryptoSend.js.map +1 -0
  120. package/dist/components/funding/OnRampCryptoSend.mjs +323 -0
  121. package/dist/components/funding/OnRampCryptoSend.mjs.map +1 -0
  122. package/dist/components/funding/OnRampCryptoStatus.d.ts +14 -0
  123. package/dist/components/funding/OnRampCryptoStatus.d.ts.map +1 -0
  124. package/dist/components/funding/OnRampCryptoStatus.js +153 -0
  125. package/dist/components/funding/OnRampCryptoStatus.js.map +1 -0
  126. package/dist/components/funding/OnRampCryptoStatus.mjs +272 -0
  127. package/dist/components/funding/OnRampCryptoStatus.mjs.map +1 -0
  128. package/dist/components/funding/OnRampExternalAccountSelector.d.ts +11 -0
  129. package/dist/components/funding/OnRampExternalAccountSelector.d.ts.map +1 -0
  130. package/dist/components/funding/OnRampExternalAccountSelector.js +95 -0
  131. package/dist/components/funding/OnRampExternalAccountSelector.js.map +1 -0
  132. package/dist/components/funding/OnRampExternalAccountSelector.mjs +109 -0
  133. package/dist/components/funding/OnRampExternalAccountSelector.mjs.map +1 -0
  134. package/dist/components/funding/OnRampExternalWallet.d.ts +12 -0
  135. package/dist/components/funding/OnRampExternalWallet.d.ts.map +1 -0
  136. package/dist/components/funding/OnRampExternalWallet.js +218 -0
  137. package/dist/components/funding/OnRampExternalWallet.js.map +1 -0
  138. package/dist/components/funding/OnRampExternalWallet.mjs +303 -0
  139. package/dist/components/funding/OnRampExternalWallet.mjs.map +1 -0
  140. package/dist/components/funding/OnRampStatus.d.ts +15 -0
  141. package/dist/components/funding/OnRampStatus.d.ts.map +1 -0
  142. package/dist/components/funding/OnRampStatus.js +114 -0
  143. package/dist/components/funding/OnRampStatus.js.map +1 -0
  144. package/dist/components/funding/OnRampStatus.mjs +166 -0
  145. package/dist/components/funding/OnRampStatus.mjs.map +1 -0
  146. package/dist/components/funding/PaymentMethods.d.ts +35 -0
  147. package/dist/components/funding/PaymentMethods.d.ts.map +1 -0
  148. package/dist/components/funding/PaymentMethods.js +173 -0
  149. package/dist/components/funding/PaymentMethods.js.map +1 -0
  150. package/dist/components/funding/PaymentMethods.mjs +180 -0
  151. package/dist/components/funding/PaymentMethods.mjs.map +1 -0
  152. package/dist/components/funding/QuoteDetails.d.ts +13 -0
  153. package/dist/components/funding/QuoteDetails.d.ts.map +1 -0
  154. package/dist/components/funding/QuoteDetails.js +124 -0
  155. package/dist/components/funding/QuoteDetails.js.map +1 -0
  156. package/dist/components/funding/QuoteDetails.mjs +121 -0
  157. package/dist/components/funding/QuoteDetails.mjs.map +1 -0
  158. package/dist/components/funding/QuoteOption.d.ts +23 -0
  159. package/dist/components/funding/QuoteOption.d.ts.map +1 -0
  160. package/dist/components/funding/QuoteOption.js +153 -0
  161. package/dist/components/funding/QuoteOption.js.map +1 -0
  162. package/dist/components/funding/QuoteOption.mjs +150 -0
  163. package/dist/components/funding/QuoteOption.mjs.map +1 -0
  164. package/dist/components/funding/QuotePicker.d.ts +13 -0
  165. package/dist/components/funding/QuotePicker.d.ts.map +1 -0
  166. package/dist/components/funding/QuotePicker.js +49 -0
  167. package/dist/components/funding/QuotePicker.js.map +1 -0
  168. package/dist/components/funding/QuotePicker.mjs +48 -0
  169. package/dist/components/funding/QuotePicker.mjs.map +1 -0
  170. package/dist/components/funding/TokenSelect.d.ts +18 -0
  171. package/dist/components/funding/TokenSelect.d.ts.map +1 -0
  172. package/dist/components/funding/TokenSelect.js +198 -0
  173. package/dist/components/funding/TokenSelect.js.map +1 -0
  174. package/dist/components/funding/TokenSelect.mjs +210 -0
  175. package/dist/components/funding/TokenSelect.mjs.map +1 -0
  176. package/dist/components/funding/offRampRedirect.d.ts +61 -0
  177. package/dist/components/funding/offRampRedirect.d.ts.map +1 -0
  178. package/dist/components/funding/offRampRedirect.js +282 -0
  179. package/dist/components/funding/offRampRedirect.js.map +1 -0
  180. package/dist/components/funding/offRampRedirect.mjs +274 -0
  181. package/dist/components/funding/offRampRedirect.mjs.map +1 -0
  182. package/dist/components/send-transaction/SendTransaction.d.ts.map +1 -1
  183. package/dist/components/send-transaction/SendTransaction.js +8 -6
  184. package/dist/components/send-transaction/SendTransaction.js.map +1 -1
  185. package/dist/components/send-transaction/SendTransaction.mjs +8 -6
  186. package/dist/components/send-transaction/SendTransaction.mjs.map +1 -1
  187. package/dist/components/send-transaction/helpers.d.ts.map +1 -1
  188. package/dist/components/send-transaction/helpers.js +4 -0
  189. package/dist/components/send-transaction/helpers.js.map +1 -1
  190. package/dist/components/send-transaction/helpers.mjs +4 -0
  191. package/dist/components/send-transaction/helpers.mjs.map +1 -1
  192. package/dist/components/sign/Message.d.ts.map +1 -1
  193. package/dist/components/sign/Message.js +2 -1
  194. package/dist/components/sign/Message.js.map +1 -1
  195. package/dist/components/sign/Message.mjs +2 -2
  196. package/dist/components/sign/Message.mjs.map +1 -1
  197. package/dist/providers/SupportedAssetsProvider.d.ts +18 -0
  198. package/dist/providers/SupportedAssetsProvider.d.ts.map +1 -0
  199. package/dist/providers/SupportedAssetsProvider.js +71 -0
  200. package/dist/providers/SupportedAssetsProvider.js.map +1 -0
  201. package/dist/providers/SupportedAssetsProvider.mjs +114 -0
  202. package/dist/providers/SupportedAssetsProvider.mjs.map +1 -0
  203. package/dist/providers/TurnkeyProvider.d.ts.map +1 -1
  204. package/dist/providers/TurnkeyProvider.js +2 -1
  205. package/dist/providers/TurnkeyProvider.js.map +1 -1
  206. package/dist/providers/TurnkeyProvider.mjs +2 -1
  207. package/dist/providers/TurnkeyProvider.mjs.map +1 -1
  208. package/dist/providers/client/Provider.d.ts.map +1 -1
  209. package/dist/providers/client/Provider.js +98 -153
  210. package/dist/providers/client/Provider.js.map +1 -1
  211. package/dist/providers/client/Provider.mjs +214 -328
  212. package/dist/providers/client/Provider.mjs.map +1 -1
  213. package/dist/providers/client/Types.d.ts +37 -12
  214. package/dist/providers/client/Types.d.ts.map +1 -1
  215. package/dist/providers/client/Types.js.map +1 -1
  216. package/dist/providers/client/Types.mjs.map +1 -1
  217. package/dist/providers/modal/Provider.d.ts +1 -0
  218. package/dist/providers/modal/Provider.d.ts.map +1 -1
  219. package/dist/providers/modal/Provider.js +12 -0
  220. package/dist/providers/modal/Provider.js.map +1 -1
  221. package/dist/providers/modal/Provider.mjs +15 -0
  222. package/dist/providers/modal/Provider.mjs.map +1 -1
  223. package/dist/providers/modal/Root.d.ts.map +1 -1
  224. package/dist/providers/modal/Root.js +16 -14
  225. package/dist/providers/modal/Root.js.map +1 -1
  226. package/dist/providers/modal/Root.mjs +16 -14
  227. package/dist/providers/modal/Root.mjs.map +1 -1
  228. package/dist/styles.css +1 -1
  229. package/dist/types/method-types.d.ts +21 -9
  230. package/dist/types/method-types.d.ts.map +1 -1
  231. package/dist/utils/funding/buildCryptoTransfer.d.ts +41 -0
  232. package/dist/utils/funding/buildCryptoTransfer.d.ts.map +1 -0
  233. package/dist/utils/funding/buildCryptoTransfer.js +134 -0
  234. package/dist/utils/funding/buildCryptoTransfer.js.map +1 -0
  235. package/dist/utils/funding/buildCryptoTransfer.mjs +128 -0
  236. package/dist/utils/funding/buildCryptoTransfer.mjs.map +1 -0
  237. package/dist/utils/funding/chainLabel.d.ts +2 -0
  238. package/dist/utils/funding/chainLabel.d.ts.map +1 -0
  239. package/dist/utils/funding/chainLabel.js +19 -0
  240. package/dist/utils/funding/chainLabel.js.map +1 -0
  241. package/dist/utils/funding/chainLabel.mjs +18 -0
  242. package/dist/utils/funding/chainLabel.mjs.map +1 -0
  243. package/dist/utils/funding/depositPlan.d.ts +28 -0
  244. package/dist/utils/funding/depositPlan.d.ts.map +1 -0
  245. package/dist/utils/funding/depositPlan.js +127 -0
  246. package/dist/utils/funding/depositPlan.js.map +1 -0
  247. package/dist/utils/funding/depositPlan.mjs +120 -0
  248. package/dist/utils/funding/depositPlan.mjs.map +1 -0
  249. package/dist/utils/funding/index.d.ts +8 -0
  250. package/dist/utils/funding/index.d.ts.map +1 -0
  251. package/dist/utils/funding/onRampTokens.d.ts +6 -0
  252. package/dist/utils/funding/onRampTokens.d.ts.map +1 -0
  253. package/dist/utils/funding/onRampTokens.js +21 -0
  254. package/dist/utils/funding/onRampTokens.js.map +1 -0
  255. package/dist/utils/funding/onRampTokens.mjs +26 -0
  256. package/dist/utils/funding/onRampTokens.mjs.map +1 -0
  257. package/dist/utils/funding/rankQuotes.d.ts +7 -0
  258. package/dist/utils/funding/rankQuotes.d.ts.map +1 -0
  259. package/dist/utils/funding/rankQuotes.js +37 -0
  260. package/dist/utils/funding/rankQuotes.js.map +1 -0
  261. package/dist/utils/funding/rankQuotes.mjs +50 -0
  262. package/dist/utils/funding/rankQuotes.mjs.map +1 -0
  263. package/dist/utils/funding/sendCryptoTransfer.d.ts +26 -0
  264. package/dist/utils/funding/sendCryptoTransfer.d.ts.map +1 -0
  265. package/dist/utils/funding/sendCryptoTransfer.js +281 -0
  266. package/dist/utils/funding/sendCryptoTransfer.js.map +1 -0
  267. package/dist/utils/funding/sendCryptoTransfer.mjs +405 -0
  268. package/dist/utils/funding/sendCryptoTransfer.mjs.map +1 -0
  269. package/dist/utils/funding/tokenSymbol.d.ts +7 -0
  270. package/dist/utils/funding/tokenSymbol.d.ts.map +1 -0
  271. package/dist/utils/funding/tokenSymbol.js +32 -0
  272. package/dist/utils/funding/tokenSymbol.js.map +1 -0
  273. package/dist/utils/funding/tokenSymbol.mjs +31 -0
  274. package/dist/utils/funding/tokenSymbol.mjs.map +1 -0
  275. package/dist/utils/utils.d.ts +1 -0
  276. package/dist/utils/utils.d.ts.map +1 -1
  277. package/dist/utils/utils.js +5 -0
  278. package/dist/utils/utils.js.map +1 -1
  279. package/dist/utils/utils.mjs +7 -1
  280. package/dist/utils/utils.mjs.map +1 -1
  281. package/package.json +7 -3
  282. package/dist/components/onramp/OnRamp.d.ts +0 -14
  283. package/dist/components/onramp/OnRamp.d.ts.map +0 -1
  284. package/dist/components/onramp/OnRamp.js +0 -61
  285. package/dist/components/onramp/OnRamp.js.map +0 -1
  286. package/dist/components/onramp/OnRamp.mjs +0 -79
  287. package/dist/components/onramp/OnRamp.mjs.map +0 -1
@@ -0,0 +1,11 @@
1
+ import { type OnRampCaip19, type OnRampCaip2, type WalletAccount } from "@turnkey/core";
2
+ export declare function OnRampCrypto(props: {
3
+ walletAccount: WalletAccount;
4
+ lockedCaip19?: OnRampCaip19 | undefined;
5
+ lockedCaip2?: OnRampCaip2 | undefined;
6
+ rpcUrl?: string | undefined;
7
+ successPageDuration?: number | undefined;
8
+ onSuccess?: (() => void) | undefined;
9
+ onError?: ((error: unknown) => void) | undefined;
10
+ }): import("react/jsx-runtime").JSX.Element;
11
+ //# sourceMappingURL=OnRampCrypto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnRampCrypto.d.ts","sourceRoot":"","sources":["../../../src/components/funding/OnRampCrypto.tsx"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,aAAa,EAGnB,MAAM,eAAe,CAAC;AAQvB,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAClC,aAAa,EAAE,aAAa,CAAC;IAC7B,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACxC,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CAClD,2CAuFA"}
@@ -0,0 +1,126 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var freeSolidSvgIcons = require('@fortawesome/free-solid-svg-icons');
5
+ var reactFontawesome = require('@fortawesome/react-fontawesome');
6
+ var clsx = require('clsx');
7
+ var react = require('react');
8
+ var core = require('@turnkey/core');
9
+ var Hook$1 = require('../../providers/client/Hook.js');
10
+ var Hook = require('../../providers/modal/Hook.js');
11
+ var WalletConnectProvider = require('../../providers/WalletConnectProvider.js');
12
+ var utils = require('../../utils/utils.js');
13
+ var Buttons = require('../design/Buttons.js');
14
+ var OnRampExternalWallet = require('./OnRampExternalWallet.js');
15
+
16
+ function OnRampCrypto(props) {
17
+ const {
18
+ walletAccount,
19
+ lockedCaip19,
20
+ lockedCaip2,
21
+ rpcUrl,
22
+ successPageDuration,
23
+ onSuccess,
24
+ onError
25
+ } = props;
26
+ const {
27
+ pushPage,
28
+ isMobile
29
+ } = Hook.useModal();
30
+ const {
31
+ walletProviders
32
+ } = Hook$1.useTurnkey();
33
+ const {
34
+ walletConnectApps
35
+ } = WalletConnectProvider.useWalletConnect();
36
+ const [isHovering, setIsHovering] = react.useState(false);
37
+ const icons = react.useMemo(() => previewWalletIcons({
38
+ providers: walletProviders,
39
+ apps: walletConnectApps,
40
+ chain: chainForAccount(walletAccount)
41
+ }), [walletAccount, walletConnectApps, walletProviders]);
42
+ return jsxRuntime.jsx("div", {
43
+ className: "flex w-full flex-col gap-2",
44
+ children: jsxRuntime.jsxs(Buttons.ActionButton, {
45
+ name: "onramp-external-wallet",
46
+ onClick: () => pushPage({
47
+ key: "Select wallet provider",
48
+ content: jsxRuntime.jsx(OnRampExternalWallet.OnRampExternalWallet, {
49
+ walletAccount: walletAccount,
50
+ lockedCaip19: lockedCaip19,
51
+ lockedCaip2: lockedCaip2,
52
+ rpcUrl: rpcUrl,
53
+ successPageDuration: successPageDuration,
54
+ onSuccess: onSuccess,
55
+ onError: onError
56
+ })
57
+ }),
58
+ ...(!isMobile && {
59
+ onMouseEnter: () => setIsHovering(true),
60
+ onMouseLeave: () => setIsHovering(false)
61
+ }),
62
+ className: "relative flex w-full items-center justify-between gap-2 overflow-hidden bg-button-light text-inherit dark:bg-button-dark",
63
+ children: [jsxRuntime.jsxs("span", {
64
+ className: "flex min-w-0 items-center gap-2",
65
+ children: [jsxRuntime.jsx("span", {
66
+ className: "flex size-6 shrink-0 items-center justify-center",
67
+ children: jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
68
+ icon: freeSolidSvgIcons.faWallet,
69
+ className: "size-4"
70
+ })
71
+ }), jsxRuntime.jsxs("span", {
72
+ className: "flex flex-col items-start",
73
+ children: [jsxRuntime.jsx("span", {
74
+ children: "External wallet"
75
+ }), jsxRuntime.jsx("span", {
76
+ className: "text-xs text-icon-text-light dark:text-icon-text-dark",
77
+ children: "Send from a connected external wallet"
78
+ })]
79
+ })]
80
+ }), icons.length > 0 && jsxRuntime.jsx("span", {
81
+ className: "flex shrink-0 items-center gap-1",
82
+ children: icons.map((icon, index) => jsxRuntime.jsx("span", {
83
+ style: {
84
+ transitionDelay: `${50 + index * 30}ms`
85
+ },
86
+ className: clsx("relative size-4 transition-all duration-200", isHovering ? "-translate-x-8" : "translate-x-0"),
87
+ children: jsxRuntime.jsx("img", {
88
+ src: icon,
89
+ alt: "",
90
+ className: "size-4 rounded-full"
91
+ })
92
+ }, `${icon}-${index}`))
93
+ }), jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
94
+ className: clsx("absolute transition-all duration-200 text-icon-text-light dark:text-icon-text-dark", isHovering ? "right-4" : "-right-4"),
95
+ icon: freeSolidSvgIcons.faChevronRight
96
+ })]
97
+ })
98
+ });
99
+ }
100
+ function previewWalletIcons(params) {
101
+ const providers = params.providers.filter(provider => !params.chain || provider.chainInfo.namespace === params.chain);
102
+ const onlyWalletConnect = providers.length > 0 && providers.every(utils.isWalletConnect);
103
+ // If there is only one provider and it is a WalletConnect app, return the icons for the apps
104
+ if (onlyWalletConnect) {
105
+ const seen = new Set();
106
+ const icons = [];
107
+ for (const app of params.apps) {
108
+ if (params.chain && app.chain !== params.chain) continue;
109
+ if (!app.icon || seen.has(app.id)) continue;
110
+ seen.add(app.id);
111
+ icons.push(app.icon);
112
+ if (icons.length === 3) break;
113
+ }
114
+ return icons;
115
+ }
116
+ // Otherwise, return the icons for the providers
117
+ return providers.map(provider => provider.info.icon).filter(icon => !!icon).slice(0, 3);
118
+ }
119
+ function chainForAccount(account) {
120
+ if (account?.addressFormat === "ADDRESS_FORMAT_ETHEREUM") return core.Chain.Ethereum;
121
+ if (account?.addressFormat === "ADDRESS_FORMAT_SOLANA") return core.Chain.Solana;
122
+ return undefined;
123
+ }
124
+
125
+ exports.OnRampCrypto = OnRampCrypto;
126
+ //# sourceMappingURL=OnRampCrypto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnRampCrypto.js","sources":["../../../src/components/funding/OnRampCrypto.tsx"],"sourcesContent":[null],"names":["OnRampCrypto","props","walletAccount","lockedCaip19","lockedCaip2","rpcUrl","successPageDuration","onSuccess","onError","pushPage","isMobile","useModal","walletProviders","useTurnkey","walletConnectApps","useWalletConnect","isHovering","setIsHovering","useState","icons","useMemo","previewWalletIcons","providers","apps","chain","chainForAccount","_jsx","className","children","_jsxs","ActionButton","name","onClick","key","content","OnRampExternalWallet","onMouseEnter","onMouseLeave","FontAwesomeIcon","icon","faWallet","length","map","index","style","transitionDelay","clsx","src","alt","faChevronRight","params","filter","provider","chainInfo","namespace","onlyWalletConnect","every","isWalletConnect","seen","Set","app","has","id","add","push","info","slice","account","addressFormat","Chain","Ethereum","Solana","undefined"],"mappings":"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"}
@@ -0,0 +1,148 @@
1
+ import { slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2, createForOfIteratorHelper as _createForOfIteratorHelper } from '../../_virtual/_rollupPluginBabelHelpers.mjs';
2
+ import { jsx, jsxs } from 'react/jsx-runtime';
3
+ import { faWallet, faChevronRight } from '@fortawesome/free-solid-svg-icons';
4
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
5
+ import clsx from 'clsx';
6
+ import { useState, useMemo } from 'react';
7
+ import { Chain } from '@turnkey/core';
8
+ import { useTurnkey } from '../../providers/client/Hook.mjs';
9
+ import { useModal } from '../../providers/modal/Hook.mjs';
10
+ import { useWalletConnect } from '../../providers/WalletConnectProvider.mjs';
11
+ import { isWalletConnect } from '../../utils/utils.mjs';
12
+ import { ActionButton } from '../design/Buttons.mjs';
13
+ import { OnRampExternalWallet } from './OnRampExternalWallet.mjs';
14
+
15
+ function OnRampCrypto(props) {
16
+ var walletAccount = props.walletAccount,
17
+ lockedCaip19 = props.lockedCaip19,
18
+ lockedCaip2 = props.lockedCaip2,
19
+ rpcUrl = props.rpcUrl,
20
+ successPageDuration = props.successPageDuration,
21
+ onSuccess = props.onSuccess,
22
+ onError = props.onError;
23
+ var _useModal = useModal(),
24
+ pushPage = _useModal.pushPage,
25
+ isMobile = _useModal.isMobile;
26
+ var _useTurnkey = useTurnkey(),
27
+ walletProviders = _useTurnkey.walletProviders;
28
+ var _useWalletConnect = useWalletConnect(),
29
+ walletConnectApps = _useWalletConnect.walletConnectApps;
30
+ var _useState = useState(false),
31
+ _useState2 = _slicedToArray(_useState, 2),
32
+ isHovering = _useState2[0],
33
+ setIsHovering = _useState2[1];
34
+ var icons = useMemo(function () {
35
+ return previewWalletIcons({
36
+ providers: walletProviders,
37
+ apps: walletConnectApps,
38
+ chain: chainForAccount(walletAccount)
39
+ });
40
+ }, [walletAccount, walletConnectApps, walletProviders]);
41
+ return jsx("div", {
42
+ className: "flex w-full flex-col gap-2",
43
+ children: jsxs(ActionButton, _objectSpread2(_objectSpread2({
44
+ name: "onramp-external-wallet",
45
+ onClick: function onClick() {
46
+ return pushPage({
47
+ key: "Select wallet provider",
48
+ content: jsx(OnRampExternalWallet, {
49
+ walletAccount: walletAccount,
50
+ lockedCaip19: lockedCaip19,
51
+ lockedCaip2: lockedCaip2,
52
+ rpcUrl: rpcUrl,
53
+ successPageDuration: successPageDuration,
54
+ onSuccess: onSuccess,
55
+ onError: onError
56
+ })
57
+ });
58
+ }
59
+ }, !isMobile && {
60
+ onMouseEnter: function onMouseEnter() {
61
+ return setIsHovering(true);
62
+ },
63
+ onMouseLeave: function onMouseLeave() {
64
+ return setIsHovering(false);
65
+ }
66
+ }), {}, {
67
+ className: "relative flex w-full items-center justify-between gap-2 overflow-hidden bg-button-light text-inherit dark:bg-button-dark",
68
+ children: [jsxs("span", {
69
+ className: "flex min-w-0 items-center gap-2",
70
+ children: [jsx("span", {
71
+ className: "flex size-6 shrink-0 items-center justify-center",
72
+ children: jsx(FontAwesomeIcon, {
73
+ icon: faWallet,
74
+ className: "size-4"
75
+ })
76
+ }), jsxs("span", {
77
+ className: "flex flex-col items-start",
78
+ children: [jsx("span", {
79
+ children: "External wallet"
80
+ }), jsx("span", {
81
+ className: "text-xs text-icon-text-light dark:text-icon-text-dark",
82
+ children: "Send from a connected external wallet"
83
+ })]
84
+ })]
85
+ }), icons.length > 0 && jsx("span", {
86
+ className: "flex shrink-0 items-center gap-1",
87
+ children: icons.map(function (icon, index) {
88
+ return jsx("span", {
89
+ style: {
90
+ transitionDelay: "".concat(50 + index * 30, "ms")
91
+ },
92
+ className: clsx("relative size-4 transition-all duration-200", isHovering ? "-translate-x-8" : "translate-x-0"),
93
+ children: jsx("img", {
94
+ src: icon,
95
+ alt: "",
96
+ className: "size-4 rounded-full"
97
+ })
98
+ }, "".concat(icon, "-").concat(index));
99
+ })
100
+ }), jsx(FontAwesomeIcon, {
101
+ className: clsx("absolute transition-all duration-200 text-icon-text-light dark:text-icon-text-dark", isHovering ? "right-4" : "-right-4"),
102
+ icon: faChevronRight
103
+ })]
104
+ }))
105
+ });
106
+ }
107
+ function previewWalletIcons(params) {
108
+ var providers = params.providers.filter(function (provider) {
109
+ return !params.chain || provider.chainInfo.namespace === params.chain;
110
+ });
111
+ var onlyWalletConnect = providers.length > 0 && providers.every(isWalletConnect);
112
+ // If there is only one provider and it is a WalletConnect app, return the icons for the apps
113
+ if (onlyWalletConnect) {
114
+ var seen = new Set();
115
+ var icons = [];
116
+ var _iterator = _createForOfIteratorHelper(params.apps),
117
+ _step;
118
+ try {
119
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
120
+ var app = _step.value;
121
+ if (params.chain && app.chain !== params.chain) continue;
122
+ if (!app.icon || seen.has(app.id)) continue;
123
+ seen.add(app.id);
124
+ icons.push(app.icon);
125
+ if (icons.length === 3) break;
126
+ }
127
+ } catch (err) {
128
+ _iterator.e(err);
129
+ } finally {
130
+ _iterator.f();
131
+ }
132
+ return icons;
133
+ }
134
+ // Otherwise, return the icons for the providers
135
+ return providers.map(function (provider) {
136
+ return provider.info.icon;
137
+ }).filter(function (icon) {
138
+ return !!icon;
139
+ }).slice(0, 3);
140
+ }
141
+ function chainForAccount(account) {
142
+ if ((account === null || account === void 0 ? void 0 : account.addressFormat) === "ADDRESS_FORMAT_ETHEREUM") return Chain.Ethereum;
143
+ if ((account === null || account === void 0 ? void 0 : account.addressFormat) === "ADDRESS_FORMAT_SOLANA") return Chain.Solana;
144
+ return undefined;
145
+ }
146
+
147
+ export { OnRampCrypto };
148
+ //# sourceMappingURL=OnRampCrypto.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnRampCrypto.mjs","sources":["../../../src/components/funding/OnRampCrypto.tsx"],"sourcesContent":[null],"names":["OnRampCrypto","props","walletAccount","lockedCaip19","lockedCaip2","rpcUrl","successPageDuration","onSuccess","onError","_useModal","useModal","pushPage","isMobile","_useTurnkey","useTurnkey","walletProviders","_useWalletConnect","useWalletConnect","walletConnectApps","_useState","useState","_useState2","_slicedToArray","isHovering","setIsHovering","icons","useMemo","previewWalletIcons","providers","apps","chain","chainForAccount","_jsx","className","children","_jsxs","ActionButton","_objectSpread","name","onClick","key","content","OnRampExternalWallet","onMouseEnter","onMouseLeave","FontAwesomeIcon","icon","faWallet","length","map","index","style","transitionDelay","concat","clsx","src","alt","faChevronRight","params","filter","provider","chainInfo","namespace","onlyWalletConnect","every","isWalletConnect","seen","Set","_iterator","_createForOfIteratorHelper","_step","s","n","done","app","value","has","id","add","push","err","e","f","info","slice","account","addressFormat","Chain","Ethereum","Solana","undefined"],"mappings":";;;;;;;;;;;;;;AAmBM,SAAUA,YAAYA,CAACC,KAQ5B,EAAA;AACC,EAAA,IACEC,aAAa,GAOXD,KAAK,CAPPC,aAAa;IACbC,YAAY,GAMVF,KAAK,CANPE,YAAY;IACZC,WAAW,GAKTH,KAAK,CALPG,WAAW;IACXC,MAAM,GAIJJ,KAAK,CAJPI,MAAM;IACNC,mBAAmB,GAGjBL,KAAK,CAHPK,mBAAmB;IACnBC,SAAS,GAEPN,KAAK,CAFPM,SAAS;IACTC,OAAO,GACLP,KAAK,CADPO,OAAO;AAET,EAAA,IAAAC,SAAA,GAA+BC,QAAQ,EAAE;IAAjCC,QAAQ,GAAAF,SAAA,CAARE,QAAQ;IAAEC,QAAQ,GAAAH,SAAA,CAARG,QAAQ;AAC1B,EAAA,IAAAC,WAAA,GAA4BC,UAAU,EAAE;IAAhCC,eAAe,GAAAF,WAAA,CAAfE,eAAe;AACvB,EAAA,IAAAC,iBAAA,GAA8BC,gBAAgB,EAAE;IAAxCC,iBAAiB,GAAAF,iBAAA,CAAjBE,iBAAiB;AACzB,EAAA,IAAAC,SAAA,GAAoCC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA5CI,IAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,aAAa,GAAAH,UAAA,CAAA,CAAA,CAAA;EAChC,IAAMI,KAAK,GAAGC,OAAO,CACnB,YAAA;AAAA,IAAA,OACEC,kBAAkB,CAAC;AACjBC,MAAAA,SAAS,EAAEb,eAAe;AAC1Bc,MAAAA,IAAI,EAAEX,iBAAiB;MACvBY,KAAK,EAAEC,eAAe,CAAC7B,aAAa;KACrC,CAAC;AAAA,EAAA,CAAA,EACJ,CAACA,aAAa,EAAEgB,iBAAiB,EAAEH,eAAe,CAAC,CACpD;EAED,OACEiB,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,4BAA4B;AAAAC,IAAAA,QAAA,EACzCC,KAACC,YAAY,EAAAC,cAAA,CAAAA,cAAA,CAAA;AACXC,MAAAA,IAAI,EAAC,wBAAwB;MAC7BC,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,QAAA,OACL5B,QAAQ,CAAC;AACP6B,UAAAA,GAAG,EAAE,wBAAwB;AAC7BC,UAAAA,OAAO,EACLT,GAAA,CAACU,oBAAoB;AACnBxC,YAAAA,aAAa,EAAEA,aAAa;AAC5BC,YAAAA,YAAY,EAAEA,YAAY;AAC1BC,YAAAA,WAAW,EAAEA,WAAW;AACxBC,YAAAA,MAAM,EAAEA,MAAM;AACdC,YAAAA,mBAAmB,EAAEA,mBAAmB;AACxCC,YAAAA,SAAS,EAAEA,SAAS;AACpBC,YAAAA,OAAO,EAAEA;;AAGd,SAAA,CAAC;AAAA,MAAA;KAAA,EAEC,CAACI,QAAQ,IAAI;MAChB+B,YAAY,EAAE,SAAdA,YAAYA,GAAA;QAAA,OAAQnB,aAAa,CAAC,IAAI,CAAC;AAAA,MAAA,CAAA;MACvCoB,YAAY,EAAE,SAAdA,YAAYA,GAAA;QAAA,OAAQpB,aAAa,CAAC,KAAK,CAAC;AAAA,MAAA;KACzC,CAAA,EAAA,EAAA,EAAA;AACDS,MAAAA,SAAS,EAAC,0HAA0H;iBAEpIE,IAAA,CAAA,MAAA,EAAA;AAAMF,QAAAA,SAAS,EAAC,iCAAiC;mBAC/CD,GAAA,CAAA,MAAA,EAAA;AAAMC,UAAAA,SAAS,EAAC,kDAAkD;oBAChED,GAAA,CAACa,eAAe,EAAA;AAACC,YAAAA,IAAI,EAAEC,QAAQ;AAAEd,YAAAA,SAAS,EAAC;WAAQ;AAAG,SAAA,CACjD,EACPE;AAAMF,UAAAA,SAAS,EAAC,2BAA2B;AAAAC,UAAAA,QAAA,EAAA,CACzCF;;YAA4B,EAC5BA,GAAA,CAAA,MAAA,EAAA;AAAMC,YAAAA,SAAS,EAAC,uDAAuD;AAAAC,YAAAA,QAAA,EAAA;AAAA,WAAA,CAEhE;AAAA,SAAA,CACF;OAAA,CACF,EACNT,KAAK,CAACuB,MAAM,GAAG,CAAC,IACfhB,GAAA,CAAA,MAAA,EAAA;AAAMC,QAAAA,SAAS,EAAC,kCAAkC;QAAAC,QAAA,EAC/CT,KAAK,CAACwB,GAAG,CAAC,UAACH,IAAI,EAAEI,KAAK,EAAA;UAAA,OACrBlB;AAEEmB,YAAAA,KAAK,EAAE;AAAEC,cAAAA,eAAe,KAAAC,MAAA,CAAK,EAAE,GAAGH,KAAK,GAAG,EAAE,EAAA,IAAA;aAAM;YAClDjB,SAAS,EAAEqB,IAAI,CACb,6CAA6C,EAC7C/B,UAAU,GAAG,gBAAgB,GAAG,eAAe,CAChD;AAAAW,YAAAA,QAAA,EAEDF,GAAA,CAAA,KAAA,EAAA;AAAKuB,cAAAA,GAAG,EAAET,IAAI;AAAEU,cAAAA,GAAG,EAAC,EAAE;AAACvB,cAAAA,SAAS,EAAC;;WAAwB,EAAA,EAAA,CAAAoB,MAAA,CAPjDP,IAAI,OAAAO,MAAA,CAAIH,KAAK,CAAE,CAQlB;QAAA,CACR;AAAC,OAAA,CAEL,EACDlB,GAAA,CAACa,eAAe,EAAA;QACdZ,SAAS,EAAEqB,IAAI,CACb,oFAAoF,EACpF/B,UAAU,GAAG,SAAS,GAAG,UAAU,CACpC;AACDuB,QAAAA,IAAI,EAAEW;AAAc,OAAA,CACpB;KAAA,CAAA;AACW,GAAA,CACX;AAEV;AAEA,SAAS9B,kBAAkBA,CAAC+B,MAI3B,EAAA;EACC,IAAM9B,SAAS,GAAG8B,MAAM,CAAC9B,SAAS,CAAC+B,MAAM,CACvC,UAACC,QAAQ,EAAA;AAAA,IAAA,OACP,CAACF,MAAM,CAAC5B,KAAK,IAAI8B,QAAQ,CAACC,SAAS,CAACC,SAAS,KAAKJ,MAAM,CAAC5B,KAAK;EAAA,CAAA,CACjE;AACD,EAAA,IAAMiC,iBAAiB,GACrBnC,SAAS,CAACoB,MAAM,GAAG,CAAC,IAAIpB,SAAS,CAACoC,KAAK,CAACC,eAAe,CAAC;AAE1D;AACA,EAAA,IAAIF,iBAAiB,EAAE;AACrB,IAAA,IAAMG,IAAI,GAAG,IAAIC,GAAG,EAAU;IAC9B,IAAM1C,KAAK,GAAa,EAAE;AAAC,IAAA,IAAA2C,SAAA,GAAAC,0BAAA,CACTX,MAAM,CAAC7B,IAAI,CAAA;MAAAyC,KAAA;AAAA,IAAA,IAAA;MAA7B,KAAAF,SAAA,CAAAG,CAAA,EAAA,EAAA,CAAA,CAAAD,KAAA,GAAAF,SAAA,CAAAI,CAAA,EAAA,EAAAC,IAAA,GAA+B;AAAA,QAAA,IAApBC,GAAG,GAAAJ,KAAA,CAAAK,KAAA;QACZ,IAAIjB,MAAM,CAAC5B,KAAK,IAAI4C,GAAG,CAAC5C,KAAK,KAAK4B,MAAM,CAAC5B,KAAK,EAAE;AAChD,QAAA,IAAI,CAAC4C,GAAG,CAAC5B,IAAI,IAAIoB,IAAI,CAACU,GAAG,CAACF,GAAG,CAACG,EAAE,CAAC,EAAE;AACnCX,QAAAA,IAAI,CAACY,GAAG,CAACJ,GAAG,CAACG,EAAE,CAAC;AAChBpD,QAAAA,KAAK,CAACsD,IAAI,CAACL,GAAG,CAAC5B,IAAI,CAAC;AACpB,QAAA,IAAIrB,KAAK,CAACuB,MAAM,KAAK,CAAC,EAAE;AAC1B,MAAA;AAAC,IAAA,CAAA,CAAA,OAAAgC,GAAA,EAAA;MAAAZ,SAAA,CAAAa,CAAA,CAAAD,GAAA,CAAA;AAAA,IAAA,CAAA,SAAA;AAAAZ,MAAAA,SAAA,CAAAc,CAAA,EAAA;AAAA,IAAA;AACD,IAAA,OAAOzD,KAAK;AACd,EAAA;AAEA;AACA,EAAA,OAAOG,SAAS,CACbqB,GAAG,CAAC,UAACW,QAAQ,EAAA;AAAA,IAAA,OAAKA,QAAQ,CAACuB,IAAI,CAACrC,IAAI;AAAA,EAAA,CAAA,CAAC,CACrCa,MAAM,CAAC,UAACb,IAAI,EAAA;IAAA,OAAqB,CAAC,CAACA,IAAI;AAAA,EAAA,CAAA,CAAC,CACxCsC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;AAChB;AAEA,SAASrD,eAAeA,CAACsD,OAAmC,EAAA;AAC1D,EAAA,IAAI,CAAAA,OAAO,KAAA,IAAA,IAAPA,OAAO,uBAAPA,OAAO,CAAEC,aAAa,MAAK,yBAAyB,EACtD,OAAOC,KAAK,CAACC,QAAQ;AACvB,EAAA,IAAI,CAAAH,OAAO,KAAA,IAAA,IAAPA,OAAO,uBAAPA,OAAO,CAAEC,aAAa,MAAK,uBAAuB,EAAE,OAAOC,KAAK,CAACE,MAAM;AAC3E,EAAA,OAAOC,SAAS;AAClB;;;;"}
@@ -0,0 +1,15 @@
1
+ import type { OnRampCaip19, OnRampCaip2, WalletAccount, WalletProvider } from "@turnkey/core";
2
+ export type OnRampCryptoSendProps = {
3
+ destination: WalletAccount;
4
+ externalWallet: WalletProvider;
5
+ externalAccount: WalletAccount;
6
+ lockedCaip19?: OnRampCaip19 | undefined;
7
+ lockedCaip2?: OnRampCaip2 | undefined;
8
+ rpcUrl?: string | undefined;
9
+ successPageDuration?: number | undefined;
10
+ onSuccess?: (() => void) | undefined;
11
+ onError?: ((error: unknown) => void) | undefined;
12
+ onChangeWallet: () => void;
13
+ };
14
+ export declare function OnRampCryptoSend(props: OnRampCryptoSendProps): import("react/jsx-runtime").JSX.Element;
15
+ //# sourceMappingURL=OnRampCryptoSend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnRampCryptoSend.d.ts","sourceRoot":"","sources":["../../../src/components/funding/OnRampCryptoSend.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,aAAa,EACb,cAAc,EACf,MAAM,eAAe,CAAC;AA0BvB,MAAM,MAAM,qBAAqB,GAAG;IAClC,WAAW,EAAE,aAAa,CAAC;IAC3B,cAAc,EAAE,cAAc,CAAC;IAC/B,eAAe,EAAE,aAAa,CAAC;IAC/B,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACxC,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACjD,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,2CAgR5D"}
@@ -0,0 +1,251 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var freeSolidSvgIcons = require('@fortawesome/free-solid-svg-icons');
5
+ var reactFontawesome = require('@fortawesome/react-fontawesome');
6
+ var react = require('react');
7
+ var clsx = require('clsx');
8
+ var Hook$1 = require('../../providers/client/Hook.js');
9
+ var Hook = require('../../providers/modal/Hook.js');
10
+ var SupportedAssetsProvider = require('../../providers/SupportedAssetsProvider.js');
11
+ var buildCryptoTransfer = require('../../utils/funding/buildCryptoTransfer.js');
12
+ var chainLabel = require('../../utils/funding/chainLabel.js');
13
+ var sendCryptoTransfer = require('../../utils/funding/sendCryptoTransfer.js');
14
+ var tokenSymbol = require('../../utils/funding/tokenSymbol.js');
15
+ var onRampTokens = require('../../utils/funding/onRampTokens.js');
16
+ var utils = require('../../utils/utils.js');
17
+ var Buttons = require('../design/Buttons.js');
18
+ var Svg = require('../design/Svg.js');
19
+ var CryptoAmountInput = require('./CryptoAmountInput.js');
20
+ var OnRampCryptoStatus = require('./OnRampCryptoStatus.js');
21
+
22
+ const partyLabelClassName = "px-1 text-xs font-medium text-icon-text-light dark:text-icon-text-dark";
23
+ function OnRampCryptoSend(props) {
24
+ const {
25
+ destination,
26
+ externalWallet,
27
+ externalAccount,
28
+ lockedCaip19,
29
+ lockedCaip2,
30
+ rpcUrl,
31
+ successPageDuration,
32
+ onSuccess,
33
+ onError,
34
+ onChangeWallet
35
+ } = props;
36
+ const {
37
+ pushPage,
38
+ isMobile
39
+ } = Hook.useModal();
40
+ const {
41
+ signAndSendTransaction
42
+ } = Hook$1.useTurnkey();
43
+ const {
44
+ assetsByCaip2
45
+ } = SupportedAssetsProvider.useSupportedAssets();
46
+ const [isHoveringFrom, setIsHoveringFrom] = react.useState(false);
47
+ const [isHoveringTo, setIsHoveringTo] = react.useState(false);
48
+ const [showCopied, setShowCopied] = react.useState(false);
49
+ const [sending, setSending] = react.useState(false);
50
+ const [error, setError] = react.useState(null);
51
+ const [shaking, setShaking] = react.useState(false);
52
+ const tokens = react.useMemo(() => onRampTokens.onRampTokensForAccount(destination, {
53
+ caip19: lockedCaip19,
54
+ caip2: lockedCaip2
55
+ }), [destination, lockedCaip19, lockedCaip2]);
56
+ const [token, setToken] = react.useState(lockedCaip19 ?? tokens[0]);
57
+ const [amount, setAmount] = react.useState("0");
58
+ react.useEffect(() => {
59
+ if (lockedCaip19) {
60
+ setToken(lockedCaip19);
61
+ return;
62
+ }
63
+ if (!token || !tokens.includes(token)) {
64
+ setToken(tokens[0]);
65
+ }
66
+ }, [lockedCaip19, token, tokens]);
67
+ react.useEffect(() => {
68
+ setError(null);
69
+ }, [amount, token]);
70
+ const ChainLogo = isSolanaChain(destination, token) ? Svg.SolanaLogo : Svg.EthereumLogo;
71
+ const preparedTransfer = react.useMemo(() => {
72
+ if (!token) return undefined;
73
+ try {
74
+ return buildCryptoTransfer.buildOnRampCryptoTransfer({
75
+ token,
76
+ amount,
77
+ decimals: tokenSymbol.tokenDecimals(token, assetsByCaip2),
78
+ from: externalAccount,
79
+ to: destination
80
+ });
81
+ } catch {
82
+ return undefined;
83
+ }
84
+ }, [amount, assetsByCaip2, destination, externalAccount, token]);
85
+ const send = async () => {
86
+ if (!preparedTransfer || sending) return;
87
+ setSending(true);
88
+ setError(null);
89
+ try {
90
+ const provider = externalWallet.provider;
91
+ if (preparedTransfer.transactionType === "TRANSACTION_TYPE_ETHEREUM") {
92
+ const chainId = Number(preparedTransfer.caip2.slice("eip155:".length));
93
+ if (sendCryptoTransfer.evmChainId(externalWallet.chainInfo) !== chainId) {
94
+ await sendCryptoTransfer.switchSelectedEthereumChain(provider, `0x${chainId.toString(16)}`);
95
+ }
96
+ }
97
+ const resolvedRpcUrl = preparedTransfer.transactionType === "TRANSACTION_TYPE_SOLANA" ? sendCryptoTransfer.solanaRpcUrl(preparedTransfer.caip2, rpcUrl) : rpcUrl;
98
+ const unsignedTransaction = await sendCryptoTransfer.buildUnsignedOnRampTransaction({
99
+ transfer: preparedTransfer,
100
+ provider,
101
+ rpcUrl: resolvedRpcUrl
102
+ });
103
+ const transactionId = await signAndSendTransaction({
104
+ walletAccount: externalAccount,
105
+ unsignedTransaction,
106
+ transactionType: preparedTransfer.transactionType,
107
+ ...(resolvedRpcUrl ? {
108
+ rpcUrl: resolvedRpcUrl
109
+ } : {})
110
+ });
111
+ pushPage({
112
+ key: "Sending",
113
+ showTitle: false,
114
+ content: jsxRuntime.jsx(OnRampCryptoStatus.OnRampCryptoStatus, {
115
+ chain: preparedTransfer.transactionType === "TRANSACTION_TYPE_SOLANA" ? "solana" : "ethereum",
116
+ caip2: preparedTransfer.caip2,
117
+ transactionId: transactionId,
118
+ provider: provider,
119
+ rpcUrl: resolvedRpcUrl,
120
+ successPageDuration: successPageDuration,
121
+ iconUrl: externalWallet.info.icon,
122
+ onSuccess: onSuccess ?? (() => undefined),
123
+ onError: onError ?? (() => undefined)
124
+ })
125
+ });
126
+ } catch (caught) {
127
+ if (!sendCryptoTransfer.isUserRejected(caught)) {
128
+ setError(sendCryptoTransfer.sendErrorMessage(caught));
129
+ setShaking(true);
130
+ setTimeout(() => setShaking(false), 250);
131
+ }
132
+ onError?.(caught);
133
+ } finally {
134
+ setSending(false);
135
+ }
136
+ };
137
+ return jsxRuntime.jsxs("div", {
138
+ className: clsx("relative flex flex-col items-center justify-center gap-4 py-4 text-center", isMobile ? "w-full" : "w-96"),
139
+ children: [token && jsxRuntime.jsxs("div", {
140
+ className: "flex w-full flex-col items-center",
141
+ children: [jsxRuntime.jsx(CryptoAmountInput.CryptoAmountInput, {
142
+ value: amount,
143
+ onChange: setAmount,
144
+ token: token,
145
+ tokens: tokens,
146
+ onTokenChange: setToken,
147
+ locked: !!lockedCaip19
148
+ }), jsxRuntime.jsxs("p", {
149
+ className: "-mt-2 text-sm text-icon-text-light dark:text-icon-text-dark",
150
+ children: ["on ", chainLabel.chainLabel(tokenSymbol.caip2Of(token))]
151
+ })]
152
+ }), jsxRuntime.jsxs("div", {
153
+ className: "flex w-full flex-col gap-2 text-left",
154
+ children: [jsxRuntime.jsxs("div", {
155
+ className: "flex flex-col gap-1",
156
+ children: [jsxRuntime.jsx("div", {
157
+ className: partyLabelClassName,
158
+ children: "From"
159
+ }), jsxRuntime.jsxs(Buttons.ActionButton, {
160
+ name: "onramp-crypto-from",
161
+ onClick: onChangeWallet,
162
+ ...(!isMobile && {
163
+ onMouseEnter: () => setIsHoveringFrom(true),
164
+ onMouseLeave: () => setIsHoveringFrom(false)
165
+ }),
166
+ className: "relative flex w-full items-center gap-2 overflow-hidden bg-button-light text-inherit dark:bg-button-dark",
167
+ children: [externalWallet.info.icon ? jsxRuntime.jsx("img", {
168
+ src: externalWallet.info.icon,
169
+ alt: "",
170
+ className: "size-6 shrink-0 rounded-full"
171
+ }) : jsxRuntime.jsx("span", {
172
+ className: "size-6 shrink-0 rounded-full bg-icon-background-light dark:bg-icon-background-dark"
173
+ }), jsxRuntime.jsx("span", {
174
+ className: "text-sm",
175
+ children: utils.truncateAddress(externalAccount.address)
176
+ }), jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
177
+ className: clsx("absolute transition-all duration-200 text-icon-text-light dark:text-icon-text-dark", isHoveringFrom ? "right-4" : "-right-4"),
178
+ icon: freeSolidSvgIcons.faChevronRight
179
+ })]
180
+ })]
181
+ }), jsxRuntime.jsxs("div", {
182
+ className: "flex flex-col gap-1",
183
+ children: [jsxRuntime.jsx("div", {
184
+ className: partyLabelClassName,
185
+ children: "To"
186
+ }), jsxRuntime.jsxs(Buttons.ActionButton, {
187
+ name: "onramp-crypto-to",
188
+ disabled: !destination,
189
+ onClick: () => {
190
+ if (!destination) return;
191
+ setShowCopied(true);
192
+ void navigator.clipboard.writeText(destination.address);
193
+ setTimeout(() => setShowCopied(false), 1500);
194
+ },
195
+ ...(!isMobile && {
196
+ onMouseEnter: () => setIsHoveringTo(true),
197
+ onMouseLeave: () => setIsHoveringTo(false)
198
+ }),
199
+ className: clsx("relative flex w-full items-center gap-2 bg-button-light text-inherit dark:bg-button-dark", showCopied ? "overflow-visible" : "overflow-hidden"),
200
+ children: [jsxRuntime.jsxs("span", {
201
+ className: "relative flex size-6 shrink-0 items-center justify-center",
202
+ children: [jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
203
+ icon: freeSolidSvgIcons.faWallet,
204
+ className: "size-4"
205
+ }), jsxRuntime.jsx("span", {
206
+ className: "absolute -right-1.5 -bottom-1 flex size-3.5 items-center justify-center rounded-full bg-button-light dark:bg-button-dark",
207
+ children: jsxRuntime.jsx(ChainLogo, {
208
+ className: "size-2.5"
209
+ })
210
+ })]
211
+ }), jsxRuntime.jsx("span", {
212
+ className: "text-sm",
213
+ children: destination ? utils.truncateAddress(destination.address) : ""
214
+ }), jsxRuntime.jsx("div", {
215
+ className: clsx("absolute transition-all duration-200", isHoveringTo || showCopied || isMobile ? "right-4" : "-right-4"),
216
+ children: jsxRuntime.jsxs("div", {
217
+ className: "relative",
218
+ children: [jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
219
+ icon: showCopied ? freeSolidSvgIcons.faCheck : freeSolidSvgIcons.faCopy,
220
+ className: clsx("transition-colors", showCopied ? "text-success-light dark:text-success-dark" : "text-icon-text-light dark:text-icon-text-dark")
221
+ }), showCopied && jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
222
+ icon: freeSolidSvgIcons.faCheck,
223
+ className: "absolute inset-0 m-auto text-success-light dark:text-success-dark animate-ping"
224
+ })]
225
+ })
226
+ })]
227
+ })]
228
+ })]
229
+ }), jsxRuntime.jsx(Buttons.ActionButton, {
230
+ name: "onramp-crypto-continue",
231
+ disabled: !preparedTransfer || sending,
232
+ loading: sending,
233
+ onClick: () => void send(),
234
+ spinnerClassName: "text-primary-text-light dark:text-primary-text-dark",
235
+ className: clsx("w-full bg-primary-light text-primary-text-light dark:bg-primary-dark dark:text-primary-text-dark", shaking && "animate-shake"),
236
+ children: "Continue"
237
+ }), jsxRuntime.jsx("p", {
238
+ "data-testid": "onramp-crypto-error",
239
+ className: clsx("text-sm text-danger-light dark:text-danger-dark transition-opacity delay-75 line-clamp-2 w-full", error ? "opacity-100 pointer-events-auto" : "opacity-0 pointer-events-none absolute"),
240
+ children: error
241
+ })]
242
+ });
243
+ }
244
+ function isSolanaChain(account, token) {
245
+ if (account?.addressFormat === "ADDRESS_FORMAT_SOLANA") return true;
246
+ if (account?.addressFormat === "ADDRESS_FORMAT_ETHEREUM") return false;
247
+ return !!token && tokenSymbol.caip2Of(token).startsWith("solana:");
248
+ }
249
+
250
+ exports.OnRampCryptoSend = OnRampCryptoSend;
251
+ //# sourceMappingURL=OnRampCryptoSend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnRampCryptoSend.js","sources":["../../../src/components/funding/OnRampCryptoSend.tsx"],"sourcesContent":[null],"names":["partyLabelClassName","OnRampCryptoSend","props","destination","externalWallet","externalAccount","lockedCaip19","lockedCaip2","rpcUrl","successPageDuration","onSuccess","onError","onChangeWallet","pushPage","isMobile","useModal","signAndSendTransaction","useTurnkey","assetsByCaip2","useSupportedAssets","isHoveringFrom","setIsHoveringFrom","useState","isHoveringTo","setIsHoveringTo","showCopied","setShowCopied","sending","setSending","error","setError","shaking","setShaking","tokens","useMemo","onRampTokensForAccount","caip19","caip2","token","setToken","amount","setAmount","useEffect","includes","ChainLogo","isSolanaChain","SolanaLogo","EthereumLogo","preparedTransfer","undefined","buildOnRampCryptoTransfer","decimals","tokenDecimals","from","to","send","provider","transactionType","chainId","Number","slice","length","evmChainId","chainInfo","switchSelectedEthereumChain","toString","resolvedRpcUrl","solanaRpcUrl","unsignedTransaction","buildUnsignedOnRampTransaction","transfer","transactionId","walletAccount","key","showTitle","content","_jsx","OnRampCryptoStatus","chain","iconUrl","info","icon","caught","isUserRejected","sendErrorMessage","setTimeout","_jsxs","className","clsx","children","CryptoAmountInput","value","onChange","onTokenChange","locked","chainLabel","caip2Of","ActionButton","name","onClick","onMouseEnter","onMouseLeave","src","alt","truncateAddress","address","FontAwesomeIcon","faChevronRight","disabled","navigator","clipboard","writeText","faWallet","faCheck","faCopy","loading","spinnerClassName","account","addressFormat","startsWith"],"mappings":"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"}