@n1xyz/wallet-widget 0.0.4 → 0.0.5

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 (401) hide show
  1. package/README.md +184 -19
  2. package/dist/Logic/sessionManager.d.ts +53 -0
  3. package/dist/Logic/sessionManager.js +178 -0
  4. package/dist/Logic/transactionManager.d.ts +41 -0
  5. package/dist/Logic/transactionManager.js +192 -0
  6. package/dist/Modal/BackButton.js +1 -1
  7. package/dist/Modal/ConnectView.js +1 -1
  8. package/dist/Modal/CreateSessionView.js +1 -1
  9. package/dist/Modal/LoadingFallback.d.ts +2 -0
  10. package/dist/Modal/LoadingFallback.js +2 -0
  11. package/dist/Modal/ModalHeader.js +1 -1
  12. package/dist/Modal/N1WalletModal.js +88 -81
  13. package/dist/Modal/NTSFlow/LoadingFallback.d.ts +2 -0
  14. package/dist/Modal/NTSFlow/LoadingFallback.js +2 -0
  15. package/dist/Modal/NTSFlow/NTSFlow.d.ts +4 -0
  16. package/dist/Modal/NTSFlow/NTSFlow.js +30 -0
  17. package/dist/Modal/NTSFlow/NordFlow/WalletConnectionFlow.d.ts +9 -0
  18. package/dist/Modal/NTSFlow/NordFlow/WalletConnectionFlow.js +145 -0
  19. package/dist/Modal/NTSFlow/NordFlow/components/AnimatedButton.d.ts +14 -0
  20. package/dist/Modal/NTSFlow/NordFlow/components/AnimatedButton.js +75 -0
  21. package/dist/Modal/NTSFlow/NordFlow/components/ChainButton.d.ts +7 -0
  22. package/dist/Modal/NTSFlow/NordFlow/components/ChainButton.js +5 -0
  23. package/dist/Modal/NTSFlow/NordFlow/components/LoadingSquares.d.ts +1 -0
  24. package/dist/Modal/NTSFlow/NordFlow/components/LoadingSquares.js +5 -0
  25. package/dist/Modal/NTSFlow/NordFlow/components/TransactionTable.d.ts +13 -0
  26. package/dist/Modal/NTSFlow/NordFlow/components/TransactionTable.js +58 -0
  27. package/dist/Modal/NTSFlow/NordFlow/components/WaitingMessage.d.ts +6 -0
  28. package/dist/Modal/NTSFlow/NordFlow/components/WaitingMessage.js +6 -0
  29. package/dist/Modal/NTSFlow/NordFlow/components/index.d.ts +5 -0
  30. package/dist/Modal/NTSFlow/NordFlow/components/index.js +5 -0
  31. package/dist/Modal/NTSFlow/NordFlow/constants.d.ts +37 -0
  32. package/dist/Modal/NTSFlow/NordFlow/constants.js +223 -0
  33. package/dist/Modal/NTSFlow/NordFlow/hooks/index.d.ts +8 -0
  34. package/dist/Modal/NTSFlow/NordFlow/hooks/index.js +8 -0
  35. package/dist/Modal/NTSFlow/NordFlow/hooks/useButtonTyping.d.ts +7 -0
  36. package/dist/Modal/NTSFlow/NordFlow/hooks/useButtonTyping.js +43 -0
  37. package/dist/Modal/NTSFlow/NordFlow/hooks/useDepositFlow.d.ts +38 -0
  38. package/dist/Modal/NTSFlow/NordFlow/hooks/useDepositFlow.js +166 -0
  39. package/dist/Modal/NTSFlow/NordFlow/hooks/useFlowState.d.ts +32 -0
  40. package/dist/Modal/NTSFlow/NordFlow/hooks/useFlowState.js +163 -0
  41. package/dist/Modal/NTSFlow/NordFlow/hooks/useInterruptHandler.d.ts +27 -0
  42. package/dist/Modal/NTSFlow/NordFlow/hooks/useInterruptHandler.js +101 -0
  43. package/dist/Modal/NTSFlow/NordFlow/hooks/useNordSession.d.ts +32 -0
  44. package/dist/Modal/NTSFlow/NordFlow/hooks/useNordSession.js +193 -0
  45. package/dist/Modal/NTSFlow/NordFlow/hooks/useTableValues.d.ts +2 -0
  46. package/dist/Modal/NTSFlow/NordFlow/hooks/useTableValues.js +69 -0
  47. package/dist/Modal/NTSFlow/NordFlow/hooks/useWaitingMessage.d.ts +6 -0
  48. package/dist/Modal/NTSFlow/NordFlow/hooks/useWaitingMessage.js +89 -0
  49. package/dist/Modal/NTSFlow/NordFlow/hooks/useWalletConnect.d.ts +30 -0
  50. package/dist/Modal/NTSFlow/NordFlow/hooks/useWalletConnect.js +132 -0
  51. package/dist/Modal/NTSFlow/NordFlow/index.d.ts +3 -0
  52. package/dist/Modal/NTSFlow/NordFlow/index.js +3 -0
  53. package/dist/Modal/NTSFlow/NordFlow/screens/01-ConnectWalletScreen.d.ts +6 -0
  54. package/dist/Modal/NTSFlow/NordFlow/screens/01-ConnectWalletScreen.js +17 -0
  55. package/dist/Modal/NTSFlow/NordFlow/screens/02-EvmWalletAuthScreen.d.ts +6 -0
  56. package/dist/Modal/NTSFlow/NordFlow/screens/02-EvmWalletAuthScreen.js +47 -0
  57. package/dist/Modal/NTSFlow/NordFlow/screens/03-ChainSelectionScreen.d.ts +7 -0
  58. package/dist/Modal/NTSFlow/NordFlow/screens/03-ChainSelectionScreen.js +7 -0
  59. package/dist/Modal/NTSFlow/NordFlow/screens/04-AmountInputScreen.d.ts +8 -0
  60. package/dist/Modal/NTSFlow/NordFlow/screens/04-AmountInputScreen.js +20 -0
  61. package/dist/Modal/NTSFlow/NordFlow/screens/05-DepositProgressScreen.d.ts +7 -0
  62. package/dist/Modal/NTSFlow/NordFlow/screens/05-DepositProgressScreen.js +6 -0
  63. package/dist/Modal/NTSFlow/NordFlow/screens/06-DepositSuccessScreen.d.ts +8 -0
  64. package/dist/Modal/NTSFlow/NordFlow/screens/06-DepositSuccessScreen.js +99 -0
  65. package/dist/Modal/NTSFlow/NordFlow/screens/07-NordAuthScreen.d.ts +7 -0
  66. package/dist/Modal/NTSFlow/NordFlow/screens/07-NordAuthScreen.js +14 -0
  67. package/dist/Modal/NTSFlow/NordFlow/screens/08-AuthLoadingScreen.d.ts +6 -0
  68. package/dist/Modal/NTSFlow/NordFlow/screens/08-AuthLoadingScreen.js +20 -0
  69. package/dist/Modal/NTSFlow/NordFlow/screens/09-FinalSuccessScreen.d.ts +5 -0
  70. package/dist/Modal/NTSFlow/NordFlow/screens/09-FinalSuccessScreen.js +18 -0
  71. package/dist/Modal/NTSFlow/NordFlow/screens/10-ErrorScreen.d.ts +7 -0
  72. package/dist/Modal/NTSFlow/NordFlow/screens/10-ErrorScreen.js +13 -0
  73. package/dist/Modal/NTSFlow/NordFlow/screens/index.d.ts +10 -0
  74. package/dist/Modal/NTSFlow/NordFlow/screens/index.js +10 -0
  75. package/dist/Modal/NTSFlow/NordFlow/types.d.ts +105 -0
  76. package/dist/Modal/NTSFlow/NordFlow/types.js +34 -0
  77. package/dist/Modal/NTSFlow/NordFlow/utils/persistence.d.ts +24 -0
  78. package/dist/Modal/NTSFlow/NordFlow/utils/persistence.js +83 -0
  79. package/dist/Modal/NTSFlow/components/BackButton.d.ts +3 -0
  80. package/dist/Modal/NTSFlow/components/BackButton.js +26 -0
  81. package/dist/Modal/NTSFlow/components/ModalHeader.d.ts +1 -0
  82. package/dist/Modal/NTSFlow/components/ModalHeader.js +20 -0
  83. package/dist/Modal/NTSFlow/index.d.ts +1 -0
  84. package/dist/Modal/NTSFlow/index.js +1 -0
  85. package/dist/Modal/NTSFlow/views/ConnectView.d.ts +1 -0
  86. package/dist/Modal/NTSFlow/views/ConnectView.js +68 -0
  87. package/dist/Modal/NTSFlow/views/CreateSessionView.d.ts +1 -0
  88. package/dist/Modal/NTSFlow/views/CreateSessionView.js +245 -0
  89. package/dist/Modal/NTSFlow/views/CreateUserView.d.ts +1 -0
  90. package/dist/Modal/NTSFlow/views/CreateUserView.js +105 -0
  91. package/dist/Modal/NTSFlow/views/NoWhitelistView.d.ts +1 -0
  92. package/dist/Modal/NTSFlow/views/NoWhitelistView.js +42 -0
  93. package/dist/Modal/NTSFlow/views/SigningView.d.ts +1 -0
  94. package/dist/Modal/NTSFlow/views/SigningView.js +5 -0
  95. package/dist/Modal/NTSFlow/views/SuccessView.d.ts +1 -0
  96. package/dist/Modal/NTSFlow/views/SuccessView.js +10 -0
  97. package/dist/Modal/NoWhitelistView.js +1 -1
  98. package/dist/Modal/NordFlow/NordFlow.d.ts +9 -0
  99. package/dist/Modal/NordFlow/NordFlow.js +262 -0
  100. package/dist/Modal/NordFlow/NordFlowWrapper.d.ts +11 -0
  101. package/dist/Modal/NordFlow/NordFlowWrapper.js +11 -0
  102. package/dist/Modal/NordFlow/WalletConnectionFlow.d.ts +9 -0
  103. package/dist/Modal/NordFlow/WalletConnectionFlow.js +145 -0
  104. package/dist/Modal/NordFlow/components/AnimatedButton.d.ts +14 -0
  105. package/dist/Modal/NordFlow/components/AnimatedButton.js +75 -0
  106. package/dist/Modal/NordFlow/components/ChainButton.d.ts +8 -0
  107. package/dist/Modal/NordFlow/components/ChainButton.js +21 -0
  108. package/dist/Modal/NordFlow/components/ImageWithFallback.d.ts +17 -0
  109. package/dist/Modal/NordFlow/components/ImageWithFallback.js +32 -0
  110. package/dist/Modal/NordFlow/components/LoadingSquares.d.ts +1 -0
  111. package/dist/Modal/NordFlow/components/LoadingSquares.js +5 -0
  112. package/dist/Modal/NordFlow/components/TransactionTable.d.ts +13 -0
  113. package/dist/Modal/NordFlow/components/TransactionTable.js +83 -0
  114. package/dist/Modal/NordFlow/components/WaitingMessage.d.ts +6 -0
  115. package/dist/Modal/NordFlow/components/WaitingMessage.js +6 -0
  116. package/dist/Modal/NordFlow/components/index.d.ts +5 -0
  117. package/dist/Modal/NordFlow/components/index.js +5 -0
  118. package/dist/Modal/NordFlow/constants.d.ts +37 -0
  119. package/dist/Modal/NordFlow/constants.js +192 -0
  120. package/dist/Modal/NordFlow/hoc/index.d.ts +1 -0
  121. package/dist/Modal/NordFlow/hoc/index.js +1 -0
  122. package/dist/Modal/NordFlow/hoc/withImageFallback.d.ts +7 -0
  123. package/dist/Modal/NordFlow/hoc/withImageFallback.js +60 -0
  124. package/dist/Modal/NordFlow/hooks/index.d.ts +5 -0
  125. package/dist/Modal/NordFlow/hooks/index.js +5 -0
  126. package/dist/Modal/NordFlow/hooks/useButtonTyping.d.ts +7 -0
  127. package/dist/Modal/NordFlow/hooks/useButtonTyping.js +43 -0
  128. package/dist/Modal/NordFlow/hooks/useDepositFlow.d.ts +52 -0
  129. package/dist/Modal/NordFlow/hooks/useDepositFlow.js +365 -0
  130. package/dist/Modal/NordFlow/hooks/useFlowState.d.ts +32 -0
  131. package/dist/Modal/NordFlow/hooks/useFlowState.js +166 -0
  132. package/dist/Modal/NordFlow/hooks/useInterruptHandler.d.ts +24 -0
  133. package/dist/Modal/NordFlow/hooks/useInterruptHandler.js +56 -0
  134. package/dist/Modal/NordFlow/hooks/useNordInstance.d.ts +10 -0
  135. package/dist/Modal/NordFlow/hooks/useNordInstance.js +310 -0
  136. package/dist/Modal/NordFlow/hooks/useNordSession.d.ts +32 -0
  137. package/dist/Modal/NordFlow/hooks/useNordSession.js +391 -0
  138. package/dist/Modal/NordFlow/hooks/useNordWalletConnect.d.ts +14 -0
  139. package/dist/Modal/NordFlow/hooks/useNordWalletConnect.js +231 -0
  140. package/dist/Modal/NordFlow/hooks/useTableValues.d.ts +2 -0
  141. package/dist/Modal/NordFlow/hooks/useTableValues.js +69 -0
  142. package/dist/Modal/NordFlow/hooks/useWaitingMessage.d.ts +6 -0
  143. package/dist/Modal/NordFlow/hooks/useWaitingMessage.js +89 -0
  144. package/dist/Modal/NordFlow/hooks/useWalletConnect.d.ts +14 -0
  145. package/dist/Modal/NordFlow/hooks/useWalletConnect.js +221 -0
  146. package/dist/Modal/NordFlow/index copy.d.ts +1 -0
  147. package/dist/Modal/NordFlow/index copy.js +1 -0
  148. package/dist/Modal/NordFlow/index.d.ts +1 -0
  149. package/dist/Modal/NordFlow/index.js +1 -0
  150. package/dist/Modal/NordFlow/screens/01-ConnectWalletScreen.d.ts +6 -0
  151. package/dist/Modal/NordFlow/screens/01-ConnectWalletScreen.js +17 -0
  152. package/dist/Modal/NordFlow/screens/02-EvmWalletAuthScreen.d.ts +6 -0
  153. package/dist/Modal/NordFlow/screens/02-EvmWalletAuthScreen.js +47 -0
  154. package/dist/Modal/NordFlow/screens/03-ChainSelectionScreen.d.ts +7 -0
  155. package/dist/Modal/NordFlow/screens/03-ChainSelectionScreen.js +47 -0
  156. package/dist/Modal/NordFlow/screens/04-AmountInputScreen.d.ts +10 -0
  157. package/dist/Modal/NordFlow/screens/04-AmountInputScreen.js +165 -0
  158. package/dist/Modal/NordFlow/screens/05-DepositProgressScreen.d.ts +6 -0
  159. package/dist/Modal/NordFlow/screens/05-DepositProgressScreen.js +44 -0
  160. package/dist/Modal/NordFlow/screens/06-DepositSuccessScreen.d.ts +8 -0
  161. package/dist/Modal/NordFlow/screens/06-DepositSuccessScreen.js +119 -0
  162. package/dist/Modal/NordFlow/screens/07-AuthLoadingScreen.d.ts +6 -0
  163. package/dist/Modal/NordFlow/screens/07-AuthLoadingScreen.js +126 -0
  164. package/dist/Modal/NordFlow/screens/07-NordAuthScreen.d.ts +5 -0
  165. package/dist/Modal/NordFlow/screens/07-NordAuthScreen.js +17 -0
  166. package/dist/Modal/NordFlow/screens/08-AuthLoadingScreen.d.ts +6 -0
  167. package/dist/Modal/NordFlow/screens/08-AuthLoadingScreen.js +153 -0
  168. package/dist/Modal/NordFlow/screens/08-FinalSuccessScreen.d.ts +5 -0
  169. package/dist/Modal/NordFlow/screens/08-FinalSuccessScreen.js +36 -0
  170. package/dist/Modal/NordFlow/screens/09-ErrorScreen.d.ts +7 -0
  171. package/dist/Modal/NordFlow/screens/09-ErrorScreen.js +62 -0
  172. package/dist/Modal/NordFlow/screens/09-FinalSuccessScreen.d.ts +5 -0
  173. package/dist/Modal/NordFlow/screens/09-FinalSuccessScreen.js +47 -0
  174. package/dist/Modal/NordFlow/screens/10-ErrorScreen.d.ts +7 -0
  175. package/dist/Modal/NordFlow/screens/10-ErrorScreen.js +62 -0
  176. package/dist/Modal/NordFlow/screens/index.d.ts +9 -0
  177. package/dist/Modal/NordFlow/screens/index.js +9 -0
  178. package/dist/Modal/NordFlow/types.d.ts +108 -0
  179. package/dist/Modal/NordFlow/types.js +32 -0
  180. package/dist/Modal/NordFlow/utils/imageUtils.d.ts +21 -0
  181. package/dist/Modal/NordFlow/utils/imageUtils.js +109 -0
  182. package/dist/Modal/NordFlow/utils/index.d.ts +3 -0
  183. package/dist/Modal/NordFlow/utils/index.js +3 -0
  184. package/dist/Modal/NordFlow/utils/nordUtils.d.ts +40 -0
  185. package/dist/Modal/NordFlow/utils/nordUtils.js +61 -0
  186. package/dist/Modal/NordFlow/utils/persistence.d.ts +24 -0
  187. package/dist/Modal/NordFlow/utils/persistence.js +83 -0
  188. package/dist/Modal/Sidebar/N1Sidebar.js +32 -18
  189. package/dist/Modal/Sidebar/NordTradingView/AccountSummary/AccountSummary.d.ts +1 -0
  190. package/dist/Modal/Sidebar/NordTradingView/AccountSummary/AccountSummary.js +116 -0
  191. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketOverview.d.ts +7 -0
  192. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketOverview.js +86 -0
  193. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketSelector.d.ts +6 -0
  194. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketSelector.js +38 -0
  195. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketStats.d.ts +7 -0
  196. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketStats.js +15 -0
  197. package/dist/Modal/Sidebar/NordTradingView/NordTradingView.d.ts +1 -0
  198. package/dist/Modal/Sidebar/NordTradingView/NordTradingView.js +54 -0
  199. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBook.d.ts +5 -0
  200. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBook.js +197 -0
  201. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookDepthVisualizer.d.ts +10 -0
  202. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookDepthVisualizer.js +61 -0
  203. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookHeader.d.ts +7 -0
  204. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookHeader.js +28 -0
  205. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookTable.d.ts +11 -0
  206. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookTable.js +22 -0
  207. package/dist/Modal/Sidebar/NordTradingView/TradeForm/AmountInput.d.ts +7 -0
  208. package/dist/Modal/Sidebar/NordTradingView/TradeForm/AmountInput.js +19 -0
  209. package/dist/Modal/Sidebar/NordTradingView/TradeForm/BuySellTabs.d.ts +7 -0
  210. package/dist/Modal/Sidebar/NordTradingView/TradeForm/BuySellTabs.js +23 -0
  211. package/dist/Modal/Sidebar/NordTradingView/TradeForm/FillModeSelector.d.ts +7 -0
  212. package/dist/Modal/Sidebar/NordTradingView/TradeForm/FillModeSelector.js +76 -0
  213. package/dist/Modal/Sidebar/NordTradingView/TradeForm/OrderTypeSelector.d.ts +9 -0
  214. package/dist/Modal/Sidebar/NordTradingView/TradeForm/OrderTypeSelector.js +103 -0
  215. package/dist/Modal/Sidebar/NordTradingView/TradeForm/PriceInput.d.ts +7 -0
  216. package/dist/Modal/Sidebar/NordTradingView/TradeForm/PriceInput.js +29 -0
  217. package/dist/Modal/Sidebar/NordTradingView/TradeForm/SubmitButton.d.ts +9 -0
  218. package/dist/Modal/Sidebar/NordTradingView/TradeForm/SubmitButton.js +39 -0
  219. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TotalCalculator.d.ts +7 -0
  220. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TotalCalculator.js +7 -0
  221. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TradeForm.d.ts +8 -0
  222. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TradeForm.js +249 -0
  223. package/dist/Modal/Sidebar/NordTradingView/TradeHistory/TradeHistory.d.ts +5 -0
  224. package/dist/Modal/Sidebar/NordTradingView/TradeHistory/TradeHistory.js +138 -0
  225. package/dist/Modal/Sidebar/NordTradingView/UserBalances/UserBalances.d.ts +1 -0
  226. package/dist/Modal/Sidebar/NordTradingView/UserBalances/UserBalances.js +108 -0
  227. package/dist/Modal/Sidebar/NordTradingView/UserOrders/UserOrders.d.ts +1 -0
  228. package/dist/Modal/Sidebar/NordTradingView/UserOrders/UserOrders.js +177 -0
  229. package/dist/Modal/Sidebar/NordTradingView/UserPositions/UserPositions.d.ts +1 -0
  230. package/dist/Modal/Sidebar/NordTradingView/UserPositions/UserPositions.js +188 -0
  231. package/dist/NordFlow/WalletConnectionFlow.d.ts +9 -0
  232. package/dist/NordFlow/WalletConnectionFlow.js +145 -0
  233. package/dist/NordFlow/components/AnimatedButton.d.ts +14 -0
  234. package/dist/NordFlow/components/AnimatedButton.js +75 -0
  235. package/dist/NordFlow/components/ChainButton.d.ts +7 -0
  236. package/dist/NordFlow/components/ChainButton.js +5 -0
  237. package/dist/NordFlow/components/LoadingSquares.d.ts +1 -0
  238. package/dist/NordFlow/components/LoadingSquares.js +5 -0
  239. package/dist/NordFlow/components/TransactionTable.d.ts +13 -0
  240. package/dist/NordFlow/components/TransactionTable.js +58 -0
  241. package/dist/NordFlow/components/WaitingMessage.d.ts +6 -0
  242. package/dist/NordFlow/components/WaitingMessage.js +6 -0
  243. package/dist/NordFlow/components/index.d.ts +5 -0
  244. package/dist/NordFlow/components/index.js +5 -0
  245. package/dist/NordFlow/constants.d.ts +37 -0
  246. package/dist/NordFlow/constants.js +223 -0
  247. package/dist/NordFlow/hooks/index.d.ts +8 -0
  248. package/dist/NordFlow/hooks/index.js +8 -0
  249. package/dist/NordFlow/hooks/useButtonTyping.d.ts +7 -0
  250. package/dist/NordFlow/hooks/useButtonTyping.js +43 -0
  251. package/dist/NordFlow/hooks/useDepositFlow.d.ts +38 -0
  252. package/dist/NordFlow/hooks/useDepositFlow.js +166 -0
  253. package/dist/NordFlow/hooks/useFlowState.d.ts +32 -0
  254. package/dist/NordFlow/hooks/useFlowState.js +163 -0
  255. package/dist/NordFlow/hooks/useInterruptHandler.d.ts +27 -0
  256. package/dist/NordFlow/hooks/useInterruptHandler.js +101 -0
  257. package/dist/NordFlow/hooks/useNordSession.d.ts +32 -0
  258. package/dist/NordFlow/hooks/useNordSession.js +193 -0
  259. package/dist/NordFlow/hooks/useTableValues.d.ts +2 -0
  260. package/dist/NordFlow/hooks/useTableValues.js +69 -0
  261. package/dist/NordFlow/hooks/useWaitingMessage.d.ts +6 -0
  262. package/dist/NordFlow/hooks/useWaitingMessage.js +89 -0
  263. package/dist/NordFlow/hooks/useWalletConnect.d.ts +30 -0
  264. package/dist/NordFlow/hooks/useWalletConnect.js +132 -0
  265. package/dist/NordFlow/index.d.ts +3 -0
  266. package/dist/NordFlow/index.js +3 -0
  267. package/dist/NordFlow/screens/01-ConnectWalletScreen.d.ts +6 -0
  268. package/dist/NordFlow/screens/01-ConnectWalletScreen.js +17 -0
  269. package/dist/NordFlow/screens/02-EvmWalletAuthScreen.d.ts +6 -0
  270. package/dist/NordFlow/screens/02-EvmWalletAuthScreen.js +47 -0
  271. package/dist/NordFlow/screens/03-ChainSelectionScreen.d.ts +7 -0
  272. package/dist/NordFlow/screens/03-ChainSelectionScreen.js +7 -0
  273. package/dist/NordFlow/screens/04-AmountInputScreen.d.ts +8 -0
  274. package/dist/NordFlow/screens/04-AmountInputScreen.js +20 -0
  275. package/dist/NordFlow/screens/05-DepositProgressScreen.d.ts +7 -0
  276. package/dist/NordFlow/screens/05-DepositProgressScreen.js +6 -0
  277. package/dist/NordFlow/screens/06-DepositSuccessScreen.d.ts +8 -0
  278. package/dist/NordFlow/screens/06-DepositSuccessScreen.js +99 -0
  279. package/dist/NordFlow/screens/07-NordAuthScreen.d.ts +7 -0
  280. package/dist/NordFlow/screens/07-NordAuthScreen.js +14 -0
  281. package/dist/NordFlow/screens/08-AuthLoadingScreen.d.ts +6 -0
  282. package/dist/NordFlow/screens/08-AuthLoadingScreen.js +20 -0
  283. package/dist/NordFlow/screens/09-FinalSuccessScreen.d.ts +5 -0
  284. package/dist/NordFlow/screens/09-FinalSuccessScreen.js +18 -0
  285. package/dist/NordFlow/screens/10-ErrorScreen.d.ts +7 -0
  286. package/dist/NordFlow/screens/10-ErrorScreen.js +13 -0
  287. package/dist/NordFlow/screens/index.d.ts +10 -0
  288. package/dist/NordFlow/screens/index.js +10 -0
  289. package/dist/NordFlow/types.d.ts +105 -0
  290. package/dist/NordFlow/types.js +34 -0
  291. package/dist/NordFlow/utils/persistence.d.ts +24 -0
  292. package/dist/NordFlow/utils/persistence.js +83 -0
  293. package/dist/Provider/LazyWalletProvider.js +75 -42
  294. package/dist/Provider/N1WalletProvider.d.ts +1 -1
  295. package/dist/Provider/N1WalletProvider.js +61 -43
  296. package/dist/Provider/types.d.ts +61 -0
  297. package/dist/WalletConnectionFlow/WalletConnectionFlow.d.ts +9 -0
  298. package/dist/WalletConnectionFlow/WalletConnectionFlow.js +145 -0
  299. package/dist/WalletConnectionFlow/components/AnimatedButton.d.ts +14 -0
  300. package/dist/WalletConnectionFlow/components/AnimatedButton.js +75 -0
  301. package/dist/WalletConnectionFlow/components/ChainButton.d.ts +7 -0
  302. package/dist/WalletConnectionFlow/components/ChainButton.js +5 -0
  303. package/dist/WalletConnectionFlow/components/LoadingSquares.d.ts +1 -0
  304. package/dist/WalletConnectionFlow/components/LoadingSquares.js +5 -0
  305. package/dist/WalletConnectionFlow/components/TransactionTable.d.ts +13 -0
  306. package/dist/WalletConnectionFlow/components/TransactionTable.js +58 -0
  307. package/dist/WalletConnectionFlow/components/WaitingMessage.d.ts +6 -0
  308. package/dist/WalletConnectionFlow/components/WaitingMessage.js +6 -0
  309. package/dist/WalletConnectionFlow/components/index.d.ts +5 -0
  310. package/dist/WalletConnectionFlow/components/index.js +5 -0
  311. package/dist/WalletConnectionFlow/constants.d.ts +37 -0
  312. package/dist/WalletConnectionFlow/constants.js +223 -0
  313. package/dist/WalletConnectionFlow/hooks/index.d.ts +8 -0
  314. package/dist/WalletConnectionFlow/hooks/index.js +8 -0
  315. package/dist/WalletConnectionFlow/hooks/useButtonTyping.d.ts +7 -0
  316. package/dist/WalletConnectionFlow/hooks/useButtonTyping.js +43 -0
  317. package/dist/WalletConnectionFlow/hooks/useDepositFlow.d.ts +38 -0
  318. package/dist/WalletConnectionFlow/hooks/useDepositFlow.js +166 -0
  319. package/dist/WalletConnectionFlow/hooks/useFlowState.d.ts +32 -0
  320. package/dist/WalletConnectionFlow/hooks/useFlowState.js +163 -0
  321. package/dist/WalletConnectionFlow/hooks/useInterruptHandler.d.ts +27 -0
  322. package/dist/WalletConnectionFlow/hooks/useInterruptHandler.js +101 -0
  323. package/dist/WalletConnectionFlow/hooks/useNordSession.d.ts +32 -0
  324. package/dist/WalletConnectionFlow/hooks/useNordSession.js +193 -0
  325. package/dist/WalletConnectionFlow/hooks/useTableValues.d.ts +2 -0
  326. package/dist/WalletConnectionFlow/hooks/useTableValues.js +69 -0
  327. package/dist/WalletConnectionFlow/hooks/useWaitingMessage.d.ts +6 -0
  328. package/dist/WalletConnectionFlow/hooks/useWaitingMessage.js +89 -0
  329. package/dist/WalletConnectionFlow/hooks/useWalletConnect.d.ts +30 -0
  330. package/dist/WalletConnectionFlow/hooks/useWalletConnect.js +132 -0
  331. package/dist/WalletConnectionFlow/index.d.ts +3 -0
  332. package/dist/WalletConnectionFlow/index.js +3 -0
  333. package/dist/WalletConnectionFlow/screens/01-ConnectWalletScreen.d.ts +6 -0
  334. package/dist/WalletConnectionFlow/screens/01-ConnectWalletScreen.js +17 -0
  335. package/dist/WalletConnectionFlow/screens/02-EvmWalletAuthScreen.d.ts +6 -0
  336. package/dist/WalletConnectionFlow/screens/02-EvmWalletAuthScreen.js +47 -0
  337. package/dist/WalletConnectionFlow/screens/03-ChainSelectionScreen.d.ts +7 -0
  338. package/dist/WalletConnectionFlow/screens/03-ChainSelectionScreen.js +7 -0
  339. package/dist/WalletConnectionFlow/screens/04-AmountInputScreen.d.ts +8 -0
  340. package/dist/WalletConnectionFlow/screens/04-AmountInputScreen.js +20 -0
  341. package/dist/WalletConnectionFlow/screens/05-DepositProgressScreen.d.ts +7 -0
  342. package/dist/WalletConnectionFlow/screens/05-DepositProgressScreen.js +6 -0
  343. package/dist/WalletConnectionFlow/screens/06-DepositSuccessScreen.d.ts +8 -0
  344. package/dist/WalletConnectionFlow/screens/06-DepositSuccessScreen.js +99 -0
  345. package/dist/WalletConnectionFlow/screens/07-NordAuthScreen.d.ts +7 -0
  346. package/dist/WalletConnectionFlow/screens/07-NordAuthScreen.js +14 -0
  347. package/dist/WalletConnectionFlow/screens/08-AuthLoadingScreen.d.ts +6 -0
  348. package/dist/WalletConnectionFlow/screens/08-AuthLoadingScreen.js +20 -0
  349. package/dist/WalletConnectionFlow/screens/09-FinalSuccessScreen.d.ts +5 -0
  350. package/dist/WalletConnectionFlow/screens/09-FinalSuccessScreen.js +18 -0
  351. package/dist/WalletConnectionFlow/screens/10-ErrorScreen.d.ts +7 -0
  352. package/dist/WalletConnectionFlow/screens/10-ErrorScreen.js +13 -0
  353. package/dist/WalletConnectionFlow/screens/AmountInputScreen.d.ts +8 -0
  354. package/dist/WalletConnectionFlow/screens/AmountInputScreen.js +20 -0
  355. package/dist/WalletConnectionFlow/screens/AppsTableScreen.d.ts +8 -0
  356. package/dist/WalletConnectionFlow/screens/AppsTableScreen.js +28 -0
  357. package/dist/WalletConnectionFlow/screens/AuthLoadingScreen.d.ts +6 -0
  358. package/dist/WalletConnectionFlow/screens/AuthLoadingScreen.js +20 -0
  359. package/dist/WalletConnectionFlow/screens/ChainSelectionScreen.d.ts +7 -0
  360. package/dist/WalletConnectionFlow/screens/ChainSelectionScreen.js +7 -0
  361. package/dist/WalletConnectionFlow/screens/ConnectWalletScreen.d.ts +6 -0
  362. package/dist/WalletConnectionFlow/screens/ConnectWalletScreen.js +17 -0
  363. package/dist/WalletConnectionFlow/screens/DepositProgressScreen.d.ts +7 -0
  364. package/dist/WalletConnectionFlow/screens/DepositProgressScreen.js +6 -0
  365. package/dist/WalletConnectionFlow/screens/DepositSuccessScreen.d.ts +8 -0
  366. package/dist/WalletConnectionFlow/screens/DepositSuccessScreen.js +99 -0
  367. package/dist/WalletConnectionFlow/screens/ErrorScreen.d.ts +7 -0
  368. package/dist/WalletConnectionFlow/screens/ErrorScreen.js +13 -0
  369. package/dist/WalletConnectionFlow/screens/EthToSolAuthScreen.d.ts +6 -0
  370. package/dist/WalletConnectionFlow/screens/EthToSolAuthScreen.js +47 -0
  371. package/dist/WalletConnectionFlow/screens/EvmWalletAuthScreen.d.ts +6 -0
  372. package/dist/WalletConnectionFlow/screens/EvmWalletAuthScreen.js +47 -0
  373. package/dist/WalletConnectionFlow/screens/FinalSuccessScreen.d.ts +5 -0
  374. package/dist/WalletConnectionFlow/screens/FinalSuccessScreen.js +18 -0
  375. package/dist/WalletConnectionFlow/screens/NordAuthScreen.d.ts +7 -0
  376. package/dist/WalletConnectionFlow/screens/NordAuthScreen.js +14 -0
  377. package/dist/WalletConnectionFlow/screens/SigningScreen.d.ts +6 -0
  378. package/dist/WalletConnectionFlow/screens/SigningScreen.js +6 -0
  379. package/dist/WalletConnectionFlow/screens/index.d.ts +10 -0
  380. package/dist/WalletConnectionFlow/screens/index.js +10 -0
  381. package/dist/WalletConnectionFlow/types.d.ts +105 -0
  382. package/dist/WalletConnectionFlow/types.js +34 -0
  383. package/dist/WalletConnectionFlow/utils/persistence.d.ts +24 -0
  384. package/dist/WalletConnectionFlow/utils/persistence.js +83 -0
  385. package/dist/components/WalletDeposit/components/TransactionTable.d.ts +9 -2
  386. package/dist/components/WalletDeposit/components/TransactionTable.js +55 -5
  387. package/dist/components/WalletDeposit/types.d.ts +5 -0
  388. package/dist/config/dynamic.d.ts +20 -0
  389. package/dist/config/dynamic.js +47 -0
  390. package/dist/config/solana.d.ts +25 -0
  391. package/dist/config/solana.js +41 -0
  392. package/dist/errors/types.d.ts +5 -1
  393. package/dist/errors/types.js +12 -0
  394. package/dist/hooks/useSolanaSession.d.ts +17 -0
  395. package/dist/hooks/useSolanaSession.js +180 -0
  396. package/dist/index.d.ts +1 -2
  397. package/dist/index.js +1 -2
  398. package/dist/main.css +1 -1
  399. package/dist/utils/solana-session.d.ts +84 -0
  400. package/dist/utils/solana-session.js +230 -0
  401. package/package.json +14 -11
@@ -0,0 +1,153 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
12
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
38
+ import { useEffect, useState } from 'react';
39
+ import { LoadingSquares } from '../components/LoadingSquares';
40
+ import { useN1WalletContext, useN1WalletInternalContext } from '../../../Provider/hooks';
41
+ import { N1SessionMode } from '../../../Provider/types';
42
+ import { logger } from '../../../utils/logger';
43
+ import { isNordConfigured } from '../utils/nordUtils';
44
+ import { useNordInstance } from '../hooks/useNordInstance';
45
+ export function AuthLoadingScreen(_a) {
46
+ var _this = this;
47
+ var _b = _a.isCreatingAccount, isCreatingAccount = _b === void 0 ? false : _b, onAuthComplete = _a.onAuthComplete;
48
+ var sessionMode = useN1WalletInternalContext().sessionMode;
49
+ var _c = useN1WalletContext(), address = _c.address, nord = _c.nord;
50
+ var getNordUser = useNordInstance().getNordUser;
51
+ var _d = useState(getNordUser()), nordUser = _d[0], setNordUser = _d[1];
52
+ var _e = useState('loading'), authStatus = _e[0], setAuthStatus = _e[1];
53
+ var _f = useState(null), errorMessage = _f[0], setErrorMessage = _f[1];
54
+ // Update nordUser when dependencies change
55
+ useEffect(function () {
56
+ setNordUser(getNordUser());
57
+ }, [getNordUser]);
58
+ useEffect(function () {
59
+ var performAuth = function () { return __awaiter(_this, void 0, void 0, function () {
60
+ var error_1, error_2;
61
+ return __generator(this, function (_a) {
62
+ switch (_a.label) {
63
+ case 0:
64
+ _a.trys.push([0, 9, , 10]);
65
+ logger.debug('Starting authentication process', {
66
+ isCreatingAccount: isCreatingAccount,
67
+ sessionMode: sessionMode,
68
+ address: address,
69
+ hasNord: !!nord,
70
+ isNordConfigured: nord ? isNordConfigured(nord) : false
71
+ });
72
+ if (!(nord && isNordConfigured(nord))) return [3 /*break*/, 7];
73
+ _a.label = 1;
74
+ case 1:
75
+ _a.trys.push([1, 6, , 7]);
76
+ if (!isCreatingAccount) return [3 /*break*/, 3];
77
+ // Create a new account
78
+ logger.debug('Creating Nord account using Nord-TS');
79
+ // Simulate account creation with a delay
80
+ return [4 /*yield*/, new Promise(function (resolve) { return setTimeout(resolve, 2000); })];
81
+ case 2:
82
+ // Simulate account creation with a delay
83
+ _a.sent();
84
+ // Set success status
85
+ setAuthStatus('success');
86
+ if (onAuthComplete) {
87
+ logger.debug('Account creation completed, calling onAuthComplete callback');
88
+ onAuthComplete(true);
89
+ }
90
+ return [2 /*return*/];
91
+ case 3:
92
+ // Log in to existing account
93
+ logger.debug('Logging in to Nord account using Nord-TS');
94
+ // Simulate login with a delay
95
+ return [4 /*yield*/, new Promise(function (resolve) { return setTimeout(resolve, 2000); })];
96
+ case 4:
97
+ // Simulate login with a delay
98
+ _a.sent();
99
+ // Set success status
100
+ setAuthStatus('success');
101
+ if (onAuthComplete) {
102
+ logger.debug('Login completed, calling onAuthComplete callback');
103
+ onAuthComplete(true);
104
+ }
105
+ return [2 /*return*/];
106
+ case 5: return [3 /*break*/, 7];
107
+ case 6:
108
+ error_1 = _a.sent();
109
+ logger.error('Nord-TS authentication failed, falling back to default method', error_1);
110
+ setErrorMessage('Nord authentication failed, trying alternative method...');
111
+ return [3 /*break*/, 7];
112
+ case 7:
113
+ // Fallback to default authentication method
114
+ logger.debug('Using default authentication method');
115
+ // In a real implementation, we would perform the actual authentication here
116
+ // For now, we'll simulate it with a timeout
117
+ return [4 /*yield*/, new Promise(function (resolve) { return setTimeout(resolve, 3000); })];
118
+ case 8:
119
+ // In a real implementation, we would perform the actual authentication here
120
+ // For now, we'll simulate it with a timeout
121
+ _a.sent();
122
+ // Set success status
123
+ setAuthStatus('success');
124
+ if (onAuthComplete) {
125
+ logger.debug('Auth completed, calling onAuthComplete callback');
126
+ onAuthComplete(true); // Authentication was successful
127
+ }
128
+ return [3 /*break*/, 10];
129
+ case 9:
130
+ error_2 = _a.sent();
131
+ logger.error('Authentication failed', error_2);
132
+ setAuthStatus('error');
133
+ setErrorMessage(error_2 instanceof Error ? error_2.message : 'Authentication failed');
134
+ if (onAuthComplete) {
135
+ onAuthComplete(false); // Authentication failed
136
+ }
137
+ return [3 /*break*/, 10];
138
+ case 10: return [2 /*return*/];
139
+ }
140
+ });
141
+ }); };
142
+ performAuth();
143
+ }, [onAuthComplete, isCreatingAccount, sessionMode, address, nord, nordUser]);
144
+ return (_jsxs("div", { className: "flex flex-col items-center justify-center py-12 space-y-6", children: [authStatus === 'loading' && _jsx(LoadingSquares, {}), authStatus === 'success' && (_jsx("div", { className: "text-green-500 text-4xl mb-4", children: "\u2713" })), authStatus === 'error' && (_jsx("div", { className: "text-red-500 text-4xl mb-4", children: "\u26A0\uFE0F" })), _jsxs("div", { className: "space-y-2 text-center w-[300px]", children: [_jsxs("h3", { className: "text-xl text-gray-800 dark:text-white font-semibold", children: [authStatus === 'loading' && (isCreatingAccount ? 'Creating Account' : 'Authenticating'), authStatus === 'success' && (isCreatingAccount ? 'Account Created' : 'Authentication Successful'), authStatus === 'error' && 'Authentication Failed'] }), _jsxs("p", { className: "text-sm text-gray-600 dark:text-neutral-400", children: [authStatus === 'loading' && (isCreatingAccount
145
+ ? sessionMode === N1SessionMode.Nord
146
+ ? 'Please wait while we create your Nord account'
147
+ : 'Please wait while we create your account'
148
+ : sessionMode === N1SessionMode.Nord
149
+ ? 'Please wait while we log you in to your Nord account'
150
+ : 'Please wait while we log you in to your account'), authStatus === 'success' && (isCreatingAccount
151
+ ? 'Your account has been created successfully'
152
+ : 'You have been logged in successfully'), authStatus === 'error' && (errorMessage || 'There was an error during authentication. Please try again.')] })] })] }));
153
+ }
@@ -0,0 +1,5 @@
1
+ interface FinalSuccessScreenProps {
2
+ onDone: () => void;
3
+ }
4
+ export declare function FinalSuccessScreen({ onDone, }: FinalSuccessScreenProps): import("react/jsx-runtime").JSX.Element;
5
+ export {};
@@ -0,0 +1,36 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { ANIMATION_EASE } from '../constants';
4
+ import { useN1WalletContext, useN1WalletInternalContext } from '../../../Provider/hooks';
5
+ import { N1SessionMode } from '../../../Provider/types';
6
+ import { isNordConfigured } from '../utils/nordUtils';
7
+ export function FinalSuccessScreen(_a) {
8
+ var onDone = _a.onDone;
9
+ var _b = useState(false), isHovered = _b[0], setIsHovered = _b[1];
10
+ var _c = useN1WalletContext(), nord = _c.nord, address = _c.address;
11
+ var _d = useN1WalletInternalContext(), sessionMode = _d.sessionMode, setIsConnected = _d.setIsConnected;
12
+ // Add a minimum viewing time before enabling the button
13
+ useEffect(function () {
14
+ setIsConnected(true);
15
+ }, []);
16
+ // Get the appropriate title and message based on Nord configuration
17
+ var getTitle = function () {
18
+ if (nord && isNordConfigured(nord)) {
19
+ return 'Nord Authentication Successful!';
20
+ }
21
+ else {
22
+ return 'Authentication Successful!';
23
+ }
24
+ };
25
+ var getMessage = function () {
26
+ if (sessionMode === N1SessionMode.Nord) {
27
+ return 'Your wallet has been successfully connected to Nord';
28
+ }
29
+ else {
30
+ return 'Your wallet has been successfully connected';
31
+ }
32
+ };
33
+ return (_jsx("div", { className: "overflow-hidden relative", children: _jsxs("div", { className: "space-y-8", children: [_jsxs("div", { className: "flex flex-col items-center justify-center pt-4", children: [_jsx("div", { className: "mb-6", children: _jsx("div", { className: "w-20 h-20 rounded-full bg-green-100 dark:bg-green-900/30 flex items-center justify-center", children: _jsx("svg", { className: "w-10 h-10 text-green-500 dark:text-green-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M5 13l4 4L19 7" }) }) }) }), _jsx("h2", { className: "text-2xl text-gray-800 dark:text-white font-semibold mb-2 text-center", children: getTitle() }), _jsx("p", { className: "text-lg text-gray-700 dark:text-neutral-300 text-center", children: getMessage() }), address && (_jsxs("p", { className: "text-sm text-gray-500 dark:text-neutral-400 text-center mt-2", children: ["Wallet: ", address.substring(0, 6), "...", address.substring(address.length - 4)] }))] }), _jsx("button", { onClick: onDone, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); }, className: "\n group relative w-full overflow-hidden rounded-md border-2 bg-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-pointer border-gray-200 dark:border-gray-800 hover:border-gray-400 dark:hover:border-white/60\n "), style: {
34
+ transform: isHovered ? 'scale(0.99)' : 'scale(1)',
35
+ }, children: _jsx("span", { className: "\n text-base font-medium tracking-wide transition-colors duration-300 ".concat(ANIMATION_EASE, "\n text-gray-700 dark:text-gray-300 group-hover:text-gray-900 dark:group-hover:text-white\n "), children: "Open App" }) })] }) }));
36
+ }
@@ -0,0 +1,7 @@
1
+ interface ErrorScreenProps {
2
+ onRetry: () => void;
3
+ onCancel: () => void;
4
+ error: Error | null;
5
+ }
6
+ export declare function ErrorScreen({ onRetry, onCancel, error, }: ErrorScreenProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,62 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState, useEffect } from 'react';
3
+ import { ANIMATION_EASE } from '../constants';
4
+ import { useN1WalletContext } from '../../../Provider/hooks';
5
+ import { isNordConfigured } from '../utils/nordUtils';
6
+ export function ErrorScreen(_a) {
7
+ var onRetry = _a.onRetry, onCancel = _a.onCancel, error = _a.error;
8
+ var _b = useState(null), isHovered = _b[0], setIsHovered = _b[1];
9
+ var nord = useN1WalletContext().nord;
10
+ var _c = useState(false), isNordError = _c[0], setIsNordError = _c[1];
11
+ // Check if the error is related to Nord
12
+ useEffect(function () {
13
+ if (error && error.message && (error.message.includes('Nord') ||
14
+ error.message.includes('nord') ||
15
+ (error.name && error.name.includes('Nord')))) {
16
+ setIsNordError(true);
17
+ }
18
+ else {
19
+ setIsNordError(false);
20
+ }
21
+ }, [error]);
22
+ // Get a user-friendly error message
23
+ var getErrorMessage = function () {
24
+ if (!error)
25
+ return 'An unexpected error occurred';
26
+ // Check for specific Nord-related errors
27
+ if (isNordError) {
28
+ if (error.message.includes('connection') || error.message.includes('network')) {
29
+ return 'Failed to connect to Nord. Please check your network connection and try again.';
30
+ }
31
+ if (error.message.includes('authentication') || error.message.includes('auth')) {
32
+ return 'Authentication with Nord failed. Please try again.';
33
+ }
34
+ if (error.message.includes('deposit') || error.message.includes('transaction')) {
35
+ return 'Failed to process your deposit. Please try again.';
36
+ }
37
+ return "Nord error: ".concat(error.message);
38
+ }
39
+ // Generic wallet errors
40
+ if (error.message.includes('wallet') || error.message.includes('Wallet')) {
41
+ return 'There was an issue with your wallet connection. Please try again.';
42
+ }
43
+ // Default error message
44
+ return error.message;
45
+ };
46
+ var errorMessage = getErrorMessage();
47
+ // Get a suggestion based on the error
48
+ var getSuggestion = function () {
49
+ if (isNordError && nord && !isNordConfigured(nord)) {
50
+ return 'Nord is not properly configured. Please check your settings.';
51
+ }
52
+ if (isNordError) {
53
+ return 'You can try again or contact support if the issue persists.';
54
+ }
55
+ return 'Please try again or try a different wallet.';
56
+ };
57
+ return (_jsx("div", { className: "overflow-hidden relative", children: _jsxs("div", { className: "space-y-6", children: [_jsxs("div", { className: "flex flex-col items-center justify-center py-4", children: [_jsx("div", { className: "mb-6", children: _jsx("div", { className: "w-20 h-20 rounded-full bg-red-100 dark:bg-red-900/30 flex items-center justify-center", children: _jsx("svg", { className: "w-10 h-10 text-red-500 dark:text-red-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z" }) }) }) }), _jsx("h2", { className: "text-xl text-gray-800 dark:text-white font-semibold mb-2 text-center", children: isNordError ? 'Nord Error' : 'Something went wrong' }), _jsx("p", { className: "text-sm text-gray-600 dark:text-neutral-400 text-center mb-2 max-w-xs", children: errorMessage }), _jsx("p", { className: "text-xs text-gray-500 dark:text-neutral-500 text-center mb-6 max-w-xs", children: getSuggestion() })] }), _jsxs("div", { className: "space-y-3", children: [_jsx("button", { onClick: onRetry, onMouseEnter: function () { return setIsHovered('retry'); }, onMouseLeave: function () { return setIsHovered(null); }, className: "\n group relative w-full overflow-hidden rounded-md border-2 bg-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-pointer border-gray-200 dark:border-gray-800 hover:border-gray-400 dark:hover:border-white/60\n "), style: {
58
+ transform: isHovered === 'retry' ? 'scale(0.99)' : 'scale(1)',
59
+ }, children: _jsx("span", { className: "\n text-base font-medium tracking-wide transition-colors duration-300 ".concat(ANIMATION_EASE, "\n text-gray-700 dark:text-gray-300 group-hover:text-gray-900 dark:group-hover:text-white\n "), children: "Try Again" }) }), _jsx("button", { onClick: onCancel, onMouseEnter: function () { return setIsHovered('cancel'); }, onMouseLeave: function () { return setIsHovered(null); }, className: "\n group relative w-full overflow-hidden rounded-md border-2 border-gray-200 dark:border-gray-800 bg-white dark:bg-neutral-900 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-pointer hover:bg-gray-50 dark:hover:bg-neutral-950\n "), style: {
60
+ transform: isHovered === 'cancel' ? 'scale(0.99)' : 'scale(1)',
61
+ }, children: _jsx("span", { className: "\n text-base font-medium tracking-wide transition-colors duration-300 ".concat(ANIMATION_EASE, "\n text-gray-500 dark:text-gray-400 group-hover:text-gray-700 dark:group-hover:text-gray-300\n "), children: "Cancel" }) })] })] }) }));
62
+ }
@@ -0,0 +1,5 @@
1
+ interface FinalSuccessScreenProps {
2
+ onDone: () => void;
3
+ }
4
+ export declare function FinalSuccessScreen({ onDone, }: FinalSuccessScreenProps): import("react/jsx-runtime").JSX.Element;
5
+ export {};
@@ -0,0 +1,47 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { ANIMATION_EASE } from '../constants';
4
+ import { useN1WalletContext, useN1WalletInternalContext } from '../../../Provider/hooks';
5
+ import { N1SessionMode } from '../../../Provider/types';
6
+ import { isNordConfigured } from '../utils/nordUtils';
7
+ import { useNordInstance } from '../hooks/useNordInstance';
8
+ export function FinalSuccessScreen(_a) {
9
+ var onDone = _a.onDone;
10
+ var _b = useState(false), isHovered = _b[0], setIsHovered = _b[1];
11
+ var _c = useState(false), isButtonEnabled = _c[0], setIsButtonEnabled = _c[1];
12
+ var _d = useN1WalletContext(), nord = _d.nord, address = _d.address;
13
+ var sessionMode = useN1WalletInternalContext().sessionMode;
14
+ var getNordUser = useNordInstance().getNordUser;
15
+ var _e = useState(getNordUser()), nordUser = _e[0], setNordUser = _e[1];
16
+ // Update nordUser when dependencies change
17
+ useEffect(function () {
18
+ setNordUser(getNordUser());
19
+ }, [getNordUser]);
20
+ // Add a minimum viewing time before enabling the button
21
+ useEffect(function () {
22
+ var timer = setTimeout(function () {
23
+ setIsButtonEnabled(true);
24
+ }, 3000); // 3 seconds minimum viewing time
25
+ return function () { return clearTimeout(timer); };
26
+ }, []);
27
+ // Get the appropriate title and message based on Nord configuration
28
+ var getTitle = function () {
29
+ if (nord && isNordConfigured(nord)) {
30
+ return 'Nord Authentication Successful!';
31
+ }
32
+ else {
33
+ return 'Authentication Successful!';
34
+ }
35
+ };
36
+ var getMessage = function () {
37
+ if (sessionMode === N1SessionMode.Nord) {
38
+ return 'Your wallet has been successfully connected to Nord';
39
+ }
40
+ else {
41
+ return 'Your wallet has been successfully connected';
42
+ }
43
+ };
44
+ return (_jsx("div", { className: "overflow-hidden relative", children: _jsxs("div", { className: "space-y-8", children: [_jsxs("div", { className: "flex flex-col items-center justify-center pt-4", children: [_jsx("div", { className: "mb-6", children: _jsx("div", { className: "w-20 h-20 rounded-full bg-green-100 dark:bg-green-900/30 flex items-center justify-center", children: _jsx("svg", { className: "w-10 h-10 text-green-500 dark:text-green-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M5 13l4 4L19 7" }) }) }) }), _jsx("h2", { className: "text-2xl text-gray-800 dark:text-white font-semibold mb-2 text-center", children: getTitle() }), _jsx("p", { className: "text-lg text-gray-700 dark:text-neutral-300 text-center", children: getMessage() }), address && (_jsxs("p", { className: "text-sm text-gray-500 dark:text-neutral-400 text-center mt-2", children: ["Wallet: ", address.substring(0, 6), "...", address.substring(address.length - 4)] }))] }), _jsx("button", { onClick: isButtonEnabled ? onDone : undefined, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); }, className: "\n group relative w-full overflow-hidden rounded-md border-2 bg-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-pointer border-gray-200 dark:border-gray-800 hover:border-gray-400 dark:hover:border-white/60\n ").concat(!isButtonEnabled ? 'opacity-50 cursor-not-allowed' : '', "\n "), style: {
45
+ transform: isHovered && isButtonEnabled ? 'scale(0.99)' : 'scale(1)',
46
+ }, disabled: !isButtonEnabled, children: _jsx("span", { className: "\n text-base font-medium tracking-wide transition-colors duration-300 ".concat(ANIMATION_EASE, "\n text-gray-700 dark:text-gray-300 group-hover:text-gray-900 dark:group-hover:text-white\n "), children: isButtonEnabled ? 'Open App' : 'Please wait...' }) })] }) }));
47
+ }
@@ -0,0 +1,7 @@
1
+ interface ErrorScreenProps {
2
+ onRetry: () => void;
3
+ onCancel: () => void;
4
+ error: Error | null;
5
+ }
6
+ export declare function ErrorScreen({ onRetry, onCancel, error, }: ErrorScreenProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,62 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState, useEffect } from 'react';
3
+ import { ANIMATION_EASE } from '../constants';
4
+ import { useN1WalletContext } from '../../../Provider/hooks';
5
+ import { isNordConfigured } from '../utils/nordUtils';
6
+ export function ErrorScreen(_a) {
7
+ var onRetry = _a.onRetry, onCancel = _a.onCancel, error = _a.error;
8
+ var _b = useState(null), isHovered = _b[0], setIsHovered = _b[1];
9
+ var nord = useN1WalletContext().nord;
10
+ var _c = useState(false), isNordError = _c[0], setIsNordError = _c[1];
11
+ // Check if the error is related to Nord
12
+ useEffect(function () {
13
+ if (error && error.message && (error.message.includes('Nord') ||
14
+ error.message.includes('nord') ||
15
+ (error.name && error.name.includes('Nord')))) {
16
+ setIsNordError(true);
17
+ }
18
+ else {
19
+ setIsNordError(false);
20
+ }
21
+ }, [error]);
22
+ // Get a user-friendly error message
23
+ var getErrorMessage = function () {
24
+ if (!error)
25
+ return 'An unexpected error occurred';
26
+ // Check for specific Nord-related errors
27
+ if (isNordError) {
28
+ if (error.message.includes('connection') || error.message.includes('network')) {
29
+ return 'Failed to connect to Nord. Please check your network connection and try again.';
30
+ }
31
+ if (error.message.includes('authentication') || error.message.includes('auth')) {
32
+ return 'Authentication with Nord failed. Please try again.';
33
+ }
34
+ if (error.message.includes('deposit') || error.message.includes('transaction')) {
35
+ return 'Failed to process your deposit. Please try again.';
36
+ }
37
+ return "Nord error: ".concat(error.message);
38
+ }
39
+ // Generic wallet errors
40
+ if (error.message.includes('wallet') || error.message.includes('Wallet')) {
41
+ return 'There was an issue with your wallet connection. Please try again.';
42
+ }
43
+ // Default error message
44
+ return error.message;
45
+ };
46
+ var errorMessage = getErrorMessage();
47
+ // Get a suggestion based on the error
48
+ var getSuggestion = function () {
49
+ if (isNordError && nord && !isNordConfigured(nord)) {
50
+ return 'Nord is not properly configured. Please check your settings.';
51
+ }
52
+ if (isNordError) {
53
+ return 'You can try again or contact support if the issue persists.';
54
+ }
55
+ return 'Please try again or try a different wallet.';
56
+ };
57
+ return (_jsx("div", { className: "overflow-hidden relative", children: _jsxs("div", { className: "space-y-6", children: [_jsxs("div", { className: "flex flex-col items-center justify-center py-4", children: [_jsx("div", { className: "mb-6", children: _jsx("div", { className: "w-20 h-20 rounded-full bg-red-100 dark:bg-red-900/30 flex items-center justify-center", children: _jsx("svg", { className: "w-10 h-10 text-red-500 dark:text-red-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z" }) }) }) }), _jsx("h2", { className: "text-xl text-gray-800 dark:text-white font-semibold mb-2 text-center", children: isNordError ? 'Nord Error' : 'Something went wrong' }), _jsx("p", { className: "text-sm text-gray-600 dark:text-neutral-400 text-center mb-2 max-w-xs", children: errorMessage }), _jsx("p", { className: "text-xs text-gray-500 dark:text-neutral-500 text-center mb-6 max-w-xs", children: getSuggestion() })] }), _jsxs("div", { className: "space-y-3", children: [_jsx("button", { onClick: onRetry, onMouseEnter: function () { return setIsHovered('retry'); }, onMouseLeave: function () { return setIsHovered(null); }, className: "\n group relative w-full overflow-hidden rounded-md border-2 bg-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-pointer border-gray-200 dark:border-gray-800 hover:border-gray-400 dark:hover:border-white/60\n "), style: {
58
+ transform: isHovered === 'retry' ? 'scale(0.99)' : 'scale(1)',
59
+ }, children: _jsx("span", { className: "\n text-base font-medium tracking-wide transition-colors duration-300 ".concat(ANIMATION_EASE, "\n text-gray-700 dark:text-gray-300 group-hover:text-gray-900 dark:group-hover:text-white\n "), children: "Try Again" }) }), _jsx("button", { onClick: onCancel, onMouseEnter: function () { return setIsHovered('cancel'); }, onMouseLeave: function () { return setIsHovered(null); }, className: "\n group relative w-full overflow-hidden rounded-md border-2 border-gray-200 dark:border-gray-800 bg-white dark:bg-neutral-900 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-pointer hover:bg-gray-50 dark:hover:bg-neutral-950\n "), style: {
60
+ transform: isHovered === 'cancel' ? 'scale(0.99)' : 'scale(1)',
61
+ }, children: _jsx("span", { className: "\n text-base font-medium tracking-wide transition-colors duration-300 ".concat(ANIMATION_EASE, "\n text-gray-500 dark:text-gray-400 group-hover:text-gray-700 dark:group-hover:text-gray-300\n "), children: "Cancel" }) })] })] }) }));
62
+ }
@@ -0,0 +1,9 @@
1
+ export * from './01-ConnectWalletScreen';
2
+ export * from './02-EvmWalletAuthScreen';
3
+ export * from './03-ChainSelectionScreen';
4
+ export * from './04-AmountInputScreen';
5
+ export * from './05-DepositProgressScreen';
6
+ export * from './06-DepositSuccessScreen';
7
+ export * from './07-AuthLoadingScreen';
8
+ export * from './08-FinalSuccessScreen';
9
+ export * from './09-ErrorScreen';
@@ -0,0 +1,9 @@
1
+ export * from './01-ConnectWalletScreen';
2
+ export * from './02-EvmWalletAuthScreen';
3
+ export * from './03-ChainSelectionScreen';
4
+ export * from './04-AmountInputScreen';
5
+ export * from './05-DepositProgressScreen';
6
+ export * from './06-DepositSuccessScreen';
7
+ export * from './07-AuthLoadingScreen';
8
+ export * from './08-FinalSuccessScreen';
9
+ export * from './09-ErrorScreen';
@@ -0,0 +1,108 @@
1
+ /**
2
+ * Types for the wallet connection flow state machine
3
+ */
4
+ /**
5
+ * Enum representing all possible states in the wallet connection flow
6
+ */
7
+ export declare enum FlowState {
8
+ IDLE = "IDLE",
9
+ CONNECTING_WALLET = "CONNECTING_WALLET",
10
+ ETH_TO_SOL_AUTH = "ETH_TO_SOL_AUTH",
11
+ CHAIN_SELECTION = "CHAIN_SELECTION",
12
+ AMOUNT_INPUT = "AMOUNT_INPUT",
13
+ DEPOSIT_PROGRESS = "DEPOSIT_PROGRESS",
14
+ DEPOSIT_SUCCESS = "DEPOSIT_SUCCESS",
15
+ AUTH_LOADING = "AUTH_LOADING",
16
+ FINAL_SUCCESS = "FINAL_SUCCESS",
17
+ ERROR = "ERROR"
18
+ }
19
+ /**
20
+ * Interface representing the flow context, containing all data necessary
21
+ * for the wallet connection flow
22
+ */
23
+ export interface FlowContext {
24
+ walletType: 'solana' | 'ethereum' | null;
25
+ hasNordAccount: boolean;
26
+ hasActiveSession: boolean;
27
+ selectedChain: string | null;
28
+ amount: string;
29
+ transactionId: string | null;
30
+ error: Error | null;
31
+ lastInterruption: {
32
+ timestamp: number;
33
+ state: FlowState;
34
+ context: Partial<FlowContext>;
35
+ } | null;
36
+ }
37
+ /**
38
+ * Interface for state transitions in the flow
39
+ */
40
+ export interface StateTransition {
41
+ from: FlowState | FlowState[];
42
+ to: FlowState;
43
+ condition?: (context: FlowContext) => boolean;
44
+ }
45
+ /**
46
+ * Initial flow context with default values
47
+ */
48
+ export declare const initialFlowContext: FlowContext;
49
+ export interface TableValues {
50
+ amount?: {
51
+ text: string;
52
+ visible: boolean;
53
+ typing: boolean;
54
+ };
55
+ tx: {
56
+ text: string;
57
+ visible: boolean;
58
+ typing: boolean;
59
+ };
60
+ from: {
61
+ text: string;
62
+ visible: boolean;
63
+ typing: boolean;
64
+ };
65
+ to: {
66
+ text: string;
67
+ visible: boolean;
68
+ typing: boolean;
69
+ };
70
+ network: {
71
+ text: string;
72
+ visible: boolean;
73
+ typing: boolean;
74
+ };
75
+ status: {
76
+ text: string;
77
+ visible: boolean;
78
+ typing: boolean;
79
+ };
80
+ }
81
+ export interface WaitingMessageState {
82
+ title: string;
83
+ subtitle: string;
84
+ visible: boolean;
85
+ isTyping: boolean;
86
+ }
87
+ /**
88
+ * Interface for a blockchain network
89
+ */
90
+ export interface Chain {
91
+ id: string;
92
+ name: string;
93
+ logo: string;
94
+ disabled?: boolean;
95
+ network?: string;
96
+ }
97
+ export interface App {
98
+ name: string;
99
+ color: string;
100
+ progress: number;
101
+ }
102
+ export type ButtonKey = 'deposit' | 'continue' | 'openApp';
103
+ export interface ButtonState {
104
+ text: string;
105
+ isTyping: boolean;
106
+ showCursor: boolean;
107
+ }
108
+ export type ButtonStates = Record<ButtonKey, ButtonState>;
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Types for the wallet connection flow state machine
3
+ */
4
+ /**
5
+ * Enum representing all possible states in the wallet connection flow
6
+ */
7
+ export var FlowState;
8
+ (function (FlowState) {
9
+ FlowState["IDLE"] = "IDLE";
10
+ FlowState["CONNECTING_WALLET"] = "CONNECTING_WALLET";
11
+ FlowState["ETH_TO_SOL_AUTH"] = "ETH_TO_SOL_AUTH";
12
+ FlowState["CHAIN_SELECTION"] = "CHAIN_SELECTION";
13
+ FlowState["AMOUNT_INPUT"] = "AMOUNT_INPUT";
14
+ FlowState["DEPOSIT_PROGRESS"] = "DEPOSIT_PROGRESS";
15
+ FlowState["DEPOSIT_SUCCESS"] = "DEPOSIT_SUCCESS";
16
+ FlowState["AUTH_LOADING"] = "AUTH_LOADING";
17
+ FlowState["FINAL_SUCCESS"] = "FINAL_SUCCESS";
18
+ FlowState["ERROR"] = "ERROR";
19
+ })(FlowState || (FlowState = {}));
20
+ /**
21
+ * Initial flow context with default values
22
+ */
23
+ export var initialFlowContext = {
24
+ walletType: null,
25
+ hasNordAccount: false,
26
+ hasActiveSession: false,
27
+ selectedChain: null,
28
+ amount: '',
29
+ transactionId: null,
30
+ error: null,
31
+ lastInterruption: null,
32
+ };
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Checks if an image URL is valid and accessible
3
+ * @param url The image URL to check
4
+ * @returns A promise that resolves to true if the image is valid, false otherwise
5
+ */
6
+ export declare const isImageValid: (url: string) => Promise<boolean>;
7
+ /**
8
+ * Gets chain icon URL with fallback
9
+ * @param chainId The chain ID
10
+ * @param fallbackUrl Optional fallback URL
11
+ * @returns The chain icon URL or fallback
12
+ */
13
+ export declare const getChainIconUrl: (chainId: string | number, fallbackUrl?: string) => string;
14
+ /**
15
+ * Gets token icon URL with fallback
16
+ * @param tokenSymbol The token symbol (e.g., 'ETH', 'USDC')
17
+ * @param chainId Optional chain ID for chain-specific tokens
18
+ * @param fallbackUrl Optional fallback URL
19
+ * @returns The token icon URL or fallback
20
+ */
21
+ export declare const getTokenIconUrl: (tokenSymbol: string, fallbackUrl?: string) => string;