0xtrails 0.0.1 → 0.0.2

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 (359) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +42 -0
  3. package/dist/abi.d.ts +37 -0
  4. package/dist/abi.d.ts.map +1 -0
  5. package/dist/abi.js +36 -0
  6. package/dist/apiClient.d.ts +9 -0
  7. package/dist/apiClient.d.ts.map +1 -0
  8. package/dist/apiClient.js +18 -0
  9. package/dist/buffer.d.ts +3 -0
  10. package/dist/buffer.d.ts.map +1 -0
  11. package/dist/buffer.js +8 -0
  12. package/dist/cctp.d.ts +84 -0
  13. package/dist/cctp.d.ts.map +1 -0
  14. package/dist/cctp.js +401 -0
  15. package/dist/chainSwitch.d.ts +7 -0
  16. package/dist/chainSwitch.d.ts.map +1 -0
  17. package/dist/chainSwitch.js +33 -0
  18. package/dist/chains.d.ts +13 -0
  19. package/dist/chains.d.ts.map +1 -0
  20. package/dist/chains.js +95 -0
  21. package/dist/constants.d.ts +11 -0
  22. package/dist/constants.d.ts.map +1 -0
  23. package/dist/constants.js +16 -0
  24. package/dist/encoders.d.ts +7 -0
  25. package/dist/encoders.d.ts.map +1 -0
  26. package/dist/encoders.js +8 -0
  27. package/dist/error.d.ts +2 -0
  28. package/dist/error.d.ts.map +1 -0
  29. package/dist/error.js +12 -0
  30. package/dist/explorer.d.ts +12 -0
  31. package/dist/explorer.d.ts.map +1 -0
  32. package/dist/explorer.js +18 -0
  33. package/dist/gasless.d.ts +116 -0
  34. package/dist/gasless.d.ts.map +1 -0
  35. package/dist/gasless.js +297 -0
  36. package/dist/index.d.ts +13 -0
  37. package/dist/index.d.ts.map +1 -0
  38. package/dist/index.js +9 -0
  39. package/dist/indexerClient.d.ts +9 -0
  40. package/dist/indexerClient.d.ts.map +1 -0
  41. package/dist/indexerClient.js +18 -0
  42. package/dist/intents.d.ts +83 -0
  43. package/dist/intents.d.ts.map +1 -0
  44. package/dist/intents.js +288 -0
  45. package/dist/metaTxnMonitor.d.ts +14 -0
  46. package/dist/metaTxnMonitor.d.ts.map +1 -0
  47. package/dist/metaTxnMonitor.js +121 -0
  48. package/dist/metaTxns.d.ts +6 -0
  49. package/dist/metaTxns.d.ts.map +1 -0
  50. package/dist/metaTxns.js +4 -0
  51. package/dist/paymasterSend.d.ts +90 -0
  52. package/dist/paymasterSend.d.ts.map +1 -0
  53. package/dist/paymasterSend.js +329 -0
  54. package/dist/preconditions.d.ts +11 -0
  55. package/dist/preconditions.d.ts.map +1 -0
  56. package/dist/preconditions.js +29 -0
  57. package/dist/prepareSend.d.ts +102 -0
  58. package/dist/prepareSend.d.ts.map +1 -0
  59. package/dist/prepareSend.js +1080 -0
  60. package/dist/prices.d.ts +18 -0
  61. package/dist/prices.d.ts.map +1 -0
  62. package/dist/prices.js +142 -0
  63. package/dist/queryParams.d.ts +9 -0
  64. package/dist/queryParams.d.ts.map +1 -0
  65. package/dist/queryParams.js +66 -0
  66. package/dist/relaySdk.d.ts +65 -0
  67. package/dist/relaySdk.d.ts.map +1 -0
  68. package/dist/relaySdk.js +314 -0
  69. package/dist/relayer.d.ts +23 -0
  70. package/dist/relayer.d.ts.map +1 -0
  71. package/dist/relayer.js +230 -0
  72. package/dist/sendUserOp.d.ts +140 -0
  73. package/dist/sendUserOp.d.ts.map +1 -0
  74. package/dist/sendUserOp.js +388 -0
  75. package/dist/sequenceWallet.d.ts +79 -0
  76. package/dist/sequenceWallet.d.ts.map +1 -0
  77. package/dist/sequenceWallet.js +374 -0
  78. package/dist/theme.d.ts +3 -0
  79. package/dist/theme.d.ts.map +1 -0
  80. package/dist/theme.js +1 -0
  81. package/dist/toSimpleSmartAccount.d.ts +95 -0
  82. package/dist/toSimpleSmartAccount.d.ts.map +1 -0
  83. package/dist/toSimpleSmartAccount.js +373 -0
  84. package/dist/tokenBalances.d.ts +118 -0
  85. package/dist/tokenBalances.d.ts.map +1 -0
  86. package/dist/tokenBalances.js +492 -0
  87. package/dist/tokens.d.ts +50 -0
  88. package/dist/tokens.d.ts.map +1 -0
  89. package/dist/tokens.js +356 -0
  90. package/dist/trails.d.ts +128 -0
  91. package/dist/trails.d.ts.map +1 -0
  92. package/dist/trails.js +1031 -0
  93. package/dist/umd/trails.min.js +12610 -0
  94. package/dist/umd/trails.min.js.map +1 -0
  95. package/dist/umd.d.ts +24 -0
  96. package/dist/umd.d.ts.map +1 -0
  97. package/dist/utils.d.ts +5 -0
  98. package/dist/utils.d.ts.map +1 -0
  99. package/dist/utils.js +9 -0
  100. package/dist/widget/ConstantsUtil-B-_-u8aQ.js +6 -0
  101. package/dist/widget/add-hVLs3ldJ.js +20 -0
  102. package/dist/widget/all-wallets-Cwxnx4BT.js +11 -0
  103. package/dist/widget/app-store-CAAVQjW0.js +22 -0
  104. package/dist/widget/apple-C3BSbglw.js +23 -0
  105. package/dist/widget/arrow-bottom-circle-BGU9MmsZ.js +16 -0
  106. package/dist/widget/arrow-bottom-hS_SA8Gp.js +13 -0
  107. package/dist/widget/arrow-left-CJZanWz7.js +13 -0
  108. package/dist/widget/arrow-right-C1qL8EMd.js +13 -0
  109. package/dist/widget/arrow-top-CbuCmbQs.js +13 -0
  110. package/dist/widget/bank-CXBEEGbb.js +19 -0
  111. package/dist/widget/bin-Dqzv3zCZ.js +9 -0
  112. package/dist/widget/bitcoin-4y3sovZp.js +18 -0
  113. package/dist/widget/browser-DyOl4_8m.js +1413 -0
  114. package/dist/widget/browser-t7Fh0sEU.js +19 -0
  115. package/dist/widget/card-Bo4CZkTs.js +19 -0
  116. package/dist/widget/ccip-BynehMIN.js +232 -0
  117. package/dist/widget/checkmark-DV6OKvnY.js +16 -0
  118. package/dist/widget/checkmark-bold-CAp1-IQ2.js +13 -0
  119. package/dist/widget/chevron-bottom-BjzsVzk9.js +13 -0
  120. package/dist/widget/chevron-left-CQZBDCiR.js +13 -0
  121. package/dist/widget/chevron-right-Dhg4zeZM.js +13 -0
  122. package/dist/widget/chevron-top-CDQmfJef.js +13 -0
  123. package/dist/widget/chrome-store-BNaC_b6w.js +66 -0
  124. package/dist/widget/circle-BC_GBj91.js +9 -0
  125. package/dist/widget/clock-BmF8-4a0.js +13 -0
  126. package/dist/widget/close-Bf61nZ8o.js +13 -0
  127. package/dist/widget/coinPlaceholder-7cZW2058.js +13 -0
  128. package/dist/widget/compass-CFC3yhnW.js +13 -0
  129. package/dist/widget/components/ChainImage.d.ts +8 -0
  130. package/dist/widget/components/ChainImage.d.ts.map +1 -0
  131. package/dist/widget/components/ChainImage.js +6 -0
  132. package/dist/widget/components/ConnectWallet.d.ts +18 -0
  133. package/dist/widget/components/ConnectWallet.d.ts.map +1 -0
  134. package/dist/widget/components/ConnectWallet.js +66 -0
  135. package/dist/widget/components/DebugScreensDropdown.d.ts +9 -0
  136. package/dist/widget/components/DebugScreensDropdown.d.ts.map +1 -0
  137. package/dist/widget/components/DebugScreensDropdown.js +40 -0
  138. package/dist/widget/components/FeeOptions.d.ts +17 -0
  139. package/dist/widget/components/FeeOptions.d.ts.map +1 -0
  140. package/dist/widget/components/FeeOptions.js +65 -0
  141. package/dist/widget/components/Footer.d.ts +9 -0
  142. package/dist/widget/components/Footer.d.ts.map +1 -0
  143. package/dist/widget/components/Footer.js +13 -0
  144. package/dist/widget/components/GreenCheckAnimation.d.ts +2 -0
  145. package/dist/widget/components/GreenCheckAnimation.d.ts.map +1 -0
  146. package/dist/widget/components/GreenCheckAnimation.js +74 -0
  147. package/dist/widget/components/Modal.d.ts +11 -0
  148. package/dist/widget/components/Modal.d.ts.map +1 -0
  149. package/dist/widget/components/Modal.js +36 -0
  150. package/dist/widget/components/Receipt.d.ts +13 -0
  151. package/dist/widget/components/Receipt.d.ts.map +1 -0
  152. package/dist/widget/components/Receipt.js +36 -0
  153. package/dist/widget/components/SendForm.d.ts +44 -0
  154. package/dist/widget/components/SendForm.d.ts.map +1 -0
  155. package/dist/widget/components/SendForm.js +177 -0
  156. package/dist/widget/components/TokenImage.d.ts +10 -0
  157. package/dist/widget/components/TokenImage.d.ts.map +1 -0
  158. package/dist/widget/components/TokenImage.js +8 -0
  159. package/dist/widget/components/TokenList.d.ts +16 -0
  160. package/dist/widget/components/TokenList.d.ts.map +1 -0
  161. package/dist/widget/components/TokenList.js +39 -0
  162. package/dist/widget/components/TransferPending.d.ts +11 -0
  163. package/dist/widget/components/TransferPending.d.ts.map +1 -0
  164. package/dist/widget/components/TransferPending.js +77 -0
  165. package/dist/widget/components/TransferPendingVertical.d.ts +18 -0
  166. package/dist/widget/components/TransferPendingVertical.d.ts.map +1 -0
  167. package/dist/widget/components/TransferPendingVertical.js +183 -0
  168. package/dist/widget/components/WalletConfirmation.d.ts +18 -0
  169. package/dist/widget/components/WalletConfirmation.d.ts.map +1 -0
  170. package/dist/widget/components/WalletConfirmation.js +22 -0
  171. package/dist/widget/config.d.ts +4 -0
  172. package/dist/widget/config.d.ts.map +1 -0
  173. package/dist/widget/config.js +3 -0
  174. package/dist/widget/copy-e0xXvKN0.js +20 -0
  175. package/dist/widget/cursor-CqM3v0xJ.js +8 -0
  176. package/dist/widget/cursor-transparent-CUQpdsCG.js +17 -0
  177. package/dist/widget/desktop-DUDGIRpM.js +14 -0
  178. package/dist/widget/disconnect-DUFST9QQ.js +13 -0
  179. package/dist/widget/discord-C1cj365Z.js +22 -0
  180. package/dist/widget/email-BHhmb_lX.js +703 -0
  181. package/dist/widget/embedded-wallet-CuuC4eah.js +467 -0
  182. package/dist/widget/ethereum-CfmBVfeB.js +15 -0
  183. package/dist/widget/etherscan-BSiynDhW.js +11 -0
  184. package/dist/widget/exclamation-triangle-DEiFNpHw.js +9 -0
  185. package/dist/widget/extension-mRmfCDxo.js +13 -0
  186. package/dist/widget/external-link-B4xMIVnW.js +13 -0
  187. package/dist/widget/facebook-CBAZStBR.js +31 -0
  188. package/dist/widget/farcaster-LHDEDf5S.js +17 -0
  189. package/dist/widget/filters-CBijuvFv.js +13 -0
  190. package/dist/widget/github-C3ILD420.js +23 -0
  191. package/dist/widget/google-CSj73POX.js +23 -0
  192. package/dist/widget/help-circle-2hdG5IdB.js +17 -0
  193. package/dist/widget/hooks/useAmountUsd.d.ts +13 -0
  194. package/dist/widget/hooks/useAmountUsd.d.ts.map +1 -0
  195. package/dist/widget/hooks/useAmountUsd.js +35 -0
  196. package/dist/widget/hooks/useSendForm.d.ts +125 -0
  197. package/dist/widget/hooks/useSendForm.d.ts.map +1 -0
  198. package/dist/widget/hooks/useSendForm.js +450 -0
  199. package/dist/widget/hooks/useTokenList.d.ts +52 -0
  200. package/dist/widget/hooks/useTokenList.d.ts.map +1 -0
  201. package/dist/widget/hooks/useTokenList.js +252 -0
  202. package/dist/widget/id-ByYSrwsd.js +17 -0
  203. package/dist/widget/if-defined-DRXJEhv7.js +752 -0
  204. package/dist/widget/image-C90L4Rf6.js +9 -0
  205. package/dist/widget/index-B3SlQ9v3.js +46 -0
  206. package/dist/widget/index-B8LPuLXQ.js +78 -0
  207. package/dist/widget/index-BDbworWA.js +171 -0
  208. package/dist/widget/index-BTlDgFSK.js +98 -0
  209. package/dist/widget/index-BUCcjXbd.js +306 -0
  210. package/dist/widget/index-BZ34edi2.js +1055 -0
  211. package/dist/widget/index-BiCU29wK.js +147 -0
  212. package/dist/widget/index-BlmqIKsY.js +266 -0
  213. package/dist/widget/index-BlviH5nG.js +55 -0
  214. package/dist/widget/index-Bwd5X3fS.js +8306 -0
  215. package/dist/widget/index-C5gmknHK.js +78 -0
  216. package/dist/widget/index-CD6dBcRj.js +76 -0
  217. package/dist/widget/index-CDlhy529.js +63 -0
  218. package/dist/widget/index-CHXa5ke-.js +59 -0
  219. package/dist/widget/index-CK94R-H7.js +22498 -0
  220. package/dist/widget/index-CQzo3m3x.js +182 -0
  221. package/dist/widget/index-CRT8cAwG.js +325 -0
  222. package/dist/widget/index-CY7Lt2Yu.js +310 -0
  223. package/dist/widget/index-CiKfAu1E.js +79 -0
  224. package/dist/widget/index-CkCu6rMi.js +258 -0
  225. package/dist/widget/index-CngLTu_R.js +517 -0
  226. package/dist/widget/index-CsMV8-em.js +2577 -0
  227. package/dist/widget/index-Cu2Wva8v.js +200 -0
  228. package/dist/widget/index-DKBxLTEF.js +240 -0
  229. package/dist/widget/index-DQEVT3dx.js +511 -0
  230. package/dist/widget/index-DU2HcCis.js +200 -0
  231. package/dist/widget/index-DutZGWNW.js +321 -0
  232. package/dist/widget/index-O0glArmc.js +182 -0
  233. package/dist/widget/index-O8FmRjKe.js +63719 -0
  234. package/dist/widget/index-RtKXrB6I.js +576 -0
  235. package/dist/widget/index-TIYtS0gE.js +88 -0
  236. package/dist/widget/index-dQNJvWHs.js +66 -0
  237. package/dist/widget/index-wmEwdsq7.js +909 -0
  238. package/dist/widget/index.d.ts +3 -0
  239. package/dist/widget/index.d.ts.map +1 -0
  240. package/dist/widget/index.js +2 -0
  241. package/dist/widget/info-DMPChDjV.js +8 -0
  242. package/dist/widget/info-circle-DAvS_7nY.js +17 -0
  243. package/dist/widget/lightbulb-DnZ9mNEs.js +8 -0
  244. package/dist/widget/lit-html-BRjl1r6K.js +243 -0
  245. package/dist/widget/mail-DpaVSOP8.js +13 -0
  246. package/dist/widget/mobile-CRvdyu7I.js +14 -0
  247. package/dist/widget/more-C5VqW9PR.js +16 -0
  248. package/dist/widget/network-placeholder-CZ0vApma.js +19 -0
  249. package/dist/widget/nftPlaceholder-7jjIK2bT.js +13 -0
  250. package/dist/widget/off-4mHjJLLX.js +9 -0
  251. package/dist/widget/onramp-Bc0ozVsw.js +929 -0
  252. package/dist/widget/play-store-Uocul8nC.js +37 -0
  253. package/dist/widget/plus-DrYF7siO.js +18 -0
  254. package/dist/widget/prepareSend-BQJmzM5B.js +54987 -0
  255. package/dist/widget/qr-code-DcnGMUB3.js +11 -0
  256. package/dist/widget/receive-fvIVd7R_.js +184 -0
  257. package/dist/widget/recycle-horizontal-DrDwXC4D.js +14 -0
  258. package/dist/widget/ref-CXNmEjML.js +41 -0
  259. package/dist/widget/refresh-OK9lIPLS.js +13 -0
  260. package/dist/widget/reown-logo-C-Qn7mS3.js +17 -0
  261. package/dist/widget/search-DZqv1oKg.js +13 -0
  262. package/dist/widget/send-CJlmI-xe.js +1039 -0
  263. package/dist/widget/send-otoEC8uU.js +20 -0
  264. package/dist/widget/socials-BJciurWF.js +599 -0
  265. package/dist/widget/solana-Bv5Hs_0T.js +18 -0
  266. package/dist/widget/swapHorizontal-BzOPGV37.js +13 -0
  267. package/dist/widget/swapHorizontalBold-axyHnSmj.js +13 -0
  268. package/dist/widget/swapHorizontalMedium-C6YOPfPz.js +21 -0
  269. package/dist/widget/swapHorizontalRoundedBold-yVcLbWNT.js +13 -0
  270. package/dist/widget/swapVertical-BDjxt9pE.js +13 -0
  271. package/dist/widget/swaps-DEWNj4kd.js +1637 -0
  272. package/dist/widget/telegram-BQJD7dlP.js +21 -0
  273. package/dist/widget/three-dots-DW9jmSMG.js +10 -0
  274. package/dist/widget/transactions-uCseGQQt.js +38 -0
  275. package/dist/widget/twitch-XugxDfOE.js +23 -0
  276. package/dist/widget/twitterIcon-DQVObQUL.js +11 -0
  277. package/dist/widget/types.d.ts +51 -0
  278. package/dist/widget/types.d.ts.map +1 -0
  279. package/dist/widget/types.js +1 -0
  280. package/dist/widget/verify-DpMYHxLf.js +13 -0
  281. package/dist/widget/verify-filled-KpEL6ZJ_.js +13 -0
  282. package/dist/widget/w3m-modal-C8e-6Kba.js +1047 -0
  283. package/dist/widget/wallet-D8ssEB0o.js +13 -0
  284. package/dist/widget/wallet-placeholder-HtAy21Wc.js +19 -0
  285. package/dist/widget/walletconnect-Bp_4XfrY.js +37 -0
  286. package/dist/widget/warning-circle-FgYS7P7n.js +17 -0
  287. package/dist/widget/widget/index.js +7 -0
  288. package/dist/widget/widget.d.ts +47 -0
  289. package/dist/widget/widget.d.ts.map +1 -0
  290. package/dist/widget/widget.js +932 -0
  291. package/dist/widget/x-DlZBoP9k.js +17 -0
  292. package/dist/widget/x-mark-Ba9pt-_h.js +8 -0
  293. package/package.json +102 -8
  294. package/src/abi.ts +38 -0
  295. package/src/apiClient.ts +32 -0
  296. package/src/buffer.ts +10 -0
  297. package/src/cctp.ts +579 -0
  298. package/src/chainSwitch.ts +55 -0
  299. package/src/chains.ts +124 -0
  300. package/src/constants.ts +26 -0
  301. package/src/encoders.ts +20 -0
  302. package/src/error.ts +15 -0
  303. package/src/explorer.ts +37 -0
  304. package/src/gasless.ts +545 -0
  305. package/src/index.ts +48 -0
  306. package/src/indexerClient.ts +36 -0
  307. package/src/intents.ts +537 -0
  308. package/src/metaTxnMonitor.ts +163 -0
  309. package/src/metaTxns.ts +21 -0
  310. package/src/paymasterSend.ts +503 -0
  311. package/src/preconditions.ts +52 -0
  312. package/src/prepareSend.ts +1849 -0
  313. package/src/prices.ts +186 -0
  314. package/src/queryParams.ts +80 -0
  315. package/src/relaySdk.ts +481 -0
  316. package/src/relayer.ts +255 -0
  317. package/src/sendUserOp.ts +570 -0
  318. package/src/sequenceWallet.ts +579 -0
  319. package/src/theme.ts +2 -0
  320. package/src/toSimpleSmartAccount.ts +567 -0
  321. package/src/tokenBalances.ts +760 -0
  322. package/src/tokens.ts +471 -0
  323. package/src/trails.ts +1591 -0
  324. package/src/types.d.ts +11 -0
  325. package/src/umd.tsx +49 -0
  326. package/src/utils.ts +16 -0
  327. package/src/vite-env.d.ts +4 -0
  328. package/src/widget/assets/MetaMask-icon-fox-with-margins.svg +31 -0
  329. package/src/widget/assets/MetaMask-icon-fox.svg +26 -0
  330. package/src/widget/assets/MetaMask-logo-black.svg +3 -0
  331. package/src/widget/assets/MetaMask-logo-white.svg +16 -0
  332. package/src/widget/assets/Privy_Brandmark_Black.svg +9 -0
  333. package/src/widget/assets/Privy_Brandmark_White.svg +9 -0
  334. package/src/widget/assets/Trails-logo-black.svg +11 -0
  335. package/src/widget/assets/Trails-logo-white.svg +11 -0
  336. package/src/widget/components/ChainImage.tsx +28 -0
  337. package/src/widget/components/ConnectWallet.tsx +206 -0
  338. package/src/widget/components/DebugScreensDropdown.tsx +88 -0
  339. package/src/widget/components/FeeOptions.tsx +199 -0
  340. package/src/widget/components/Footer.tsx +51 -0
  341. package/src/widget/components/GreenCheckAnimation.tsx +119 -0
  342. package/src/widget/components/Modal.tsx +97 -0
  343. package/src/widget/components/Receipt.tsx +237 -0
  344. package/src/widget/components/SendForm.tsx +695 -0
  345. package/src/widget/components/TokenImage.tsx +37 -0
  346. package/src/widget/components/TokenList.tsx +287 -0
  347. package/src/widget/components/TransferPending.tsx +204 -0
  348. package/src/widget/components/TransferPendingVertical.tsx +412 -0
  349. package/src/widget/components/WalletConfirmation.tsx +172 -0
  350. package/src/widget/config.ts +5 -0
  351. package/src/widget/hooks/useAmountUsd.ts +59 -0
  352. package/src/widget/hooks/useSendForm.ts +715 -0
  353. package/src/widget/hooks/useTokenList.ts +397 -0
  354. package/src/widget/index.css +2 -0
  355. package/src/widget/index.tsx +8 -0
  356. package/src/widget/types/svg.d.ts +8 -0
  357. package/src/widget/types.ts +59 -0
  358. package/src/widget/widget.tsx +1438 -0
  359. package/index.js +0 -1
@@ -0,0 +1,929 @@
1
+ import { i as P, a as y, G as l, H as $, O as _, M as C, h as I, u as F, e as E, f as z, W as M, R as j, d as U, l as K, T as N, S as B } from "./index-CK94R-H7.js";
2
+ import { x as u } from "./lit-html-BRjl1r6K.js";
3
+ import { o as m, r as c, c as b, n as p } from "./if-defined-DRXJEhv7.js";
4
+ import "./index-CQzo3m3x.js";
5
+ import { O as W } from "./index-CY7Lt2Yu.js";
6
+ import "./index-CDlhy529.js";
7
+ import "./index-BTlDgFSK.js";
8
+ import "./index-CngLTu_R.js";
9
+ import "./index-BlviH5nG.js";
10
+ import "./index-CRT8cAwG.js";
11
+ import "./index-CD6dBcRj.js";
12
+ import "./index-dQNJvWHs.js";
13
+ import "./index-BlmqIKsY.js";
14
+ const Y = P`
15
+ :host > wui-grid {
16
+ max-height: 360px;
17
+ overflow: auto;
18
+ }
19
+
20
+ wui-flex {
21
+ transition: opacity var(--wui-ease-out-power-1) var(--wui-duration-md);
22
+ will-change: opacity;
23
+ }
24
+
25
+ wui-grid::-webkit-scrollbar {
26
+ display: none;
27
+ }
28
+
29
+ wui-flex.disabled {
30
+ opacity: 0.3;
31
+ pointer-events: none;
32
+ user-select: none;
33
+ }
34
+ `;
35
+ var A = function(s, e, t, r) {
36
+ var o = arguments.length, i = o < 3 ? e : r === null ? r = Object.getOwnPropertyDescriptor(e, t) : r, n;
37
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function") i = Reflect.decorate(s, e, t, r);
38
+ else for (var a = s.length - 1; a >= 0; a--) (n = s[a]) && (i = (o < 3 ? n(i) : o > 3 ? n(e, t, i) : n(e, t)) || i);
39
+ return o > 3 && i && Object.defineProperty(e, t, i), i;
40
+ };
41
+ let R = class extends y {
42
+ constructor() {
43
+ super(), this.unsubscribe = [], this.selectedCurrency = l.state.paymentCurrency, this.currencies = l.state.paymentCurrencies, this.currencyImages = $.state.currencyImages, this.checked = W.state.isLegalCheckboxChecked, this.unsubscribe.push(l.subscribe((e) => {
44
+ this.selectedCurrency = e.paymentCurrency, this.currencies = e.paymentCurrencies;
45
+ }), $.subscribeKey("currencyImages", (e) => this.currencyImages = e), W.subscribeKey("isLegalCheckboxChecked", (e) => {
46
+ this.checked = e;
47
+ }));
48
+ }
49
+ disconnectedCallback() {
50
+ this.unsubscribe.forEach((e) => e());
51
+ }
52
+ render() {
53
+ var a;
54
+ const { termsConditionsUrl: e, privacyPolicyUrl: t } = _.state, r = (a = _.state.features) == null ? void 0 : a.legalCheckbox, n = !!(e || t) && !!r && !this.checked;
55
+ return u`
56
+ <w3m-legal-checkbox></w3m-legal-checkbox>
57
+ <wui-flex
58
+ flexDirection="column"
59
+ .padding=${["0", "s", "s", "s"]}
60
+ gap="xs"
61
+ class=${m(n ? "disabled" : void 0)}
62
+ >
63
+ ${this.currenciesTemplate(n)}
64
+ </wui-flex>
65
+ <w3m-legal-footer></w3m-legal-footer>
66
+ `;
67
+ }
68
+ currenciesTemplate(e = !1) {
69
+ return this.currencies.map((t) => {
70
+ var r;
71
+ return u`
72
+ <wui-list-item
73
+ imageSrc=${m((r = this.currencyImages) == null ? void 0 : r[t.id])}
74
+ @click=${() => this.selectCurrency(t)}
75
+ variant="image"
76
+ tabIdx=${m(e ? -1 : void 0)}
77
+ >
78
+ <wui-text variant="paragraph-500" color="fg-100">${t.id}</wui-text>
79
+ </wui-list-item>
80
+ `;
81
+ });
82
+ }
83
+ selectCurrency(e) {
84
+ e && (l.setPaymentCurrency(e), C.close());
85
+ }
86
+ };
87
+ R.styles = Y;
88
+ A([
89
+ c()
90
+ ], R.prototype, "selectedCurrency", void 0);
91
+ A([
92
+ c()
93
+ ], R.prototype, "currencies", void 0);
94
+ A([
95
+ c()
96
+ ], R.prototype, "currencyImages", void 0);
97
+ A([
98
+ c()
99
+ ], R.prototype, "checked", void 0);
100
+ R = A([
101
+ b("w3m-onramp-fiat-select-view")
102
+ ], R);
103
+ const q = P`
104
+ button {
105
+ padding: var(--wui-spacing-s);
106
+ border-radius: var(--wui-border-radius-xs);
107
+ border: none;
108
+ outline: none;
109
+ background-color: var(--wui-color-gray-glass-002);
110
+ width: 100%;
111
+ display: flex;
112
+ align-items: center;
113
+ justify-content: flex-start;
114
+ gap: var(--wui-spacing-s);
115
+ transition: background-color var(--wui-ease-out-power-1) var(--wui-duration-md);
116
+ will-change: background-color;
117
+ }
118
+
119
+ button:hover {
120
+ background-color: var(--wui-color-gray-glass-005);
121
+ }
122
+
123
+ .provider-image {
124
+ width: var(--wui-spacing-3xl);
125
+ min-width: var(--wui-spacing-3xl);
126
+ height: var(--wui-spacing-3xl);
127
+ border-radius: calc(var(--wui-border-radius-xs) - calc(var(--wui-spacing-s) / 2));
128
+ position: relative;
129
+ overflow: hidden;
130
+ }
131
+
132
+ .provider-image::after {
133
+ content: '';
134
+ display: block;
135
+ width: 100%;
136
+ height: 100%;
137
+ position: absolute;
138
+ inset: 0;
139
+ border-radius: calc(var(--wui-border-radius-xs) - calc(var(--wui-spacing-s) / 2));
140
+ box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-005);
141
+ }
142
+
143
+ .network-icon {
144
+ width: var(--wui-spacing-m);
145
+ height: var(--wui-spacing-m);
146
+ border-radius: calc(var(--wui-spacing-m) / 2);
147
+ overflow: hidden;
148
+ box-shadow:
149
+ 0 0 0 3px var(--wui-color-gray-glass-002),
150
+ 0 0 0 3px var(--wui-color-modal-bg);
151
+ transition: box-shadow var(--wui-ease-out-power-1) var(--wui-duration-md);
152
+ will-change: box-shadow;
153
+ }
154
+
155
+ button:hover .network-icon {
156
+ box-shadow:
157
+ 0 0 0 3px var(--wui-color-gray-glass-005),
158
+ 0 0 0 3px var(--wui-color-modal-bg);
159
+ }
160
+ `;
161
+ var v = function(s, e, t, r) {
162
+ var o = arguments.length, i = o < 3 ? e : r === null ? r = Object.getOwnPropertyDescriptor(e, t) : r, n;
163
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function") i = Reflect.decorate(s, e, t, r);
164
+ else for (var a = s.length - 1; a >= 0; a--) (n = s[a]) && (i = (o < 3 ? n(i) : o > 3 ? n(e, t, i) : n(e, t)) || i);
165
+ return o > 3 && i && Object.defineProperty(e, t, i), i;
166
+ };
167
+ let h = class extends y {
168
+ constructor() {
169
+ super(...arguments), this.disabled = !1, this.color = "inherit", this.label = "", this.feeRange = "", this.loading = !1, this.onClick = null;
170
+ }
171
+ render() {
172
+ return u`
173
+ <button ?disabled=${this.disabled} @click=${this.onClick} ontouchstart>
174
+ <wui-visual name=${m(this.name)} class="provider-image"></wui-visual>
175
+ <wui-flex flexDirection="column" gap="4xs">
176
+ <wui-text variant="paragraph-500" color="fg-100">${this.label}</wui-text>
177
+ <wui-flex alignItems="center" justifyContent="flex-start" gap="l">
178
+ <wui-text variant="tiny-500" color="fg-100">
179
+ <wui-text variant="tiny-400" color="fg-200">Fees</wui-text>
180
+ ${this.feeRange}
181
+ </wui-text>
182
+ <wui-flex gap="xxs">
183
+ <wui-icon name="bank" size="xs" color="fg-150"></wui-icon>
184
+ <wui-icon name="card" size="xs" color="fg-150"></wui-icon>
185
+ </wui-flex>
186
+ ${this.networksTemplate()}
187
+ </wui-flex>
188
+ </wui-flex>
189
+ ${this.loading ? u`<wui-loading-spinner color="fg-200" size="md"></wui-loading-spinner>` : u`<wui-icon name="chevronRight" color="fg-200" size="sm"></wui-icon>`}
190
+ </button>
191
+ `;
192
+ }
193
+ networksTemplate() {
194
+ var r;
195
+ const e = I.getAllRequestedCaipNetworks(), t = (r = e == null ? void 0 : e.filter((o) => {
196
+ var i;
197
+ return (i = o == null ? void 0 : o.assets) == null ? void 0 : i.imageId;
198
+ })) == null ? void 0 : r.slice(0, 5);
199
+ return u`
200
+ <wui-flex class="networks">
201
+ ${t == null ? void 0 : t.map((o) => u`
202
+ <wui-flex class="network-icon">
203
+ <wui-image src=${m(F.getNetworkImage(o))}></wui-image>
204
+ </wui-flex>
205
+ `)}
206
+ </wui-flex>
207
+ `;
208
+ }
209
+ };
210
+ h.styles = [q];
211
+ v([
212
+ p({ type: Boolean })
213
+ ], h.prototype, "disabled", void 0);
214
+ v([
215
+ p()
216
+ ], h.prototype, "color", void 0);
217
+ v([
218
+ p()
219
+ ], h.prototype, "name", void 0);
220
+ v([
221
+ p()
222
+ ], h.prototype, "label", void 0);
223
+ v([
224
+ p()
225
+ ], h.prototype, "feeRange", void 0);
226
+ v([
227
+ p({ type: Boolean })
228
+ ], h.prototype, "loading", void 0);
229
+ v([
230
+ p()
231
+ ], h.prototype, "onClick", void 0);
232
+ h = v([
233
+ b("w3m-onramp-provider-item")
234
+ ], h);
235
+ const H = P`
236
+ wui-flex {
237
+ border-top: 1px solid var(--wui-color-gray-glass-005);
238
+ }
239
+
240
+ a {
241
+ text-decoration: none;
242
+ color: var(--wui-color-fg-175);
243
+ font-weight: 500;
244
+ display: flex;
245
+ align-items: center;
246
+ justify-content: center;
247
+ gap: var(--wui-spacing-3xs);
248
+ }
249
+ `;
250
+ var Q = function(s, e, t, r) {
251
+ var o = arguments.length, i = o < 3 ? e : r === null ? r = Object.getOwnPropertyDescriptor(e, t) : r, n;
252
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function") i = Reflect.decorate(s, e, t, r);
253
+ else for (var a = s.length - 1; a >= 0; a--) (n = s[a]) && (i = (o < 3 ? n(i) : o > 3 ? n(e, t, i) : n(e, t)) || i);
254
+ return o > 3 && i && Object.defineProperty(e, t, i), i;
255
+ };
256
+ let S = class extends y {
257
+ render() {
258
+ const { termsConditionsUrl: e, privacyPolicyUrl: t } = _.state;
259
+ return !e && !t ? null : u`
260
+ <wui-flex
261
+ .padding=${["m", "s", "s", "s"]}
262
+ flexDirection="column"
263
+ alignItems="center"
264
+ justifyContent="center"
265
+ gap="s"
266
+ >
267
+ <wui-text color="fg-250" variant="small-400" align="center">
268
+ We work with the best providers to give you the lowest fees and best support. More options
269
+ coming soon!
270
+ </wui-text>
271
+
272
+ ${this.howDoesItWorkTemplate()}
273
+ </wui-flex>
274
+ `;
275
+ }
276
+ howDoesItWorkTemplate() {
277
+ return u` <wui-link @click=${this.onWhatIsBuy.bind(this)}>
278
+ <wui-icon size="xs" color="accent-100" slot="iconLeft" name="helpCircle"></wui-icon>
279
+ How does it work?
280
+ </wui-link>`;
281
+ }
282
+ onWhatIsBuy() {
283
+ E.sendEvent({
284
+ type: "track",
285
+ event: "SELECT_WHAT_IS_A_BUY",
286
+ properties: {
287
+ isSmartAccount: z(I.state.activeChain) === M.ACCOUNT_TYPES.SMART_ACCOUNT
288
+ }
289
+ }), j.push("WhatIsABuy");
290
+ }
291
+ };
292
+ S.styles = [H];
293
+ S = Q([
294
+ b("w3m-onramp-providers-footer")
295
+ ], S);
296
+ var V = function(s, e, t, r) {
297
+ var o = arguments.length, i = o < 3 ? e : r === null ? r = Object.getOwnPropertyDescriptor(e, t) : r, n;
298
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function") i = Reflect.decorate(s, e, t, r);
299
+ else for (var a = s.length - 1; a >= 0; a--) (n = s[a]) && (i = (o < 3 ? n(i) : o > 3 ? n(e, t, i) : n(e, t)) || i);
300
+ return o > 3 && i && Object.defineProperty(e, t, i), i;
301
+ };
302
+ let D = class extends y {
303
+ constructor() {
304
+ super(), this.unsubscribe = [], this.providers = l.state.providers, this.unsubscribe.push(l.subscribeKey("providers", (e) => {
305
+ this.providers = e;
306
+ }));
307
+ }
308
+ render() {
309
+ return u`
310
+ <wui-flex flexDirection="column" .padding=${["0", "s", "s", "s"]} gap="xs">
311
+ ${this.onRampProvidersTemplate()}
312
+ </wui-flex>
313
+ <w3m-onramp-providers-footer></w3m-onramp-providers-footer>
314
+ `;
315
+ }
316
+ onRampProvidersTemplate() {
317
+ return this.providers.filter((e) => e.supportedChains.includes(I.state.activeChain ?? "eip155")).map((e) => u`
318
+ <w3m-onramp-provider-item
319
+ label=${e.label}
320
+ name=${e.name}
321
+ feeRange=${e.feeRange}
322
+ @click=${() => {
323
+ this.onClickProvider(e);
324
+ }}
325
+ ?disabled=${!e.url}
326
+ data-testid=${`onramp-provider-${e.name}`}
327
+ ></w3m-onramp-provider-item>
328
+ `);
329
+ }
330
+ onClickProvider(e) {
331
+ var t;
332
+ l.setSelectedProvider(e), j.push("BuyInProgress"), U.openHref(((t = l.state.selectedProvider) == null ? void 0 : t.url) || e.url, "popupWindow", "width=600,height=800,scrollbars=yes"), E.sendEvent({
333
+ type: "track",
334
+ event: "SELECT_BUY_PROVIDER",
335
+ properties: {
336
+ provider: e.name,
337
+ isSmartAccount: z(I.state.activeChain) === M.ACCOUNT_TYPES.SMART_ACCOUNT
338
+ }
339
+ });
340
+ }
341
+ };
342
+ V([
343
+ c()
344
+ ], D.prototype, "providers", void 0);
345
+ D = V([
346
+ b("w3m-onramp-providers-view")
347
+ ], D);
348
+ const X = P`
349
+ :host > wui-grid {
350
+ max-height: 360px;
351
+ overflow: auto;
352
+ }
353
+
354
+ wui-flex {
355
+ transition: opacity var(--wui-ease-out-power-1) var(--wui-duration-md);
356
+ will-change: opacity;
357
+ }
358
+
359
+ wui-grid::-webkit-scrollbar {
360
+ display: none;
361
+ }
362
+
363
+ wui-flex.disabled {
364
+ opacity: 0.3;
365
+ pointer-events: none;
366
+ user-select: none;
367
+ }
368
+ `;
369
+ var T = function(s, e, t, r) {
370
+ var o = arguments.length, i = o < 3 ? e : r === null ? r = Object.getOwnPropertyDescriptor(e, t) : r, n;
371
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function") i = Reflect.decorate(s, e, t, r);
372
+ else for (var a = s.length - 1; a >= 0; a--) (n = s[a]) && (i = (o < 3 ? n(i) : o > 3 ? n(e, t, i) : n(e, t)) || i);
373
+ return o > 3 && i && Object.defineProperty(e, t, i), i;
374
+ };
375
+ let k = class extends y {
376
+ constructor() {
377
+ super(), this.unsubscribe = [], this.selectedCurrency = l.state.purchaseCurrencies, this.tokens = l.state.purchaseCurrencies, this.tokenImages = $.state.tokenImages, this.checked = W.state.isLegalCheckboxChecked, this.unsubscribe.push(l.subscribe((e) => {
378
+ this.selectedCurrency = e.purchaseCurrencies, this.tokens = e.purchaseCurrencies;
379
+ }), $.subscribeKey("tokenImages", (e) => this.tokenImages = e), W.subscribeKey("isLegalCheckboxChecked", (e) => {
380
+ this.checked = e;
381
+ }));
382
+ }
383
+ disconnectedCallback() {
384
+ this.unsubscribe.forEach((e) => e());
385
+ }
386
+ render() {
387
+ var a;
388
+ const { termsConditionsUrl: e, privacyPolicyUrl: t } = _.state, r = (a = _.state.features) == null ? void 0 : a.legalCheckbox, n = !!(e || t) && !!r && !this.checked;
389
+ return u`
390
+ <w3m-legal-checkbox></w3m-legal-checkbox>
391
+ <wui-flex
392
+ flexDirection="column"
393
+ .padding=${["0", "s", "s", "s"]}
394
+ gap="xs"
395
+ class=${m(n ? "disabled" : void 0)}
396
+ >
397
+ ${this.currenciesTemplate(n)}
398
+ </wui-flex>
399
+ <w3m-legal-footer></w3m-legal-footer>
400
+ `;
401
+ }
402
+ currenciesTemplate(e = !1) {
403
+ return this.tokens.map((t) => {
404
+ var r;
405
+ return u`
406
+ <wui-list-item
407
+ imageSrc=${m((r = this.tokenImages) == null ? void 0 : r[t.symbol])}
408
+ @click=${() => this.selectToken(t)}
409
+ variant="image"
410
+ tabIdx=${m(e ? -1 : void 0)}
411
+ >
412
+ <wui-flex gap="3xs" alignItems="center">
413
+ <wui-text variant="paragraph-500" color="fg-100">${t.name}</wui-text>
414
+ <wui-text variant="small-400" color="fg-200">${t.symbol}</wui-text>
415
+ </wui-flex>
416
+ </wui-list-item>
417
+ `;
418
+ });
419
+ }
420
+ selectToken(e) {
421
+ e && (l.setPurchaseCurrency(e), C.close());
422
+ }
423
+ };
424
+ k.styles = X;
425
+ T([
426
+ c()
427
+ ], k.prototype, "selectedCurrency", void 0);
428
+ T([
429
+ c()
430
+ ], k.prototype, "tokens", void 0);
431
+ T([
432
+ c()
433
+ ], k.prototype, "tokenImages", void 0);
434
+ T([
435
+ c()
436
+ ], k.prototype, "checked", void 0);
437
+ k = T([
438
+ b("w3m-onramp-token-select-view")
439
+ ], k);
440
+ const G = P`
441
+ @keyframes shake {
442
+ 0% {
443
+ transform: translateX(0);
444
+ }
445
+ 25% {
446
+ transform: translateX(3px);
447
+ }
448
+ 50% {
449
+ transform: translateX(-3px);
450
+ }
451
+ 75% {
452
+ transform: translateX(3px);
453
+ }
454
+ 100% {
455
+ transform: translateX(0);
456
+ }
457
+ }
458
+
459
+ wui-flex:first-child:not(:only-child) {
460
+ position: relative;
461
+ }
462
+
463
+ wui-loading-thumbnail {
464
+ position: absolute;
465
+ }
466
+
467
+ wui-visual {
468
+ width: var(--wui-wallet-image-size-lg);
469
+ height: var(--wui-wallet-image-size-lg);
470
+ border-radius: calc(var(--wui-border-radius-5xs) * 9 - var(--wui-border-radius-xxs));
471
+ position: relative;
472
+ overflow: hidden;
473
+ }
474
+
475
+ wui-visual::after {
476
+ content: '';
477
+ display: block;
478
+ width: 100%;
479
+ height: 100%;
480
+ position: absolute;
481
+ inset: 0;
482
+ border-radius: calc(var(--wui-border-radius-5xs) * 9 - var(--wui-border-radius-xxs));
483
+ box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-005);
484
+ }
485
+
486
+ wui-icon-box {
487
+ position: absolute;
488
+ right: calc(var(--wui-spacing-3xs) * -1);
489
+ bottom: calc(var(--wui-spacing-3xs) * -1);
490
+ opacity: 0;
491
+ transform: scale(0.5);
492
+ transition:
493
+ opacity var(--wui-ease-out-power-2) var(--wui-duration-lg),
494
+ transform var(--wui-ease-out-power-2) var(--wui-duration-lg);
495
+ will-change: opacity, transform;
496
+ }
497
+
498
+ wui-text[align='center'] {
499
+ width: 100%;
500
+ padding: 0px var(--wui-spacing-l);
501
+ }
502
+
503
+ [data-error='true'] wui-icon-box {
504
+ opacity: 1;
505
+ transform: scale(1);
506
+ }
507
+
508
+ [data-error='true'] > wui-flex:first-child {
509
+ animation: shake 250ms cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
510
+ }
511
+
512
+ [data-retry='false'] wui-link {
513
+ display: none;
514
+ }
515
+
516
+ [data-retry='true'] wui-link {
517
+ display: block;
518
+ opacity: 1;
519
+ }
520
+
521
+ wui-link {
522
+ padding: var(--wui-spacing-4xs) var(--wui-spacing-xxs);
523
+ }
524
+ `;
525
+ var f = function(s, e, t, r) {
526
+ var o = arguments.length, i = o < 3 ? e : r === null ? r = Object.getOwnPropertyDescriptor(e, t) : r, n;
527
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function") i = Reflect.decorate(s, e, t, r);
528
+ else for (var a = s.length - 1; a >= 0; a--) (n = s[a]) && (i = (o < 3 ? n(i) : o > 3 ? n(e, t, i) : n(e, t)) || i);
529
+ return o > 3 && i && Object.defineProperty(e, t, i), i;
530
+ };
531
+ let d = class extends y {
532
+ constructor() {
533
+ super(), this.unsubscribe = [], this.selectedOnRampProvider = l.state.selectedProvider, this.uri = K.state.wcUri, this.ready = !1, this.showRetry = !1, this.buffering = !1, this.error = !1, this.isMobile = !1, this.onRetry = void 0, this.unsubscribe.push(l.subscribeKey("selectedProvider", (e) => {
534
+ this.selectedOnRampProvider = e;
535
+ }));
536
+ }
537
+ disconnectedCallback() {
538
+ this.intervalId && clearInterval(this.intervalId);
539
+ }
540
+ render() {
541
+ var r, o;
542
+ let e = "Continue in external window";
543
+ this.error ? e = "Buy failed" : this.selectedOnRampProvider && (e = `Buy in ${(r = this.selectedOnRampProvider) == null ? void 0 : r.label}`);
544
+ const t = this.error ? "Buy can be declined from your side or due to and error on the provider app" : "We’ll notify you once your Buy is processed";
545
+ return u`
546
+ <wui-flex
547
+ data-error=${m(this.error)}
548
+ data-retry=${this.showRetry}
549
+ flexDirection="column"
550
+ alignItems="center"
551
+ .padding=${["3xl", "xl", "xl", "xl"]}
552
+ gap="xl"
553
+ >
554
+ <wui-flex justifyContent="center" alignItems="center">
555
+ <wui-visual
556
+ name=${m((o = this.selectedOnRampProvider) == null ? void 0 : o.name)}
557
+ size="lg"
558
+ class="provider-image"
559
+ >
560
+ </wui-visual>
561
+
562
+ ${this.error ? null : this.loaderTemplate()}
563
+
564
+ <wui-icon-box
565
+ backgroundColor="error-100"
566
+ background="opaque"
567
+ iconColor="error-100"
568
+ icon="close"
569
+ size="sm"
570
+ border
571
+ borderColor="wui-color-bg-125"
572
+ ></wui-icon-box>
573
+ </wui-flex>
574
+
575
+ <wui-flex flexDirection="column" alignItems="center" gap="xs">
576
+ <wui-text variant="paragraph-500" color=${this.error ? "error-100" : "fg-100"}>
577
+ ${e}
578
+ </wui-text>
579
+ <wui-text align="center" variant="small-500" color="fg-200">${t}</wui-text>
580
+ </wui-flex>
581
+
582
+ ${this.error ? this.tryAgainTemplate() : null}
583
+ </wui-flex>
584
+
585
+ <wui-flex .padding=${["0", "xl", "xl", "xl"]} justifyContent="center">
586
+ <wui-link @click=${this.onCopyUri} color="fg-200">
587
+ <wui-icon size="xs" color="fg-200" slot="iconLeft" name="copy"></wui-icon>
588
+ Copy link
589
+ </wui-link>
590
+ </wui-flex>
591
+ `;
592
+ }
593
+ onTryAgain() {
594
+ this.selectedOnRampProvider && (this.error = !1, U.openHref(this.selectedOnRampProvider.url, "popupWindow", "width=600,height=800,scrollbars=yes"));
595
+ }
596
+ tryAgainTemplate() {
597
+ var e;
598
+ return (e = this.selectedOnRampProvider) != null && e.url ? u`<wui-button size="md" variant="accent" @click=${this.onTryAgain.bind(this)}>
599
+ <wui-icon color="inherit" slot="iconLeft" name="refresh"></wui-icon>
600
+ Try again
601
+ </wui-button>` : null;
602
+ }
603
+ loaderTemplate() {
604
+ const e = N.state.themeVariables["--w3m-border-radius-master"], t = e ? parseInt(e.replace("px", ""), 10) : 4;
605
+ return u`<wui-loading-thumbnail radius=${t * 9}></wui-loading-thumbnail>`;
606
+ }
607
+ onCopyUri() {
608
+ var e;
609
+ if (!((e = this.selectedOnRampProvider) != null && e.url)) {
610
+ B.showError("No link found"), j.goBack();
611
+ return;
612
+ }
613
+ try {
614
+ U.copyToClopboard(this.selectedOnRampProvider.url), B.showSuccess("Link copied");
615
+ } catch {
616
+ B.showError("Failed to copy");
617
+ }
618
+ }
619
+ };
620
+ d.styles = G;
621
+ f([
622
+ c()
623
+ ], d.prototype, "intervalId", void 0);
624
+ f([
625
+ c()
626
+ ], d.prototype, "selectedOnRampProvider", void 0);
627
+ f([
628
+ c()
629
+ ], d.prototype, "uri", void 0);
630
+ f([
631
+ c()
632
+ ], d.prototype, "ready", void 0);
633
+ f([
634
+ c()
635
+ ], d.prototype, "showRetry", void 0);
636
+ f([
637
+ c()
638
+ ], d.prototype, "buffering", void 0);
639
+ f([
640
+ c()
641
+ ], d.prototype, "error", void 0);
642
+ f([
643
+ p({ type: Boolean })
644
+ ], d.prototype, "isMobile", void 0);
645
+ f([
646
+ p()
647
+ ], d.prototype, "onRetry", void 0);
648
+ d = f([
649
+ b("w3m-buy-in-progress-view")
650
+ ], d);
651
+ var J = function(s, e, t, r) {
652
+ var o = arguments.length, i = o < 3 ? e : r === null ? r = Object.getOwnPropertyDescriptor(e, t) : r, n;
653
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function") i = Reflect.decorate(s, e, t, r);
654
+ else for (var a = s.length - 1; a >= 0; a--) (n = s[a]) && (i = (o < 3 ? n(i) : o > 3 ? n(e, t, i) : n(e, t)) || i);
655
+ return o > 3 && i && Object.defineProperty(e, t, i), i;
656
+ };
657
+ let L = class extends y {
658
+ render() {
659
+ return u`
660
+ <wui-flex
661
+ flexDirection="column"
662
+ .padding=${["xxl", "3xl", "xl", "3xl"]}
663
+ alignItems="center"
664
+ gap="xl"
665
+ >
666
+ <wui-visual name="onrampCard"></wui-visual>
667
+ <wui-flex flexDirection="column" gap="xs" alignItems="center">
668
+ <wui-text align="center" variant="paragraph-500" color="fg-100">
669
+ Quickly and easily buy digital assets!
670
+ </wui-text>
671
+ <wui-text align="center" variant="small-400" color="fg-200">
672
+ Simply select your preferred onramp provider and add digital assets to your account
673
+ using your credit card or bank transfer
674
+ </wui-text>
675
+ </wui-flex>
676
+ <wui-button @click=${j.goBack}>
677
+ <wui-icon size="sm" color="inherit" name="add" slot="iconLeft"></wui-icon>
678
+ Buy
679
+ </wui-button>
680
+ </wui-flex>
681
+ `;
682
+ }
683
+ };
684
+ L = J([
685
+ b("w3m-what-is-a-buy-view")
686
+ ], L);
687
+ const Z = P`
688
+ :host {
689
+ width: 100%;
690
+ }
691
+
692
+ wui-loading-spinner {
693
+ position: absolute;
694
+ top: 50%;
695
+ right: 20px;
696
+ transform: translateY(-50%);
697
+ }
698
+
699
+ .currency-container {
700
+ position: absolute;
701
+ top: 50%;
702
+ transform: translateY(-50%);
703
+ right: var(--wui-spacing-1xs);
704
+ height: 40px;
705
+ padding: var(--wui-spacing-xs) var(--wui-spacing-1xs) var(--wui-spacing-xs)
706
+ var(--wui-spacing-xs);
707
+ min-width: 95px;
708
+ border-radius: var(--FULL, 1000px);
709
+ border: 1px solid var(--wui-color-gray-glass-002);
710
+ background: var(--wui-color-gray-glass-002);
711
+ cursor: pointer;
712
+ }
713
+
714
+ .currency-container > wui-image {
715
+ height: 24px;
716
+ width: 24px;
717
+ border-radius: 50%;
718
+ }
719
+ `;
720
+ var O = function(s, e, t, r) {
721
+ var o = arguments.length, i = o < 3 ? e : r === null ? r = Object.getOwnPropertyDescriptor(e, t) : r, n;
722
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function") i = Reflect.decorate(s, e, t, r);
723
+ else for (var a = s.length - 1; a >= 0; a--) (n = s[a]) && (i = (o < 3 ? n(i) : o > 3 ? n(e, t, i) : n(e, t)) || i);
724
+ return o > 3 && i && Object.defineProperty(e, t, i), i;
725
+ };
726
+ let g = class extends y {
727
+ constructor() {
728
+ var e;
729
+ super(), this.unsubscribe = [], this.type = "Token", this.value = 0, this.currencies = [], this.selectedCurrency = (e = this.currencies) == null ? void 0 : e[0], this.currencyImages = $.state.currencyImages, this.tokenImages = $.state.tokenImages, this.unsubscribe.push(l.subscribeKey("purchaseCurrency", (t) => {
730
+ !t || this.type === "Fiat" || (this.selectedCurrency = this.formatPurchaseCurrency(t));
731
+ }), l.subscribeKey("paymentCurrency", (t) => {
732
+ !t || this.type === "Token" || (this.selectedCurrency = this.formatPaymentCurrency(t));
733
+ }), l.subscribe((t) => {
734
+ this.type === "Fiat" ? this.currencies = t.purchaseCurrencies.map(this.formatPurchaseCurrency) : this.currencies = t.paymentCurrencies.map(this.formatPaymentCurrency);
735
+ }), $.subscribe((t) => {
736
+ this.currencyImages = { ...t.currencyImages }, this.tokenImages = { ...t.tokenImages };
737
+ }));
738
+ }
739
+ firstUpdated() {
740
+ l.getAvailableCurrencies();
741
+ }
742
+ disconnectedCallback() {
743
+ this.unsubscribe.forEach((e) => e());
744
+ }
745
+ render() {
746
+ var r;
747
+ const e = ((r = this.selectedCurrency) == null ? void 0 : r.symbol) || "", t = this.currencyImages[e] || this.tokenImages[e];
748
+ return u`<wui-input-text type="number" size="lg" value=${this.value}>
749
+ ${this.selectedCurrency ? u` <wui-flex
750
+ class="currency-container"
751
+ justifyContent="space-between"
752
+ alignItems="center"
753
+ gap="xxs"
754
+ @click=${() => C.open({ view: `OnRamp${this.type}Select` })}
755
+ >
756
+ <wui-image src=${m(t)}></wui-image>
757
+ <wui-text color="fg-100">${this.selectedCurrency.symbol}</wui-text>
758
+ </wui-flex>` : u`<wui-loading-spinner></wui-loading-spinner>`}
759
+ </wui-input-text>`;
760
+ }
761
+ formatPaymentCurrency(e) {
762
+ return {
763
+ name: e.id,
764
+ symbol: e.id
765
+ };
766
+ }
767
+ formatPurchaseCurrency(e) {
768
+ return {
769
+ name: e.name,
770
+ symbol: e.symbol
771
+ };
772
+ }
773
+ };
774
+ g.styles = Z;
775
+ O([
776
+ p({ type: String })
777
+ ], g.prototype, "type", void 0);
778
+ O([
779
+ p({ type: Number })
780
+ ], g.prototype, "value", void 0);
781
+ O([
782
+ c()
783
+ ], g.prototype, "currencies", void 0);
784
+ O([
785
+ c()
786
+ ], g.prototype, "selectedCurrency", void 0);
787
+ O([
788
+ c()
789
+ ], g.prototype, "currencyImages", void 0);
790
+ O([
791
+ c()
792
+ ], g.prototype, "tokenImages", void 0);
793
+ g = O([
794
+ b("w3m-onramp-input")
795
+ ], g);
796
+ const ee = P`
797
+ :host > wui-flex {
798
+ width: 100%;
799
+ max-width: 360px;
800
+ }
801
+
802
+ :host > wui-flex > wui-flex {
803
+ border-radius: var(--wui-border-radius-l);
804
+ width: 100%;
805
+ }
806
+
807
+ .amounts-container {
808
+ width: 100%;
809
+ }
810
+ `;
811
+ var x = function(s, e, t, r) {
812
+ var o = arguments.length, i = o < 3 ? e : r === null ? r = Object.getOwnPropertyDescriptor(e, t) : r, n;
813
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function") i = Reflect.decorate(s, e, t, r);
814
+ else for (var a = s.length - 1; a >= 0; a--) (n = s[a]) && (i = (o < 3 ? n(i) : o > 3 ? n(e, t, i) : n(e, t)) || i);
815
+ return o > 3 && i && Object.defineProperty(e, t, i), i;
816
+ };
817
+ const te = {
818
+ USD: "$",
819
+ EUR: "€",
820
+ GBP: "£"
821
+ }, ie = [100, 250, 500, 1e3];
822
+ let w = class extends y {
823
+ constructor() {
824
+ super(), this.unsubscribe = [], this.disabled = !1, this.caipAddress = I.state.activeCaipAddress, this.loading = C.state.loading, this.paymentCurrency = l.state.paymentCurrency, this.paymentAmount = l.state.paymentAmount, this.purchaseAmount = l.state.purchaseAmount, this.quoteLoading = l.state.quotesLoading, this.unsubscribe.push(I.subscribeKey("activeCaipAddress", (e) => this.caipAddress = e), C.subscribeKey("loading", (e) => {
825
+ this.loading = e;
826
+ }), l.subscribe((e) => {
827
+ this.paymentCurrency = e.paymentCurrency, this.paymentAmount = e.paymentAmount, this.purchaseAmount = e.purchaseAmount, this.quoteLoading = e.quotesLoading;
828
+ }));
829
+ }
830
+ disconnectedCallback() {
831
+ this.unsubscribe.forEach((e) => e());
832
+ }
833
+ render() {
834
+ return u`
835
+ <wui-flex flexDirection="column" justifyContent="center" alignItems="center">
836
+ <wui-flex flexDirection="column" alignItems="center" gap="xs">
837
+ <w3m-onramp-input
838
+ type="Fiat"
839
+ @inputChange=${this.onPaymentAmountChange.bind(this)}
840
+ .value=${this.paymentAmount || 0}
841
+ ></w3m-onramp-input>
842
+ <w3m-onramp-input
843
+ type="Token"
844
+ .value=${this.purchaseAmount || 0}
845
+ .loading=${this.quoteLoading}
846
+ ></w3m-onramp-input>
847
+ <wui-flex justifyContent="space-evenly" class="amounts-container" gap="xs">
848
+ ${ie.map((e) => {
849
+ var t;
850
+ return u`<wui-button
851
+ variant=${this.paymentAmount === e ? "accent" : "neutral"}
852
+ size="md"
853
+ textVariant="paragraph-600"
854
+ fullWidth
855
+ @click=${() => this.selectPresetAmount(e)}
856
+ >${`${te[((t = this.paymentCurrency) == null ? void 0 : t.id) || "USD"]} ${e}`}</wui-button
857
+ >`;
858
+ })}
859
+ </wui-flex>
860
+ ${this.templateButton()}
861
+ </wui-flex>
862
+ </wui-flex>
863
+ `;
864
+ }
865
+ templateButton() {
866
+ return this.caipAddress ? u`<wui-button
867
+ @click=${this.getQuotes.bind(this)}
868
+ variant="main"
869
+ fullWidth
870
+ size="lg"
871
+ borderRadius="xs"
872
+ >
873
+ Get quotes
874
+ </wui-button>` : u`<wui-button
875
+ @click=${this.openModal.bind(this)}
876
+ variant="accent"
877
+ fullWidth
878
+ size="lg"
879
+ borderRadius="xs"
880
+ >
881
+ Connect wallet
882
+ </wui-button>`;
883
+ }
884
+ getQuotes() {
885
+ this.loading || C.open({ view: "OnRampProviders" });
886
+ }
887
+ openModal() {
888
+ C.open({ view: "Connect" });
889
+ }
890
+ async onPaymentAmountChange(e) {
891
+ l.setPaymentAmount(Number(e.detail)), await l.getQuote();
892
+ }
893
+ async selectPresetAmount(e) {
894
+ l.setPaymentAmount(e), await l.getQuote();
895
+ }
896
+ };
897
+ w.styles = ee;
898
+ x([
899
+ p({ type: Boolean })
900
+ ], w.prototype, "disabled", void 0);
901
+ x([
902
+ c()
903
+ ], w.prototype, "caipAddress", void 0);
904
+ x([
905
+ c()
906
+ ], w.prototype, "loading", void 0);
907
+ x([
908
+ c()
909
+ ], w.prototype, "paymentCurrency", void 0);
910
+ x([
911
+ c()
912
+ ], w.prototype, "paymentAmount", void 0);
913
+ x([
914
+ c()
915
+ ], w.prototype, "purchaseAmount", void 0);
916
+ x([
917
+ c()
918
+ ], w.prototype, "quoteLoading", void 0);
919
+ w = x([
920
+ b("w3m-onramp-widget")
921
+ ], w);
922
+ export {
923
+ d as W3mBuyInProgressView,
924
+ D as W3mOnRampProvidersView,
925
+ R as W3mOnrampFiatSelectView,
926
+ k as W3mOnrampTokensView,
927
+ w as W3mOnrampWidget,
928
+ L as W3mWhatIsABuyView
929
+ };