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,8 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { TokenImage as SeqTokenImage } from "@0xsequence/design-system";
3
+ export const TokenImage = ({ imageUrl, symbol, chainId, size = 24, }) => {
4
+ imageUrl = imageUrl?.replace("/small/", "/large/");
5
+ symbol = imageUrl ? symbol : symbol?.[0];
6
+ return (_jsx("div", { className: `rounded-full flex items-center justify-center text-sm relative bg-black-100 bg-opacity-90`, style: { width: size, height: size }, children: _jsx(SeqTokenImage, { src: imageUrl, symbol: symbol, withNetwork: chainId, size: "xl", className: "absolute w-full h-full text-white", disableAnimation: true }) }));
7
+ };
8
+ export default TokenImage;
@@ -0,0 +1,16 @@
1
+ import type { SequenceIndexerGateway } from "@0xsequence/indexer";
2
+ import type React from "react";
3
+ import type { ActiveTheme } from "../../theme.js";
4
+ import type { Token } from "../hooks/useTokenList.js";
5
+ interface TokenListProps {
6
+ onContinue: (selectedToken: Token) => void;
7
+ onBack: () => void;
8
+ indexerGatewayClient: SequenceIndexerGateway;
9
+ theme?: ActiveTheme;
10
+ targetAmountUsd?: number | null;
11
+ targetAmountUsdFormatted?: string | null;
12
+ onError: (error: Error | string | null) => void;
13
+ }
14
+ export declare const TokenList: React.FC<TokenListProps>;
15
+ export default TokenList;
16
+ //# sourceMappingURL=TokenList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TokenList.d.ts","sourceRoot":"","sources":["../../../src/widget/components/TokenList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAEjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,KAAK,EAAE,KAAK,EAAkB,MAAM,0BAA0B,CAAA;AAIrE,UAAU,cAAc;IACtB,UAAU,EAAE,CAAC,aAAa,EAAE,KAAK,KAAK,IAAI,CAAA;IAC1C,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,oBAAoB,EAAE,sBAAsB,CAAA;IAC5C,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;CAChD;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA0Q9C,CAAA;AAED,eAAe,SAAS,CAAA"}
@@ -0,0 +1,39 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { ChevronLeft, Search } from "lucide-react";
3
+ import { useTokenList } from "../hooks/useTokenList.js";
4
+ import { TokenImage } from "./TokenImage.js";
5
+ export const TokenList = ({ onContinue, onBack, indexerGatewayClient, theme = "light", targetAmountUsd, targetAmountUsdFormatted, onError, }) => {
6
+ const { searchQuery, setSearchQuery, handleTokenSelect, filteredTokens, isLoadingSortedTokens, isTokenSelected, selectedToken, showContinueButton, filteredTokensFormatted, totalBalanceUsd, totalBalanceUsdFormatted, showInsufficientBalance, balanceError, } = useTokenList({
7
+ onContinue,
8
+ targetAmountUsd,
9
+ indexerGatewayClient,
10
+ onError,
11
+ });
12
+ return (_jsxs("div", { className: "space-y-6", children: [_jsxs("div", { className: "flex items-center justify-between relative", children: [_jsxs("div", { className: "flex items-center", children: [!targetAmountUsd && (_jsx("button", { type: "button", onClick: onBack, className: `p-2 rounded-full transition-colors cursor-pointer ${theme === "dark"
13
+ ? "hover:bg-gray-800 text-gray-400"
14
+ : "hover:bg-gray-100 text-gray-600"}`, children: _jsx(ChevronLeft, { className: "h-6 w-6" }) })), _jsx("h2", { className: `text-lg font-semibold ${targetAmountUsd ? "text-left" : "text-center"} ${theme === "dark" ? "text-white" : "text-gray-900"}`, children: targetAmountUsd
15
+ ? `Pay ${targetAmountUsdFormatted} with:`
16
+ : "Select Token" })] }), totalBalanceUsd > 0 && (_jsxs("p", { className: `text-xs mr-8 ${theme === "dark" ? "text-gray-400" : "text-gray-500"}`, children: ["Total balance: ", totalBalanceUsdFormatted] }))] }), _jsxs("div", { className: "relative", children: [_jsx("div", { className: "absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none", children: _jsx(Search, { className: `h-5 w-5 ${theme === "dark" ? "text-gray-500" : "text-gray-400"}` }) }), _jsx("input", { type: "text", value: searchQuery, onChange: (e) => setSearchQuery(e.target.value), placeholder: "Search tokens", className: `block w-full pl-10 pr-3 py-2 border rounded-[24px] focus:ring-2 focus:ring-blue-500 focus:border-blue-500 ${theme === "dark"
17
+ ? "bg-gray-800 border-gray-700 text-white placeholder-gray-500"
18
+ : "bg-white border-gray-300 text-gray-900 placeholder-gray-500"}` })] }), isLoadingSortedTokens && (_jsxs("div", { className: "text-center py-4", children: [_jsx("div", { className: `animate-spin rounded-full h-8 w-8 border-b-2 mx-auto ${theme === "dark" ? "border-white" : "border-black"}` }), _jsx("p", { className: `mt-2 ${theme === "dark" ? "text-gray-400" : "text-gray-500"}`, children: "Loading your token balances..." })] })), !isLoadingSortedTokens &&
19
+ !balanceError &&
20
+ filteredTokens.length === 0 && (_jsx("div", { className: `text-center py-4 rounded-lg ${theme === "dark" ? "bg-gray-800" : "bg-gray-50"}`, children: _jsx("p", { className: theme === "dark" ? "text-gray-400" : "text-gray-500", children: searchQuery.trim()
21
+ ? "No tokens found matching your search."
22
+ : "No tokens found with balance greater than 0." }) })), _jsx("div", { className: `divide-y ${theme === "dark" ? "divide-gray-700/50" : "divide-gray-200"} max-h-[35vh] overflow-y-auto rounded-[16px] ${theme === "dark" ? "bg-gray-800/50" : "bg-white"}`, children: filteredTokensFormatted.map((token) => {
23
+ const { symbol, imageUrl, chainId, contractAddress, balanceUsdFormatted, tokenName, priceUsd, balanceFormatted, isSufficientBalance, } = token;
24
+ return (_jsxs("button", { type: "button", onClick: () => handleTokenSelect(token), title: !isSufficientBalance
25
+ ? "Insufficient balance for this token"
26
+ : undefined, className: `w-full py-2.5 px-3 flex items-center space-x-3 transition-colors ${theme === "dark"
27
+ ? isTokenSelected(token)
28
+ ? "bg-gray-800"
29
+ : "hover:bg-gray-800/80"
30
+ : isTokenSelected(token)
31
+ ? "bg-gray-100"
32
+ : "hover:bg-gray-50"} ${!isSufficientBalance ? "opacity-50 cursor-not-allowed" : "cursor-pointer"}`, children: [_jsx("div", { className: "relative flex-shrink-0", children: _jsx("div", { className: `rounded-full flex items-center justify-center ${theme === "dark" ? "bg-gray-700" : "bg-gray-100"}`, children: contractAddress ? (_jsx(TokenImage, { symbol: symbol[0], imageUrl: imageUrl, chainId: chainId, size: 32 })) : (_jsx("span", { className: `text-base font-medium ${theme === "dark" ? "text-gray-300" : "text-gray-600"}`, children: symbol })) }) }), _jsxs("div", { className: "flex-1 min-w-0 text-left", children: [_jsx("h3", { className: `text-sm font-medium truncate ${theme === "dark" ? "text-white" : "text-gray-900"} ${!isSufficientBalance ? (theme === "dark" ? "text-gray-500" : "text-gray-400") : ""}`, children: tokenName }), _jsx("p", { className: `text-xs ${theme === "dark" ? "text-gray-400" : "text-gray-500"} ${!isSufficientBalance ? (theme === "dark" ? "text-gray-600" : "text-gray-400") : ""}`, children: symbol })] }), _jsx("div", { className: "text-right flex-shrink-0", children: priceUsd > 0 ? (_jsxs(_Fragment, { children: [_jsx("p", { className: `text-sm font-medium ${theme === "dark" ? "text-white" : "text-gray-900"} ${!isSufficientBalance ? (theme === "dark" ? "text-gray-500" : "text-gray-400") : ""}`, children: balanceUsdFormatted }), _jsx("p", { className: `text-xs ${theme === "dark" ? "text-gray-400" : "text-gray-500"} ${!isSufficientBalance ? (theme === "dark" ? "text-gray-600" : "text-gray-400") : ""}`, children: balanceFormatted })] })) : (_jsx("p", { className: `text-sm font-medium ${theme === "dark" ? "text-white" : "text-gray-900"} ${!isSufficientBalance ? (theme === "dark" ? "text-gray-500" : "text-gray-400") : ""}`, children: balanceFormatted })) })] }, `${chainId}-${contractAddress}`));
33
+ }) }), showInsufficientBalance && (_jsxs("div", { className: `text-left py-3 px-4 rounded-lg ${theme === "dark"
34
+ ? "bg-amber-500/10 border border-amber-500/30"
35
+ : "bg-amber-50 border border-amber-200"}`, children: [_jsx("p", { className: `text-xs font-medium ${theme === "dark" ? "text-amber-400" : "text-amber-700"}`, children: "Insufficient balance" }), _jsx("p", { className: `text-xs mt-1 ${theme === "dark" ? "text-amber-300" : "text-amber-600"}`, children: "You do not have enough funds to reach the target amount" })] })), showContinueButton && (_jsx("div", { className: "space-y-4", children: _jsx("button", { type: "button", onClick: () => selectedToken && onContinue(selectedToken), disabled: !selectedToken, className: `w-full font-semibold py-3 px-4 rounded-[24px] transition-colors ${theme === "dark"
36
+ ? "bg-blue-600 disabled:bg-gray-700 text-white disabled:text-gray-400 enabled:hover:bg-blue-700"
37
+ : "bg-blue-500 disabled:bg-gray-300 text-white disabled:text-gray-500 enabled:hover:bg-blue-600"} disabled:cursor-not-allowed cursor-pointer`, children: "Continue" }) }))] }));
38
+ };
39
+ export default TokenList;
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ import type { TransactionState } from "../../prepareSend.js";
3
+ import type { ActiveTheme } from "../../theme.js";
4
+ interface TransferPendingProps {
5
+ onComplete: () => void;
6
+ theme?: ActiveTheme;
7
+ transactionStates: TransactionState[];
8
+ }
9
+ export declare const TransferPending: React.FC<TransferPendingProps>;
10
+ export default TransferPending;
11
+ //# sourceMappingURL=TransferPending.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TransferPending.d.ts","sourceRoot":"","sources":["../../../src/widget/components/TransferPending.tsx"],"names":[],"mappings":"AACA,OAAO,KAAoB,MAAM,OAAO,CAAA;AACxC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAEjD,UAAU,oBAAoB;IAC5B,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,iBAAiB,EAAE,gBAAgB,EAAE,CAAA;CACtC;AAMD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA0L1D,CAAA;AAED,eAAe,eAAe,CAAA"}
@@ -0,0 +1,77 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { ExternalLink } from "lucide-react";
3
+ import React, { useEffect } from "react";
4
+ const _truncateHash = (hash) => {
5
+ return `${hash.slice(0, 6)}...${hash.slice(-4)}`;
6
+ };
7
+ export const TransferPending = ({ onComplete, theme = "light", transactionStates, }) => {
8
+ useEffect(() => {
9
+ const timer = setTimeout(() => {
10
+ onComplete();
11
+ }, 5000);
12
+ return () => clearTimeout(timer);
13
+ }, [onComplete]);
14
+ // Find the first pending transaction index
15
+ const activePendingIndex = transactionStates.findIndex((tx) => tx.state === "pending");
16
+ const renderStep = (tx, index) => {
17
+ const isPending = tx.state === "pending";
18
+ const isActivePending = index === activePendingIndex;
19
+ const isAfterPending = activePendingIndex !== -1 && index > activePendingIndex;
20
+ const dotClasses = `relative w-3 h-3 rounded-full transition-colors ${isAfterPending
21
+ ? theme === "dark"
22
+ ? "bg-gray-700"
23
+ : "bg-gray-300"
24
+ : tx.state === "confirmed"
25
+ ? theme === "dark"
26
+ ? "bg-green-500"
27
+ : "bg-green-600"
28
+ : tx.state === "failed"
29
+ ? theme === "dark"
30
+ ? "bg-red-500"
31
+ : "bg-red-600"
32
+ : theme === "dark"
33
+ ? "bg-blue-500"
34
+ : "bg-blue-600"} ${isActivePending ? "animate-[pulse_1.5s_ease-in-out_infinite]" : ""}`;
35
+ const labelClasses = `mt-2 text-xs transition-colors text-center whitespace-nowrap flex items-center gap-1 ${isPending || isAfterPending
36
+ ? theme === "dark"
37
+ ? "text-gray-400 font-medium"
38
+ : "text-gray-500 font-medium"
39
+ : theme === "dark"
40
+ ? "text-gray-100 font-semibold hover:underline"
41
+ : "text-gray-900 font-semibold hover:underline"}`;
42
+ const content = (_jsxs(_Fragment, { children: [_jsx("div", { className: "relative", children: _jsx("div", { className: dotClasses, children: isActivePending && (_jsx("div", { className: `absolute inset-0 rounded-full ${theme === "dark" ? "bg-blue-500" : "bg-blue-600"} animate-[pulseRing_2s_cubic-bezier(0.4,0,0.6,1)_infinite]` })) }) }), _jsx("div", { className: "mt-2 flex justify-center", children: _jsxs("div", { className: labelClasses, children: [tx.label, !isPending && !isAfterPending && (_jsx(ExternalLink, { className: "w-3 h-3" }))] }) })] }));
43
+ if (isPending || isAfterPending) {
44
+ return (_jsx("div", { className: "flex flex-col items-center relative", children: content }));
45
+ }
46
+ return (_jsx("a", { href: tx.explorerUrl, target: "_blank", rel: "noopener noreferrer", className: "flex flex-col items-center relative", children: content }));
47
+ };
48
+ const renderDots = (index) => {
49
+ const isActiveDots = index === activePendingIndex - 1;
50
+ return (_jsx("div", { className: "flex-1 flex items-center justify-center mx-4", children: _jsx("div", { className: "flex items-center space-x-2", children: [...Array(3)].map((_, i) => (_jsx("div", { className: `w-1 h-1 rounded-full ${theme === "dark"
51
+ ? index >= activePendingIndex
52
+ ? "bg-gray-700"
53
+ : "bg-gray-600"
54
+ : index >= activePendingIndex
55
+ ? "bg-gray-300"
56
+ : "bg-gray-400"} ${isActiveDots ? "animate-[dotFadeIn_1.5s_ease-in-out_infinite]" : ""}`, style: {
57
+ animationDelay: isActiveDots ? `${i * 0.2}s` : "0s",
58
+ } }, i))) }) }));
59
+ };
60
+ return (_jsxs(_Fragment, { children: [_jsx("style", { children: `
61
+ @keyframes dotFadeIn {
62
+ 0% { opacity: 0.3; transform: scale(0.8); }
63
+ 50% { opacity: 1; transform: scale(1.2); }
64
+ 100% { opacity: 0.3; transform: scale(0.8); }
65
+ }
66
+ @keyframes pulseRing {
67
+ 0% { transform: scale(0.7); opacity: 0; }
68
+ 50% { opacity: 0.3; }
69
+ 100% { transform: scale(2); opacity: 0; }
70
+ }
71
+ ` }), _jsxs("div", { className: "space-y-8 flex flex-col items-center justify-center py-8", children: [_jsx("h2", { className: `text-2xl font-bold ${theme === "dark" ? "text-white" : "text-gray-900"}`, children: "Transfer Pending" }), _jsx("div", { className: `animate-spin rounded-full h-16 w-16 border-b-2 ${theme === "dark" ? "border-blue-400" : "border-blue-500"}`, style: { borderTopWidth: "2px", borderBottomWidth: "2px" } }), _jsx("div", { className: "w-full max-w-2xl", children: _jsx("div", { className: "relative flex items-center justify-center pb-8", children: _jsx("div", { className: `flex items-center ${transactionStates.length === 1
72
+ ? "w-auto"
73
+ : transactionStates.length === 2
74
+ ? "w-[200px]"
75
+ : "w-full justify-between"}`, children: transactionStates.map((tx, index) => (_jsxs(React.Fragment, { children: [_jsx("div", { className: "flex flex-col items-center", children: renderStep(tx, index) }), index < transactionStates.length - 1 && renderDots(index)] }, `${tx.transactionHash}-${index}`))) }) }) }), _jsx("p", { className: theme === "dark" ? "text-gray-400" : "text-gray-500", children: "Waiting for confirmation..." })] })] }));
76
+ };
77
+ export default TransferPending;
@@ -0,0 +1,18 @@
1
+ import type React from "react";
2
+ import type { TransactionState } from "../../prepareSend.js";
3
+ import type { ActiveTheme } from "../../theme.js";
4
+ interface TransferPendingProps {
5
+ onComplete: () => void;
6
+ theme?: ActiveTheme;
7
+ transactionStates: TransactionState[];
8
+ fromAmount: string;
9
+ fromAmountUsd: string;
10
+ fromTokenSymbol: string;
11
+ fromTokenName: string;
12
+ fromChainId: number;
13
+ fromTokenImageUrl?: string;
14
+ timestamp?: number;
15
+ }
16
+ export declare const TransferPending: React.FC<TransferPendingProps>;
17
+ export default TransferPending;
18
+ //# sourceMappingURL=TransferPendingVertical.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TransferPendingVertical.d.ts","sourceRoot":"","sources":["../../../src/widget/components/TransferPendingVertical.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAGjD,UAAU,oBAAoB;IAC5B,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,iBAAiB,EAAE,gBAAgB,EAAE,CAAA;IACrC,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAMD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAiY1D,CAAA;AAED,eAAe,eAAe,CAAA"}
@@ -0,0 +1,183 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ExternalLink } from "lucide-react";
3
+ import { useEffect, useState } from "react";
4
+ import { TokenImage } from "./TokenImage.js";
5
+ const _truncateHash = (hash) => {
6
+ return `${hash.slice(0, 6)}...${hash.slice(-4)}`;
7
+ };
8
+ export const TransferPending = ({ onComplete, theme = "light", transactionStates, fromAmount, fromAmountUsd, fromTokenSymbol, fromTokenName, fromChainId, fromTokenImageUrl, timestamp, }) => {
9
+ const [showContent, setShowContent] = useState(false);
10
+ const [activePendingIndex, setActivePendingIndex] = useState(-1);
11
+ const [showDots, setShowDots] = useState(false);
12
+ const [showLine, setShowLine] = useState(false);
13
+ useEffect(() => {
14
+ const timer = setTimeout(() => {
15
+ onComplete();
16
+ }, 5000);
17
+ return () => clearTimeout(timer);
18
+ }, [onComplete]);
19
+ useEffect(() => {
20
+ // Animate content in
21
+ const contentTimer = setTimeout(() => {
22
+ setShowContent(true);
23
+ }, 200);
24
+ return () => clearTimeout(contentTimer);
25
+ }, []);
26
+ useEffect(() => {
27
+ // Show dots first, then animate them in
28
+ const dotsTimer = setTimeout(() => {
29
+ setShowDots(true);
30
+ }, 400);
31
+ // Show line after dots are visible
32
+ const lineTimer = setTimeout(() => {
33
+ setShowLine(true);
34
+ }, 800);
35
+ return () => {
36
+ clearTimeout(dotsTimer);
37
+ clearTimeout(lineTimer);
38
+ };
39
+ }, []);
40
+ useEffect(() => {
41
+ // Update active pending index with animation
42
+ const newActiveIndex = transactionStates.findIndex((tx) => tx.state === "pending");
43
+ if (newActiveIndex !== activePendingIndex) {
44
+ setActivePendingIndex(newActiveIndex);
45
+ }
46
+ }, [transactionStates, activePendingIndex]);
47
+ // Add CSS animation for draw effect
48
+ useEffect(() => {
49
+ const style = document.createElement("style");
50
+ style.textContent = `
51
+ @keyframes draw {
52
+ from {
53
+ stroke-dasharray: 0 100;
54
+ }
55
+ to {
56
+ stroke-dasharray: 100 0;
57
+ }
58
+ }
59
+
60
+ .animate-draw {
61
+ animation: draw 0.6s ease-out forwards;
62
+ }
63
+
64
+ @keyframes slideInFromTop {
65
+ from {
66
+ transform: translateY(-20px);
67
+ }
68
+ to {
69
+ transform: translateY(0);
70
+ }
71
+ }
72
+
73
+ @keyframes lineGrow {
74
+ from {
75
+ height: 0;
76
+ }
77
+ to {
78
+ height: 100%;
79
+ }
80
+ }
81
+
82
+ .animate-slide-in {
83
+ animation: slideInFromTop 0.3s ease-out forwards;
84
+ }
85
+
86
+ .animate-line-grow {
87
+ animation: lineGrow 0.6s ease-out forwards;
88
+ }
89
+ `;
90
+ document.head.appendChild(style);
91
+ return () => {
92
+ document.head.removeChild(style);
93
+ };
94
+ }, []);
95
+ // Calculate time difference
96
+ const getTimeAgo = () => {
97
+ if (!timestamp)
98
+ return "Sent just now";
99
+ const now = Date.now();
100
+ const diffInSeconds = Math.floor((now - timestamp) / 1000);
101
+ if (diffInSeconds < 1)
102
+ return "Sent just now";
103
+ if (diffInSeconds === 1)
104
+ return "Sent 1 second ago";
105
+ if (diffInSeconds < 60)
106
+ return `Sent ${diffInSeconds} seconds ago`;
107
+ const diffInMinutes = Math.floor(diffInSeconds / 60);
108
+ if (diffInMinutes === 1)
109
+ return "Sent 1 minute ago";
110
+ if (diffInMinutes < 60)
111
+ return `Sent ${diffInMinutes} minutes ago`;
112
+ const diffInHours = Math.floor(diffInMinutes / 60);
113
+ if (diffInHours === 1)
114
+ return "Sent 1 hour ago";
115
+ if (diffInHours < 24)
116
+ return `Sent ${diffInHours} hours ago`;
117
+ const diffInDays = Math.floor(diffInHours / 24);
118
+ if (diffInDays === 1)
119
+ return "Sent 1 day ago";
120
+ return `Sent ${diffInDays} days ago`;
121
+ };
122
+ const renderStep = (tx, index) => {
123
+ const isActivePending = index === activePendingIndex;
124
+ const isCompleted = tx.state === "confirmed";
125
+ const isFailed = tx.state === "failed";
126
+ // Determine step state
127
+ let stepState;
128
+ if (isFailed) {
129
+ stepState = "failed";
130
+ }
131
+ else if (isCompleted) {
132
+ stepState = "completed";
133
+ }
134
+ else if (isActivePending) {
135
+ stepState = "active";
136
+ }
137
+ else {
138
+ stepState = "pending";
139
+ }
140
+ // Circle styles based on state
141
+ const getCircleStyles = () => {
142
+ const baseStyles = "w-5 h-5 rounded-full flex items-center justify-center transition-all duration-500 ease-out";
143
+ switch (stepState) {
144
+ case "completed":
145
+ return `${baseStyles} ${theme === "dark" ? "bg-green-500" : "bg-green-600"} scale-100`;
146
+ case "active":
147
+ return `${baseStyles} ${theme === "dark" ? "bg-blue-500" : "bg-blue-600"} scale-110`;
148
+ case "failed":
149
+ return `${baseStyles} ${theme === "dark" ? "bg-red-500" : "bg-red-600"} scale-100`;
150
+ case "pending":
151
+ return `${baseStyles} ${theme === "dark" ? "bg-gray-600" : "bg-gray-300"} scale-100`;
152
+ }
153
+ };
154
+ // Checkmark icon for completed steps
155
+ const CheckmarkIcon = () => (_jsxs("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", children: [_jsx("title", { children: "Completed" }), _jsx("path", { d: "M2.5 6L5 8.5L9.5 4", stroke: "white", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", className: "animate-draw" })] }));
156
+ // X icon for failed steps
157
+ const XIcon = () => (_jsxs("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", children: [_jsx("title", { children: "Failed" }), _jsx("path", { d: "M3 3L9 9M9 3L3 9", stroke: "white", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", className: "animate-draw" })] }));
158
+ // Spinner icon for active steps
159
+ const SpinnerIcon = () => (_jsxs("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", className: "animate-spin", children: [_jsx("title", { children: "Processing" }), _jsx("circle", { cx: "6", cy: "6", r: "4", stroke: "white", strokeWidth: "2", strokeLinecap: "round", strokeDasharray: "6 6", strokeDashoffset: "0" })] }));
160
+ // Text styles based on state
161
+ const getTextStyles = () => {
162
+ const baseStyles = "text-sm font-medium transition-all duration-500 ease-out";
163
+ // Use regular colors instead of state-based colors
164
+ return `${baseStyles} ${theme === "dark" ? "text-white" : "text-gray-900"}`;
165
+ };
166
+ const content = (_jsxs("div", { className: "flex items-start space-x-4", children: [_jsx("div", { className: "flex-shrink-0", children: _jsxs("div", { className: getCircleStyles(), children: [stepState === "completed" && _jsx(CheckmarkIcon, {}), stepState === "failed" && _jsx(XIcon, {}), stepState === "active" && _jsx(SpinnerIcon, {})] }) }), _jsx("div", { className: "flex-1 min-w-0", children: _jsxs("div", { className: "flex items-center space-x-2", children: [_jsx("span", { className: getTextStyles(), children: tx.label }), stepState === "completed" && (_jsx(ExternalLink, { className: "w-4 h-4 text-gray-400 transition-opacity duration-300" }))] }) })] }));
167
+ if (stepState === "completed" || stepState === "failed") {
168
+ return (_jsx("a", { href: tx.explorerUrl, target: "_blank", rel: "noopener noreferrer", className: "block hover:opacity-80 transition-all duration-300 ease-out", children: content }));
169
+ }
170
+ return _jsx("div", { className: "block", children: content });
171
+ };
172
+ return (_jsxs("div", { className: "space-y-8 flex flex-col items-center justify-center py-8", children: [_jsx("h2", { className: `text-2xl font-bold transition-all duration-500 ease-out ${showContent ? "opacity-100 translate-y-0" : "opacity-0 translate-y-4"} ${theme === "dark" ? "text-white" : "text-gray-900"}`, children: "Transaction status" }), _jsx("div", { className: `w-full max-w-sm p-3 rounded-lg transition-all duration-500 ease-out delay-100 ${showContent ? "opacity-100 translate-y-0" : "opacity-0 translate-y-4"} ${theme === "dark"
173
+ ? "bg-gray-800/50 text-gray-200"
174
+ : "bg-gray-50 text-gray-700"}`, children: _jsxs("div", { className: "flex items-start justify-between", children: [_jsx("div", { className: "flex items-start space-x-2", children: _jsxs("div", { className: "flex items-center space-x-2", children: [_jsx("div", { style: { width: "24px", height: "24px" }, children: _jsx(TokenImage, { imageUrl: fromTokenImageUrl, symbol: fromTokenSymbol, chainId: fromChainId, size: 24 }) }), _jsxs("div", { className: "flex flex-col", children: [_jsx("span", { className: `text-xs font-medium ${theme === "dark" ? "text-white" : "text-gray-900"}`, children: fromTokenName }), _jsx("span", { className: `text-xs ${theme === "dark" ? "text-gray-400" : "text-gray-500"}`, children: getTimeAgo() })] })] }) }), _jsxs("div", { className: "text-right", children: [_jsx("div", { className: `text-xs font-medium ${theme === "dark" ? "text-white" : "text-gray-900"}`, children: fromAmountUsd }), _jsxs("div", { className: `text-xs ${theme === "dark" ? "text-gray-400" : "text-gray-600"}`, children: [fromAmount, " ", fromTokenSymbol] })] })] }) }), _jsx("div", { className: "w-full mx-auto", style: { width: "auto" }, children: _jsxs("div", { className: "relative", children: [_jsx("div", { className: `absolute left-2.5 top-5 bottom-5 w-0.5 transition-all duration-500 ease-out ${theme === "dark" ? "bg-gray-700" : "bg-gray-300"} ${showLine ? "animate-line-grow" : "h-0"}` }), activePendingIndex > 0 && showLine && (_jsx("div", { className: "absolute left-2.5 top-5 w-0.5 bg-green-500 transition-all duration-1000 ease-out", style: {
175
+ height: `${(activePendingIndex / (transactionStates.length - 1)) * 80}%`,
176
+ maxHeight: "calc(100% - 20px)",
177
+ } })), _jsx("div", { className: "space-y-6", children: transactionStates.map((tx, index) => (_jsx("div", { className: "relative transition-all duration-300 ease-out", style: {
178
+ transitionDelay: showDots ? `${index * 100}ms` : "0ms",
179
+ transform: showDots ? "translateY(0)" : "translateY(-20px)",
180
+ visibility: showDots ? "visible" : "hidden",
181
+ }, children: renderStep(tx, index) }, `${tx.transactionHash}-${index}`))) })] }) })] }));
182
+ };
183
+ export default TransferPending;
@@ -0,0 +1,18 @@
1
+ import type React from "react";
2
+ import type { ActiveTheme } from "../../theme.js";
3
+ interface WalletConfirmationProps {
4
+ onBack: () => void;
5
+ onComplete: () => void;
6
+ theme?: ActiveTheme;
7
+ amount?: string;
8
+ recipient?: string;
9
+ tokenSymbol?: string;
10
+ retryEnabled?: boolean;
11
+ onRetry?: () => void;
12
+ fromTokenSymbol: string;
13
+ fromChainId: number;
14
+ fromTokenImageUrl: string;
15
+ }
16
+ export declare const WalletConfirmation: React.FC<WalletConfirmationProps>;
17
+ export default WalletConfirmation;
18
+ //# sourceMappingURL=WalletConfirmation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WalletConfirmation.d.ts","sourceRoot":"","sources":["../../../src/widget/components/WalletConfirmation.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAEjD,UAAU,uBAAuB;IAC/B,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;CAC1B;AAED,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAoJhE,CAAA;AAED,eAAe,kBAAkB,CAAA"}
@@ -0,0 +1,22 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { TokenImage } from "./TokenImage.js";
3
+ import { ChevronLeft } from "lucide-react";
4
+ import { useEffect, useState } from "react";
5
+ import { getExplorerUrlForAddress } from "../../explorer.js";
6
+ export const WalletConfirmation = ({ theme = "light", amount, recipient, tokenSymbol, retryEnabled = false, onRetry, onBack, fromTokenSymbol, fromChainId, fromTokenImageUrl, }) => {
7
+ const [showContent, setShowContent] = useState(false);
8
+ useEffect(() => {
9
+ setShowContent(true);
10
+ }, []);
11
+ return (_jsxs("div", { className: "space-y-6", children: [_jsx("div", { className: "flex items-center relative", children: _jsx("button", { type: "button", onClick: onBack, className: `absolute -left-2 p-2 rounded-full transition-colors cursor-pointer ${theme === "dark"
12
+ ? "hover:bg-gray-800 text-gray-400"
13
+ : "hover:bg-gray-100 text-gray-600"}`, children: _jsx(ChevronLeft, { className: "h-6 w-6" }) }) }), _jsxs("div", { className: "flex flex-col justify-center min-h-full space-y-6 pt-8", children: [_jsxs("div", { className: "text-center", children: [_jsxs("div", { className: `mx-auto flex items-center justify-center transition-all duration-500 ease-out relative ${showContent ? "transform -translate-y-8" : ""}`, children: [retryEnabled ? (_jsx("div", { className: `h-24 w-24` })) : (_jsx("div", { className: `animate-spin rounded-full h-24 w-24 border-b-2 ${theme === "dark" ? "border-blue-400" : "border-blue-500"}`, style: { borderTopWidth: "2px", borderBottomWidth: "2px" } })), _jsx("div", { className: "absolute", children: _jsx(TokenImage, { imageUrl: fromTokenImageUrl, symbol: fromTokenSymbol, chainId: fromChainId, size: 64 }) })] }), _jsxs("div", { className: `transition-all duration-500 ease-out ${showContent ? "opacity-100 translate-y-0" : "opacity-0 translate-y-4"}`, children: [_jsx("h2", { className: `text-xl font-bold ${theme === "dark" ? "text-white" : "text-gray-900"}`, children: retryEnabled ? "Try again" : "Waiting for wallet..." }), _jsx("p", { className: `mt-2 text-sm ${theme === "dark" ? "text-gray-300" : "text-gray-600"}`, children: "Please approve the request in your wallet" })] })] }), _jsx("div", { className: `transition-all duration-500 ease-out delay-100 ${showContent ? "opacity-100 translate-y-0" : "opacity-0 translate-y-4"}`, children: _jsx("div", { className: `p-4 rounded-lg border ${theme === "dark"
14
+ ? "bg-gray-800/50 border-gray-700"
15
+ : "bg-gray-50 border-gray-200"}`, children: _jsxs("div", { className: "space-y-3", children: [amount && tokenSymbol && (_jsxs("div", { className: "flex justify-between items-center", children: [_jsx("span", { className: `text-xs ${theme === "dark" ? "text-gray-400" : "text-gray-600"}`, children: "Amount:" }), _jsxs("span", { className: `font-medium text-xs ${theme === "dark" ? "text-white" : "text-gray-900"}`, children: [amount, " ", tokenSymbol] })] })), recipient && (_jsxs("div", { className: "flex justify-between items-center", children: [_jsx("span", { className: `text-xs ${theme === "dark" ? "text-gray-400" : "text-gray-600"}`, children: "To (Intent):" }), _jsxs("a", { href: getExplorerUrlForAddress({
16
+ address: recipient,
17
+ chainId: fromChainId,
18
+ }), target: "_blank", rel: "noopener noreferrer", className: `font-mono text-xs hover:underline ${theme === "dark" ? "text-gray-300" : "text-gray-700"}`, children: [recipient.slice(0, 6), "...", recipient.slice(-4)] })] }))] }) }) }), retryEnabled && onRetry && (_jsx("div", { className: `transition-all duration-500 ease-out delay-300 ${showContent ? "opacity-100 translate-y-0" : "opacity-0 translate-y-4"}`, children: _jsx("button", { type: "button", onClick: onRetry, className: `w-full px-4 py-2 rounded-lg font-medium transition-colors cursor-pointer ${theme === "dark"
19
+ ? "bg-blue-600 hover:bg-blue-700 text-white"
20
+ : "bg-blue-500 hover:bg-blue-600 text-white"}`, children: "Try Again" }) }))] })] }));
21
+ };
22
+ export default WalletConfirmation;
@@ -0,0 +1,4 @@
1
+ export declare const defaultPrivyAppId = "cmc25oq0a01dvl40mn0ex5e1o";
2
+ export declare const defaultPrivyClientId = "client-WY6MrvK6dbp1FSBPU1DKa6ymAHrJBPYxyFX39dFCCd56L";
3
+ export declare const SITE_URL = "https://trails.build/";
4
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/widget/config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,8BAA8B,CAAA;AAC5D,eAAO,MAAM,oBAAoB,yDACuB,CAAA;AAExD,eAAO,MAAM,QAAQ,0BAA0B,CAAA"}
@@ -0,0 +1,3 @@
1
+ export const defaultPrivyAppId = "cmc25oq0a01dvl40mn0ex5e1o";
2
+ export const defaultPrivyClientId = "client-WY6MrvK6dbp1FSBPU1DKa6ymAHrJBPYxyFX39dFCCd56L";
3
+ export const SITE_URL = "https://trails.build/";
@@ -0,0 +1,20 @@
1
+ import "./index-CK94R-H7.js";
2
+ import { b as C } from "./lit-html-BRjl1r6K.js";
3
+ const e = C`<svg
4
+ xmlns="http://www.w3.org/2000/svg"
5
+ width="16"
6
+ height="16"
7
+ viewBox="0 0 16 16"
8
+ fill="none"
9
+ >
10
+ <path
11
+ fill="currentColor"
12
+ fill-rule="evenodd"
13
+ clip-rule="evenodd"
14
+ d="M9.21498 1.28565H10.5944C11.1458 1.28562 11.6246 1.2856 12.0182 1.32093C12.4353 1.35836 12.853 1.44155 13.2486 1.66724C13.7005 1.92498 14.0749 2.29935 14.3326 2.75122C14.5583 3.14689 14.6415 3.56456 14.6789 3.9817C14.7143 4.37531 14.7142 4.85403 14.7142 5.40545V6.78489C14.7142 7.33631 14.7143 7.81503 14.6789 8.20865C14.6415 8.62578 14.5583 9.04345 14.3326 9.43912C14.0749 9.89099 13.7005 10.2654 13.2486 10.5231C12.853 10.7488 12.4353 10.832 12.0182 10.8694C11.7003 10.8979 11.3269 10.9034 10.9045 10.9045C10.9034 11.3269 10.8979 11.7003 10.8694 12.0182C10.832 12.4353 10.7488 12.853 10.5231 13.2486C10.2654 13.7005 9.89099 14.0749 9.43912 14.3326C9.04345 14.5583 8.62578 14.6415 8.20865 14.6789C7.81503 14.7143 7.33631 14.7142 6.78489 14.7142H5.40545C4.85403 14.7142 4.37531 14.7143 3.9817 14.6789C3.56456 14.6415 3.14689 14.5583 2.75122 14.3326C2.29935 14.0749 1.92498 13.7005 1.66724 13.2486C1.44155 12.853 1.35836 12.4353 1.32093 12.0182C1.2856 11.6246 1.28562 11.1458 1.28565 10.5944V9.21498C1.28562 8.66356 1.2856 8.18484 1.32093 7.79122C1.35836 7.37409 1.44155 6.95642 1.66724 6.56074C1.92498 6.10887 2.29935 5.73451 2.75122 5.47677C3.14689 5.25108 3.56456 5.16789 3.9817 5.13045C4.2996 5.10192 4.67301 5.09645 5.09541 5.09541C5.09645 4.67302 5.10192 4.2996 5.13045 3.9817C5.16789 3.56456 5.25108 3.14689 5.47676 2.75122C5.73451 2.29935 6.10887 1.92498 6.56074 1.66724C6.95642 1.44155 7.37409 1.35836 7.79122 1.32093C8.18484 1.2856 8.66356 1.28562 9.21498 1.28565ZM5.09541 7.09552C4.68397 7.09667 4.39263 7.10161 4.16046 7.12245C3.88053 7.14757 3.78516 7.18949 3.74214 7.21403C3.60139 7.29431 3.48478 7.41091 3.4045 7.55166C3.37997 7.59468 3.33804 7.69005 3.31292 7.96999C3.28659 8.26345 3.28565 8.65147 3.28565 9.25708V10.5523C3.28565 11.1579 3.28659 11.5459 3.31292 11.8394C3.33804 12.1193 3.37997 12.2147 3.4045 12.2577C3.48478 12.3985 3.60139 12.5151 3.74214 12.5954C3.78516 12.6199 3.88053 12.6618 4.16046 12.6869C4.45393 12.7133 4.84195 12.7142 5.44755 12.7142H6.74279C7.3484 12.7142 7.73641 12.7133 8.02988 12.6869C8.30981 12.6618 8.40518 12.6199 8.44821 12.5954C8.58895 12.5151 8.70556 12.3985 8.78584 12.2577C8.81038 12.2147 8.8523 12.1193 8.87742 11.8394C8.89825 11.6072 8.90319 11.3159 8.90435 10.9045C8.48219 10.9034 8.10898 10.8979 7.79122 10.8694C7.37409 10.832 6.95641 10.7488 6.56074 10.5231C6.10887 10.2654 5.73451 9.89099 5.47676 9.43912C5.25108 9.04345 5.16789 8.62578 5.13045 8.20865C5.10194 7.89089 5.09645 7.51767 5.09541 7.09552ZM7.96999 3.31292C7.69005 3.33804 7.59468 3.37997 7.55166 3.4045C7.41091 3.48478 7.29431 3.60139 7.21403 3.74214C7.18949 3.78516 7.14757 3.88053 7.12245 4.16046C7.09611 4.45393 7.09517 4.84195 7.09517 5.44755V6.74279C7.09517 7.3484 7.09611 7.73641 7.12245 8.02988C7.14757 8.30981 7.18949 8.40518 7.21403 8.4482C7.29431 8.58895 7.41091 8.70556 7.55166 8.78584C7.59468 8.81038 7.69005 8.8523 7.96999 8.87742C8.26345 8.90376 8.65147 8.9047 9.25708 8.9047H10.5523C11.1579 8.9047 11.5459 8.90376 11.8394 8.87742C12.1193 8.8523 12.2147 8.81038 12.2577 8.78584C12.3985 8.70556 12.5151 8.58895 12.5954 8.4482C12.6199 8.40518 12.6618 8.30981 12.6869 8.02988C12.7133 7.73641 12.7142 7.3484 12.7142 6.74279V5.44755C12.7142 4.84195 12.7133 4.45393 12.6869 4.16046C12.6618 3.88053 12.6199 3.78516 12.5954 3.74214C12.5151 3.60139 12.3985 3.48478 12.2577 3.4045C12.2147 3.37997 12.1193 3.33804 11.8394 3.31292C11.5459 3.28659 11.1579 3.28565 10.5523 3.28565H9.25708C8.65147 3.28565 8.26345 3.28659 7.96999 3.31292Z"
15
+ fill="#788181"
16
+ /></svg
17
+ >`;
18
+ export {
19
+ e as copySvg
20
+ };
@@ -0,0 +1,8 @@
1
+ import "./index-CK94R-H7.js";
2
+ import { b as o } from "./lit-html-BRjl1r6K.js";
3
+ const i = o` <svg fill="none" viewBox="0 0 13 4">
4
+ <path fill="currentColor" d="M.5 0h12L8.9 3.13a3.76 3.76 0 0 1-4.8 0L.5 0Z" />
5
+ </svg>`;
6
+ export {
7
+ i as cursorSvg
8
+ };
@@ -0,0 +1,17 @@
1
+ import "./index-CK94R-H7.js";
2
+ import { b as o } from "./lit-html-BRjl1r6K.js";
3
+ const t = o`<svg fill="none" viewBox="0 0 14 6">
4
+ <path style="fill: var(--wui-color-bg-150);" d="M0 1h14L9.21 5.12a3.31 3.31 0 0 1-4.49 0L0 1Z" />
5
+ <path
6
+ style="stroke: var(--wui-color-inverse-100);"
7
+ stroke-opacity=".05"
8
+ d="M1.33 1.5h11.32L8.88 4.75l-.01.01a2.81 2.81 0 0 1-3.8 0l-.02-.01L1.33 1.5Z"
9
+ />
10
+ <path
11
+ style="fill: var(--wui-color-bg-150);"
12
+ d="M1.25.71h11.5L9.21 3.88a3.31 3.31 0 0 1-4.49 0L1.25.71Z"
13
+ />
14
+ </svg> `;
15
+ export {
16
+ t as cursorTransparentSvg
17
+ };
@@ -0,0 +1,14 @@
1
+ import "./index-CK94R-H7.js";
2
+ import { b as c } from "./lit-html-BRjl1r6K.js";
3
+ const l = c`<svg fill="none" viewBox="0 0 20 20">
4
+ <path
5
+ fill="currentColor"
6
+ fill-rule="evenodd"
7
+ d="M13.66 2H6.34c-1.07 0-1.96 0-2.68.08-.74.08-1.42.25-2.01.68a4 4 0 0 0-.89.89c-.43.6-.6 1.27-.68 2.01C0 6.38 0 7.26 0 8.34v.89c0 1.07 0 1.96.08 2.68.08.74.25 1.42.68 2.01a4 4 0 0 0 .89.89c.6.43 1.27.6 2.01.68a27 27 0 0 0 2.68.08h7.32a27 27 0 0 0 2.68-.08 4.03 4.03 0 0 0 2.01-.68 4 4 0 0 0 .89-.89c.43-.6.6-1.27.68-2.01.08-.72.08-1.6.08-2.68v-.89c0-1.07 0-1.96-.08-2.68a4.04 4.04 0 0 0-.68-2.01 4 4 0 0 0-.89-.89c-.6-.43-1.27-.6-2.01-.68C15.62 2 14.74 2 13.66 2ZM2.82 4.38c.2-.14.48-.25 1.06-.31C4.48 4 5.25 4 6.4 4h7.2c1.15 0 1.93 0 2.52.07.58.06.86.17 1.06.31a2 2 0 0 1 .44.44c.14.2.25.48.31 1.06.07.6.07 1.37.07 2.52v.77c0 1.15 0 1.93-.07 2.52-.06.58-.17.86-.31 1.06a2 2 0 0 1-.44.44c-.2.14-.48.25-1.06.32-.6.06-1.37.06-2.52.06H6.4c-1.15 0-1.93 0-2.52-.06-.58-.07-.86-.18-1.06-.32a2 2 0 0 1-.44-.44c-.14-.2-.25-.48-.31-1.06C2 11.1 2 10.32 2 9.17V8.4c0-1.15 0-1.93.07-2.52.06-.58.17-.86.31-1.06a2 2 0 0 1 .44-.44Z"
8
+ clip-rule="evenodd"
9
+ />
10
+ <path fill="currentColor" d="M6.14 17.57a1 1 0 1 0 0 2h7.72a1 1 0 1 0 0-2H6.14Z" />
11
+ </svg>`;
12
+ export {
13
+ l as desktopSvg
14
+ };
@@ -0,0 +1,13 @@
1
+ import "./index-CK94R-H7.js";
2
+ import { b as a } from "./lit-html-BRjl1r6K.js";
3
+ const e = a`<svg fill="none" viewBox="0 0 16 16">
4
+ <path
5
+ fill="currentColor"
6
+ fill-rule="evenodd"
7
+ d="M6.07 1h.57a1 1 0 0 1 0 2h-.52c-.98 0-1.64 0-2.14.06-.48.05-.7.14-.84.24-.13.1-.25.22-.34.35-.1.14-.2.35-.25.83-.05.5-.05 1.16-.05 2.15v2.74c0 .99 0 1.65.05 2.15.05.48.14.7.25.83.1.14.2.25.34.35.14.1.36.2.84.25.5.05 1.16.05 2.14.05h.52a1 1 0 0 1 0 2h-.57c-.92 0-1.69 0-2.3-.07a3.6 3.6 0 0 1-1.8-.61c-.3-.22-.57-.49-.8-.8a3.6 3.6 0 0 1-.6-1.79C.5 11.11.5 10.35.5 9.43V6.58c0-.92 0-1.7.06-2.31a3.6 3.6 0 0 1 .62-1.8c.22-.3.48-.57.79-.79a3.6 3.6 0 0 1 1.8-.61C4.37 1 5.14 1 6.06 1ZM9.5 3a1 1 0 0 1 1.42 0l4.28 4.3a1 1 0 0 1 0 1.4L10.93 13a1 1 0 0 1-1.42-1.42L12.1 9H6.8a1 1 0 1 1 0-2h5.3L9.51 4.42a1 1 0 0 1 0-1.41Z"
8
+ clip-rule="evenodd"
9
+ />
10
+ </svg>`;
11
+ export {
12
+ e as disconnectSvg
13
+ };
@@ -0,0 +1,22 @@
1
+ import "./index-CK94R-H7.js";
2
+ import { b as l } from "./lit-html-BRjl1r6K.js";
3
+ const f = l`<svg fill="none" viewBox="0 0 40 40">
4
+ <g clip-path="url(#a)">
5
+ <g clip-path="url(#b)">
6
+ <circle cx="20" cy="19.89" r="20" fill="#5865F2" />
7
+ <path
8
+ fill="#fff"
9
+ fill-rule="evenodd"
10
+ d="M25.71 28.15C30.25 28 32 25.02 32 25.02c0-6.61-2.96-11.98-2.96-11.98-2.96-2.22-5.77-2.15-5.77-2.15l-.29.32c3.5 1.07 5.12 2.61 5.12 2.61a16.75 16.75 0 0 0-10.34-1.93l-.35.04a15.43 15.43 0 0 0-5.88 1.9s1.71-1.63 5.4-2.7l-.2-.24s-2.81-.07-5.77 2.15c0 0-2.96 5.37-2.96 11.98 0 0 1.73 2.98 6.27 3.13l1.37-1.7c-2.6-.79-3.6-2.43-3.6-2.43l.58.35.09.06.08.04.02.01.08.05a17.25 17.25 0 0 0 4.52 1.58 14.4 14.4 0 0 0 8.3-.86c.72-.27 1.52-.66 2.37-1.21 0 0-1.03 1.68-3.72 2.44.61.78 1.35 1.67 1.35 1.67Zm-9.55-9.6c-1.17 0-2.1 1.03-2.1 2.28 0 1.25.95 2.28 2.1 2.28 1.17 0 2.1-1.03 2.1-2.28.01-1.25-.93-2.28-2.1-2.28Zm7.5 0c-1.17 0-2.1 1.03-2.1 2.28 0 1.25.95 2.28 2.1 2.28 1.17 0 2.1-1.03 2.1-2.28 0-1.25-.93-2.28-2.1-2.28Z"
11
+ clip-rule="evenodd"
12
+ />
13
+ </g>
14
+ </g>
15
+ <defs>
16
+ <clipPath id="a"><rect width="40" height="40" fill="#fff" rx="20" /></clipPath>
17
+ <clipPath id="b"><path fill="#fff" d="M0 0h40v40H0z" /></clipPath>
18
+ </defs>
19
+ </svg>`;
20
+ export {
21
+ f as discordSvg
22
+ };