@n1xyz/wallet-widget 0.0.1 → 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 (483) hide show
  1. package/LICENSE +44 -0
  2. package/README.md +210 -0
  3. package/dist/Logic/sessionManager.d.ts +53 -0
  4. package/dist/Logic/sessionManager.js +178 -0
  5. package/dist/Logic/transactionManager.d.ts +41 -0
  6. package/dist/Logic/transactionManager.js +192 -0
  7. package/dist/Logic/utils.d.ts +1 -0
  8. package/dist/Logic/utils.js +47 -9
  9. package/dist/Modal/BackButton.js +14 -1
  10. package/dist/Modal/ConnectView.js +20 -23
  11. package/dist/Modal/CreateSessionView.js +23 -11
  12. package/dist/Modal/CreateUserView.js +1 -1
  13. package/dist/Modal/LoadingFallback.d.ts +2 -0
  14. package/dist/Modal/LoadingFallback.js +2 -0
  15. package/dist/Modal/ModalHeader.js +14 -3
  16. package/dist/Modal/N1WalletModal.js +91 -79
  17. package/dist/Modal/NTSFlow/LoadingFallback.d.ts +2 -0
  18. package/dist/Modal/NTSFlow/LoadingFallback.js +2 -0
  19. package/dist/Modal/NTSFlow/NTSFlow.d.ts +4 -0
  20. package/dist/Modal/NTSFlow/NTSFlow.js +30 -0
  21. package/dist/Modal/NTSFlow/NordFlow/WalletConnectionFlow.d.ts +9 -0
  22. package/dist/Modal/NTSFlow/NordFlow/WalletConnectionFlow.js +145 -0
  23. package/dist/Modal/NTSFlow/NordFlow/components/AnimatedButton.d.ts +14 -0
  24. package/dist/Modal/NTSFlow/NordFlow/components/AnimatedButton.js +75 -0
  25. package/dist/Modal/NTSFlow/NordFlow/components/ChainButton.d.ts +7 -0
  26. package/dist/Modal/NTSFlow/NordFlow/components/ChainButton.js +5 -0
  27. package/dist/Modal/NTSFlow/NordFlow/components/LoadingSquares.d.ts +1 -0
  28. package/dist/Modal/NTSFlow/NordFlow/components/LoadingSquares.js +5 -0
  29. package/dist/Modal/NTSFlow/NordFlow/components/TransactionTable.d.ts +13 -0
  30. package/dist/Modal/NTSFlow/NordFlow/components/TransactionTable.js +58 -0
  31. package/dist/Modal/NTSFlow/NordFlow/components/WaitingMessage.d.ts +6 -0
  32. package/dist/Modal/NTSFlow/NordFlow/components/WaitingMessage.js +6 -0
  33. package/dist/Modal/NTSFlow/NordFlow/components/index.d.ts +5 -0
  34. package/dist/Modal/NTSFlow/NordFlow/components/index.js +5 -0
  35. package/dist/Modal/NTSFlow/NordFlow/constants.d.ts +37 -0
  36. package/dist/Modal/NTSFlow/NordFlow/constants.js +223 -0
  37. package/dist/Modal/NTSFlow/NordFlow/hooks/index.d.ts +8 -0
  38. package/dist/Modal/NTSFlow/NordFlow/hooks/index.js +8 -0
  39. package/dist/Modal/NTSFlow/NordFlow/hooks/useButtonTyping.d.ts +7 -0
  40. package/dist/Modal/NTSFlow/NordFlow/hooks/useButtonTyping.js +43 -0
  41. package/dist/Modal/NTSFlow/NordFlow/hooks/useDepositFlow.d.ts +38 -0
  42. package/dist/Modal/NTSFlow/NordFlow/hooks/useDepositFlow.js +166 -0
  43. package/dist/Modal/NTSFlow/NordFlow/hooks/useFlowState.d.ts +32 -0
  44. package/dist/Modal/NTSFlow/NordFlow/hooks/useFlowState.js +163 -0
  45. package/dist/Modal/NTSFlow/NordFlow/hooks/useInterruptHandler.d.ts +27 -0
  46. package/dist/Modal/NTSFlow/NordFlow/hooks/useInterruptHandler.js +101 -0
  47. package/dist/Modal/NTSFlow/NordFlow/hooks/useNordSession.d.ts +32 -0
  48. package/dist/Modal/NTSFlow/NordFlow/hooks/useNordSession.js +193 -0
  49. package/dist/Modal/NTSFlow/NordFlow/hooks/useTableValues.d.ts +2 -0
  50. package/dist/Modal/NTSFlow/NordFlow/hooks/useTableValues.js +69 -0
  51. package/dist/Modal/NTSFlow/NordFlow/hooks/useWaitingMessage.d.ts +6 -0
  52. package/dist/Modal/NTSFlow/NordFlow/hooks/useWaitingMessage.js +89 -0
  53. package/dist/Modal/NTSFlow/NordFlow/hooks/useWalletConnect.d.ts +30 -0
  54. package/dist/Modal/NTSFlow/NordFlow/hooks/useWalletConnect.js +132 -0
  55. package/dist/Modal/NTSFlow/NordFlow/index.d.ts +3 -0
  56. package/dist/Modal/NTSFlow/NordFlow/index.js +3 -0
  57. package/dist/Modal/NTSFlow/NordFlow/screens/01-ConnectWalletScreen.d.ts +6 -0
  58. package/dist/Modal/NTSFlow/NordFlow/screens/01-ConnectWalletScreen.js +17 -0
  59. package/dist/Modal/NTSFlow/NordFlow/screens/02-EvmWalletAuthScreen.d.ts +6 -0
  60. package/dist/Modal/NTSFlow/NordFlow/screens/02-EvmWalletAuthScreen.js +47 -0
  61. package/dist/Modal/NTSFlow/NordFlow/screens/03-ChainSelectionScreen.d.ts +7 -0
  62. package/dist/Modal/NTSFlow/NordFlow/screens/03-ChainSelectionScreen.js +7 -0
  63. package/dist/Modal/NTSFlow/NordFlow/screens/04-AmountInputScreen.d.ts +8 -0
  64. package/dist/Modal/NTSFlow/NordFlow/screens/04-AmountInputScreen.js +20 -0
  65. package/dist/Modal/NTSFlow/NordFlow/screens/05-DepositProgressScreen.d.ts +7 -0
  66. package/dist/Modal/NTSFlow/NordFlow/screens/05-DepositProgressScreen.js +6 -0
  67. package/dist/Modal/NTSFlow/NordFlow/screens/06-DepositSuccessScreen.d.ts +8 -0
  68. package/dist/Modal/NTSFlow/NordFlow/screens/06-DepositSuccessScreen.js +99 -0
  69. package/dist/Modal/NTSFlow/NordFlow/screens/07-NordAuthScreen.d.ts +7 -0
  70. package/dist/Modal/NTSFlow/NordFlow/screens/07-NordAuthScreen.js +14 -0
  71. package/dist/Modal/NTSFlow/NordFlow/screens/08-AuthLoadingScreen.d.ts +6 -0
  72. package/dist/Modal/NTSFlow/NordFlow/screens/08-AuthLoadingScreen.js +20 -0
  73. package/dist/Modal/NTSFlow/NordFlow/screens/09-FinalSuccessScreen.d.ts +5 -0
  74. package/dist/Modal/NTSFlow/NordFlow/screens/09-FinalSuccessScreen.js +18 -0
  75. package/dist/Modal/NTSFlow/NordFlow/screens/10-ErrorScreen.d.ts +7 -0
  76. package/dist/Modal/NTSFlow/NordFlow/screens/10-ErrorScreen.js +13 -0
  77. package/dist/Modal/NTSFlow/NordFlow/screens/index.d.ts +10 -0
  78. package/dist/Modal/NTSFlow/NordFlow/screens/index.js +10 -0
  79. package/dist/Modal/NTSFlow/NordFlow/types.d.ts +105 -0
  80. package/dist/Modal/NTSFlow/NordFlow/types.js +34 -0
  81. package/dist/Modal/NTSFlow/NordFlow/utils/persistence.d.ts +24 -0
  82. package/dist/Modal/NTSFlow/NordFlow/utils/persistence.js +83 -0
  83. package/dist/Modal/NTSFlow/components/BackButton.d.ts +3 -0
  84. package/dist/Modal/NTSFlow/components/BackButton.js +26 -0
  85. package/dist/Modal/NTSFlow/components/ModalHeader.d.ts +1 -0
  86. package/dist/Modal/NTSFlow/components/ModalHeader.js +20 -0
  87. package/dist/Modal/NTSFlow/index.d.ts +1 -0
  88. package/dist/Modal/NTSFlow/index.js +1 -0
  89. package/dist/Modal/NTSFlow/views/ConnectView.d.ts +1 -0
  90. package/dist/Modal/NTSFlow/views/ConnectView.js +68 -0
  91. package/dist/Modal/NTSFlow/views/CreateSessionView.d.ts +1 -0
  92. package/dist/Modal/NTSFlow/views/CreateSessionView.js +245 -0
  93. package/dist/Modal/NTSFlow/views/CreateUserView.d.ts +1 -0
  94. package/dist/Modal/NTSFlow/views/CreateUserView.js +105 -0
  95. package/dist/Modal/NTSFlow/views/NoWhitelistView.d.ts +1 -0
  96. package/dist/Modal/NTSFlow/views/NoWhitelistView.js +42 -0
  97. package/dist/Modal/NTSFlow/views/SigningView.d.ts +1 -0
  98. package/dist/Modal/NTSFlow/views/SigningView.js +5 -0
  99. package/dist/Modal/NTSFlow/views/SuccessView.d.ts +1 -0
  100. package/dist/Modal/NTSFlow/views/SuccessView.js +10 -0
  101. package/dist/Modal/NoWhitelistView.js +14 -1
  102. package/dist/Modal/NordFlow/NordFlow.d.ts +9 -0
  103. package/dist/Modal/NordFlow/NordFlow.js +262 -0
  104. package/dist/Modal/NordFlow/NordFlowWrapper.d.ts +11 -0
  105. package/dist/Modal/NordFlow/NordFlowWrapper.js +11 -0
  106. package/dist/Modal/NordFlow/WalletConnectionFlow.d.ts +9 -0
  107. package/dist/Modal/NordFlow/WalletConnectionFlow.js +145 -0
  108. package/dist/Modal/NordFlow/components/AnimatedButton.d.ts +14 -0
  109. package/dist/Modal/NordFlow/components/AnimatedButton.js +75 -0
  110. package/dist/Modal/NordFlow/components/ChainButton.d.ts +8 -0
  111. package/dist/Modal/NordFlow/components/ChainButton.js +21 -0
  112. package/dist/Modal/NordFlow/components/ImageWithFallback.d.ts +17 -0
  113. package/dist/Modal/NordFlow/components/ImageWithFallback.js +32 -0
  114. package/dist/Modal/NordFlow/components/LoadingSquares.d.ts +1 -0
  115. package/dist/Modal/NordFlow/components/LoadingSquares.js +5 -0
  116. package/dist/Modal/NordFlow/components/TransactionTable.d.ts +13 -0
  117. package/dist/Modal/NordFlow/components/TransactionTable.js +83 -0
  118. package/dist/Modal/NordFlow/components/WaitingMessage.d.ts +6 -0
  119. package/dist/Modal/NordFlow/components/WaitingMessage.js +6 -0
  120. package/dist/Modal/NordFlow/components/index.d.ts +5 -0
  121. package/dist/Modal/NordFlow/components/index.js +5 -0
  122. package/dist/Modal/NordFlow/constants.d.ts +37 -0
  123. package/dist/Modal/NordFlow/constants.js +192 -0
  124. package/dist/Modal/NordFlow/hoc/index.d.ts +1 -0
  125. package/dist/Modal/NordFlow/hoc/index.js +1 -0
  126. package/dist/Modal/NordFlow/hoc/withImageFallback.d.ts +7 -0
  127. package/dist/Modal/NordFlow/hoc/withImageFallback.js +60 -0
  128. package/dist/Modal/NordFlow/hooks/index.d.ts +5 -0
  129. package/dist/Modal/NordFlow/hooks/index.js +5 -0
  130. package/dist/Modal/NordFlow/hooks/useButtonTyping.d.ts +7 -0
  131. package/dist/Modal/NordFlow/hooks/useButtonTyping.js +43 -0
  132. package/dist/Modal/NordFlow/hooks/useDepositFlow.d.ts +52 -0
  133. package/dist/Modal/NordFlow/hooks/useDepositFlow.js +365 -0
  134. package/dist/Modal/NordFlow/hooks/useFlowState.d.ts +32 -0
  135. package/dist/Modal/NordFlow/hooks/useFlowState.js +166 -0
  136. package/dist/Modal/NordFlow/hooks/useInterruptHandler.d.ts +24 -0
  137. package/dist/Modal/NordFlow/hooks/useInterruptHandler.js +56 -0
  138. package/dist/Modal/NordFlow/hooks/useNordInstance.d.ts +10 -0
  139. package/dist/Modal/NordFlow/hooks/useNordInstance.js +310 -0
  140. package/dist/Modal/NordFlow/hooks/useNordSession.d.ts +32 -0
  141. package/dist/Modal/NordFlow/hooks/useNordSession.js +391 -0
  142. package/dist/Modal/NordFlow/hooks/useNordWalletConnect.d.ts +14 -0
  143. package/dist/Modal/NordFlow/hooks/useNordWalletConnect.js +231 -0
  144. package/dist/Modal/NordFlow/hooks/useTableValues.d.ts +2 -0
  145. package/dist/Modal/NordFlow/hooks/useTableValues.js +69 -0
  146. package/dist/Modal/NordFlow/hooks/useWaitingMessage.d.ts +6 -0
  147. package/dist/Modal/NordFlow/hooks/useWaitingMessage.js +89 -0
  148. package/dist/Modal/NordFlow/hooks/useWalletConnect.d.ts +14 -0
  149. package/dist/Modal/NordFlow/hooks/useWalletConnect.js +221 -0
  150. package/dist/Modal/NordFlow/index copy.d.ts +1 -0
  151. package/dist/Modal/NordFlow/index copy.js +1 -0
  152. package/dist/Modal/NordFlow/index.d.ts +1 -0
  153. package/dist/Modal/NordFlow/index.js +1 -0
  154. package/dist/Modal/NordFlow/screens/01-ConnectWalletScreen.d.ts +6 -0
  155. package/dist/Modal/NordFlow/screens/01-ConnectWalletScreen.js +17 -0
  156. package/dist/Modal/NordFlow/screens/02-EvmWalletAuthScreen.d.ts +6 -0
  157. package/dist/Modal/NordFlow/screens/02-EvmWalletAuthScreen.js +47 -0
  158. package/dist/Modal/NordFlow/screens/03-ChainSelectionScreen.d.ts +7 -0
  159. package/dist/Modal/NordFlow/screens/03-ChainSelectionScreen.js +47 -0
  160. package/dist/Modal/NordFlow/screens/04-AmountInputScreen.d.ts +10 -0
  161. package/dist/Modal/NordFlow/screens/04-AmountInputScreen.js +165 -0
  162. package/dist/Modal/NordFlow/screens/05-DepositProgressScreen.d.ts +6 -0
  163. package/dist/Modal/NordFlow/screens/05-DepositProgressScreen.js +44 -0
  164. package/dist/Modal/NordFlow/screens/06-DepositSuccessScreen.d.ts +8 -0
  165. package/dist/Modal/NordFlow/screens/06-DepositSuccessScreen.js +119 -0
  166. package/dist/Modal/NordFlow/screens/07-AuthLoadingScreen.d.ts +6 -0
  167. package/dist/Modal/NordFlow/screens/07-AuthLoadingScreen.js +126 -0
  168. package/dist/Modal/NordFlow/screens/07-NordAuthScreen.d.ts +5 -0
  169. package/dist/Modal/NordFlow/screens/07-NordAuthScreen.js +17 -0
  170. package/dist/Modal/NordFlow/screens/08-AuthLoadingScreen.d.ts +6 -0
  171. package/dist/Modal/NordFlow/screens/08-AuthLoadingScreen.js +153 -0
  172. package/dist/Modal/NordFlow/screens/08-FinalSuccessScreen.d.ts +5 -0
  173. package/dist/Modal/NordFlow/screens/08-FinalSuccessScreen.js +36 -0
  174. package/dist/Modal/NordFlow/screens/09-ErrorScreen.d.ts +7 -0
  175. package/dist/Modal/NordFlow/screens/09-ErrorScreen.js +62 -0
  176. package/dist/Modal/NordFlow/screens/09-FinalSuccessScreen.d.ts +5 -0
  177. package/dist/Modal/NordFlow/screens/09-FinalSuccessScreen.js +47 -0
  178. package/dist/Modal/NordFlow/screens/10-ErrorScreen.d.ts +7 -0
  179. package/dist/Modal/NordFlow/screens/10-ErrorScreen.js +62 -0
  180. package/dist/Modal/NordFlow/screens/index.d.ts +9 -0
  181. package/dist/Modal/NordFlow/screens/index.js +9 -0
  182. package/dist/Modal/NordFlow/types.d.ts +108 -0
  183. package/dist/Modal/NordFlow/types.js +32 -0
  184. package/dist/Modal/NordFlow/utils/imageUtils.d.ts +21 -0
  185. package/dist/Modal/NordFlow/utils/imageUtils.js +109 -0
  186. package/dist/Modal/NordFlow/utils/index.d.ts +3 -0
  187. package/dist/Modal/NordFlow/utils/index.js +3 -0
  188. package/dist/Modal/NordFlow/utils/nordUtils.d.ts +40 -0
  189. package/dist/Modal/NordFlow/utils/nordUtils.js +61 -0
  190. package/dist/Modal/NordFlow/utils/persistence.d.ts +24 -0
  191. package/dist/Modal/NordFlow/utils/persistence.js +83 -0
  192. package/dist/Modal/Sidebar/N1Sidebar.js +167 -14
  193. package/dist/Modal/Sidebar/NordTradingView/AccountSummary/AccountSummary.d.ts +1 -0
  194. package/dist/Modal/Sidebar/NordTradingView/AccountSummary/AccountSummary.js +116 -0
  195. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketOverview.d.ts +7 -0
  196. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketOverview.js +86 -0
  197. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketSelector.d.ts +6 -0
  198. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketSelector.js +38 -0
  199. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketStats.d.ts +7 -0
  200. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketStats.js +15 -0
  201. package/dist/Modal/Sidebar/NordTradingView/NordTradingView.d.ts +1 -0
  202. package/dist/Modal/Sidebar/NordTradingView/NordTradingView.js +54 -0
  203. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBook.d.ts +5 -0
  204. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBook.js +197 -0
  205. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookDepthVisualizer.d.ts +10 -0
  206. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookDepthVisualizer.js +61 -0
  207. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookHeader.d.ts +7 -0
  208. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookHeader.js +28 -0
  209. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookTable.d.ts +11 -0
  210. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookTable.js +22 -0
  211. package/dist/Modal/Sidebar/NordTradingView/TradeForm/AmountInput.d.ts +7 -0
  212. package/dist/Modal/Sidebar/NordTradingView/TradeForm/AmountInput.js +19 -0
  213. package/dist/Modal/Sidebar/NordTradingView/TradeForm/BuySellTabs.d.ts +7 -0
  214. package/dist/Modal/Sidebar/NordTradingView/TradeForm/BuySellTabs.js +23 -0
  215. package/dist/Modal/Sidebar/NordTradingView/TradeForm/FillModeSelector.d.ts +7 -0
  216. package/dist/Modal/Sidebar/NordTradingView/TradeForm/FillModeSelector.js +76 -0
  217. package/dist/Modal/Sidebar/NordTradingView/TradeForm/OrderTypeSelector.d.ts +9 -0
  218. package/dist/Modal/Sidebar/NordTradingView/TradeForm/OrderTypeSelector.js +103 -0
  219. package/dist/Modal/Sidebar/NordTradingView/TradeForm/PriceInput.d.ts +7 -0
  220. package/dist/Modal/Sidebar/NordTradingView/TradeForm/PriceInput.js +29 -0
  221. package/dist/Modal/Sidebar/NordTradingView/TradeForm/SubmitButton.d.ts +9 -0
  222. package/dist/Modal/Sidebar/NordTradingView/TradeForm/SubmitButton.js +39 -0
  223. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TotalCalculator.d.ts +7 -0
  224. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TotalCalculator.js +7 -0
  225. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TradeForm.d.ts +8 -0
  226. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TradeForm.js +249 -0
  227. package/dist/Modal/Sidebar/NordTradingView/TradeHistory/TradeHistory.d.ts +5 -0
  228. package/dist/Modal/Sidebar/NordTradingView/TradeHistory/TradeHistory.js +138 -0
  229. package/dist/Modal/Sidebar/NordTradingView/UserBalances/UserBalances.d.ts +1 -0
  230. package/dist/Modal/Sidebar/NordTradingView/UserBalances/UserBalances.js +108 -0
  231. package/dist/Modal/Sidebar/NordTradingView/UserOrders/UserOrders.d.ts +1 -0
  232. package/dist/Modal/Sidebar/NordTradingView/UserOrders/UserOrders.js +177 -0
  233. package/dist/Modal/Sidebar/NordTradingView/UserPositions/UserPositions.d.ts +1 -0
  234. package/dist/Modal/Sidebar/NordTradingView/UserPositions/UserPositions.js +188 -0
  235. package/dist/Modal/SigningView.js +1 -1
  236. package/dist/NordFlow/WalletConnectionFlow.d.ts +9 -0
  237. package/dist/NordFlow/WalletConnectionFlow.js +145 -0
  238. package/dist/NordFlow/components/AnimatedButton.d.ts +14 -0
  239. package/dist/NordFlow/components/AnimatedButton.js +75 -0
  240. package/dist/NordFlow/components/ChainButton.d.ts +7 -0
  241. package/dist/NordFlow/components/ChainButton.js +5 -0
  242. package/dist/NordFlow/components/LoadingSquares.d.ts +1 -0
  243. package/dist/NordFlow/components/LoadingSquares.js +5 -0
  244. package/dist/NordFlow/components/TransactionTable.d.ts +13 -0
  245. package/dist/NordFlow/components/TransactionTable.js +58 -0
  246. package/dist/NordFlow/components/WaitingMessage.d.ts +6 -0
  247. package/dist/NordFlow/components/WaitingMessage.js +6 -0
  248. package/dist/NordFlow/components/index.d.ts +5 -0
  249. package/dist/NordFlow/components/index.js +5 -0
  250. package/dist/NordFlow/constants.d.ts +37 -0
  251. package/dist/NordFlow/constants.js +223 -0
  252. package/dist/NordFlow/hooks/index.d.ts +8 -0
  253. package/dist/NordFlow/hooks/index.js +8 -0
  254. package/dist/NordFlow/hooks/useButtonTyping.d.ts +7 -0
  255. package/dist/NordFlow/hooks/useButtonTyping.js +43 -0
  256. package/dist/NordFlow/hooks/useDepositFlow.d.ts +38 -0
  257. package/dist/NordFlow/hooks/useDepositFlow.js +166 -0
  258. package/dist/NordFlow/hooks/useFlowState.d.ts +32 -0
  259. package/dist/NordFlow/hooks/useFlowState.js +163 -0
  260. package/dist/NordFlow/hooks/useInterruptHandler.d.ts +27 -0
  261. package/dist/NordFlow/hooks/useInterruptHandler.js +101 -0
  262. package/dist/NordFlow/hooks/useNordSession.d.ts +32 -0
  263. package/dist/NordFlow/hooks/useNordSession.js +193 -0
  264. package/dist/NordFlow/hooks/useTableValues.d.ts +2 -0
  265. package/dist/NordFlow/hooks/useTableValues.js +69 -0
  266. package/dist/NordFlow/hooks/useWaitingMessage.d.ts +6 -0
  267. package/dist/NordFlow/hooks/useWaitingMessage.js +89 -0
  268. package/dist/NordFlow/hooks/useWalletConnect.d.ts +30 -0
  269. package/dist/NordFlow/hooks/useWalletConnect.js +132 -0
  270. package/dist/NordFlow/index.d.ts +3 -0
  271. package/dist/NordFlow/index.js +3 -0
  272. package/dist/NordFlow/screens/01-ConnectWalletScreen.d.ts +6 -0
  273. package/dist/NordFlow/screens/01-ConnectWalletScreen.js +17 -0
  274. package/dist/NordFlow/screens/02-EvmWalletAuthScreen.d.ts +6 -0
  275. package/dist/NordFlow/screens/02-EvmWalletAuthScreen.js +47 -0
  276. package/dist/NordFlow/screens/03-ChainSelectionScreen.d.ts +7 -0
  277. package/dist/NordFlow/screens/03-ChainSelectionScreen.js +7 -0
  278. package/dist/NordFlow/screens/04-AmountInputScreen.d.ts +8 -0
  279. package/dist/NordFlow/screens/04-AmountInputScreen.js +20 -0
  280. package/dist/NordFlow/screens/05-DepositProgressScreen.d.ts +7 -0
  281. package/dist/NordFlow/screens/05-DepositProgressScreen.js +6 -0
  282. package/dist/NordFlow/screens/06-DepositSuccessScreen.d.ts +8 -0
  283. package/dist/NordFlow/screens/06-DepositSuccessScreen.js +99 -0
  284. package/dist/NordFlow/screens/07-NordAuthScreen.d.ts +7 -0
  285. package/dist/NordFlow/screens/07-NordAuthScreen.js +14 -0
  286. package/dist/NordFlow/screens/08-AuthLoadingScreen.d.ts +6 -0
  287. package/dist/NordFlow/screens/08-AuthLoadingScreen.js +20 -0
  288. package/dist/NordFlow/screens/09-FinalSuccessScreen.d.ts +5 -0
  289. package/dist/NordFlow/screens/09-FinalSuccessScreen.js +18 -0
  290. package/dist/NordFlow/screens/10-ErrorScreen.d.ts +7 -0
  291. package/dist/NordFlow/screens/10-ErrorScreen.js +13 -0
  292. package/dist/NordFlow/screens/index.d.ts +10 -0
  293. package/dist/NordFlow/screens/index.js +10 -0
  294. package/dist/NordFlow/types.d.ts +105 -0
  295. package/dist/NordFlow/types.js +34 -0
  296. package/dist/NordFlow/utils/persistence.d.ts +24 -0
  297. package/dist/NordFlow/utils/persistence.js +83 -0
  298. package/dist/Provider/LazyWalletProvider.js +75 -38
  299. package/dist/Provider/N1WalletProvider.d.ts +1 -1
  300. package/dist/Provider/N1WalletProvider.js +63 -42
  301. package/dist/Provider/types.d.ts +69 -0
  302. package/dist/WalletConnectionFlow/WalletConnectionFlow.d.ts +9 -0
  303. package/dist/WalletConnectionFlow/WalletConnectionFlow.js +145 -0
  304. package/dist/WalletConnectionFlow/components/AnimatedButton.d.ts +14 -0
  305. package/dist/WalletConnectionFlow/components/AnimatedButton.js +75 -0
  306. package/dist/WalletConnectionFlow/components/ChainButton.d.ts +7 -0
  307. package/dist/WalletConnectionFlow/components/ChainButton.js +5 -0
  308. package/dist/WalletConnectionFlow/components/LoadingSquares.d.ts +1 -0
  309. package/dist/WalletConnectionFlow/components/LoadingSquares.js +5 -0
  310. package/dist/WalletConnectionFlow/components/TransactionTable.d.ts +13 -0
  311. package/dist/WalletConnectionFlow/components/TransactionTable.js +58 -0
  312. package/dist/WalletConnectionFlow/components/WaitingMessage.d.ts +6 -0
  313. package/dist/WalletConnectionFlow/components/WaitingMessage.js +6 -0
  314. package/dist/WalletConnectionFlow/components/index.d.ts +5 -0
  315. package/dist/WalletConnectionFlow/components/index.js +5 -0
  316. package/dist/WalletConnectionFlow/constants.d.ts +37 -0
  317. package/dist/WalletConnectionFlow/constants.js +223 -0
  318. package/dist/WalletConnectionFlow/hooks/index.d.ts +8 -0
  319. package/dist/WalletConnectionFlow/hooks/index.js +8 -0
  320. package/dist/WalletConnectionFlow/hooks/useButtonTyping.d.ts +7 -0
  321. package/dist/WalletConnectionFlow/hooks/useButtonTyping.js +43 -0
  322. package/dist/WalletConnectionFlow/hooks/useDepositFlow.d.ts +38 -0
  323. package/dist/WalletConnectionFlow/hooks/useDepositFlow.js +166 -0
  324. package/dist/WalletConnectionFlow/hooks/useFlowState.d.ts +32 -0
  325. package/dist/WalletConnectionFlow/hooks/useFlowState.js +163 -0
  326. package/dist/WalletConnectionFlow/hooks/useInterruptHandler.d.ts +27 -0
  327. package/dist/WalletConnectionFlow/hooks/useInterruptHandler.js +101 -0
  328. package/dist/WalletConnectionFlow/hooks/useNordSession.d.ts +32 -0
  329. package/dist/WalletConnectionFlow/hooks/useNordSession.js +193 -0
  330. package/dist/WalletConnectionFlow/hooks/useTableValues.d.ts +2 -0
  331. package/dist/WalletConnectionFlow/hooks/useTableValues.js +69 -0
  332. package/dist/WalletConnectionFlow/hooks/useWaitingMessage.d.ts +6 -0
  333. package/dist/WalletConnectionFlow/hooks/useWaitingMessage.js +89 -0
  334. package/dist/WalletConnectionFlow/hooks/useWalletConnect.d.ts +30 -0
  335. package/dist/WalletConnectionFlow/hooks/useWalletConnect.js +132 -0
  336. package/dist/WalletConnectionFlow/index.d.ts +3 -0
  337. package/dist/WalletConnectionFlow/index.js +3 -0
  338. package/dist/WalletConnectionFlow/screens/01-ConnectWalletScreen.d.ts +6 -0
  339. package/dist/WalletConnectionFlow/screens/01-ConnectWalletScreen.js +17 -0
  340. package/dist/WalletConnectionFlow/screens/02-EvmWalletAuthScreen.d.ts +6 -0
  341. package/dist/WalletConnectionFlow/screens/02-EvmWalletAuthScreen.js +47 -0
  342. package/dist/WalletConnectionFlow/screens/03-ChainSelectionScreen.d.ts +7 -0
  343. package/dist/WalletConnectionFlow/screens/03-ChainSelectionScreen.js +7 -0
  344. package/dist/WalletConnectionFlow/screens/04-AmountInputScreen.d.ts +8 -0
  345. package/dist/WalletConnectionFlow/screens/04-AmountInputScreen.js +20 -0
  346. package/dist/WalletConnectionFlow/screens/05-DepositProgressScreen.d.ts +7 -0
  347. package/dist/WalletConnectionFlow/screens/05-DepositProgressScreen.js +6 -0
  348. package/dist/WalletConnectionFlow/screens/06-DepositSuccessScreen.d.ts +8 -0
  349. package/dist/WalletConnectionFlow/screens/06-DepositSuccessScreen.js +99 -0
  350. package/dist/WalletConnectionFlow/screens/07-NordAuthScreen.d.ts +7 -0
  351. package/dist/WalletConnectionFlow/screens/07-NordAuthScreen.js +14 -0
  352. package/dist/WalletConnectionFlow/screens/08-AuthLoadingScreen.d.ts +6 -0
  353. package/dist/WalletConnectionFlow/screens/08-AuthLoadingScreen.js +20 -0
  354. package/dist/WalletConnectionFlow/screens/09-FinalSuccessScreen.d.ts +5 -0
  355. package/dist/WalletConnectionFlow/screens/09-FinalSuccessScreen.js +18 -0
  356. package/dist/WalletConnectionFlow/screens/10-ErrorScreen.d.ts +7 -0
  357. package/dist/WalletConnectionFlow/screens/10-ErrorScreen.js +13 -0
  358. package/dist/WalletConnectionFlow/screens/AmountInputScreen.d.ts +8 -0
  359. package/dist/WalletConnectionFlow/screens/AmountInputScreen.js +20 -0
  360. package/dist/WalletConnectionFlow/screens/AppsTableScreen.d.ts +8 -0
  361. package/dist/WalletConnectionFlow/screens/AppsTableScreen.js +28 -0
  362. package/dist/WalletConnectionFlow/screens/AuthLoadingScreen.d.ts +6 -0
  363. package/dist/WalletConnectionFlow/screens/AuthLoadingScreen.js +20 -0
  364. package/dist/WalletConnectionFlow/screens/ChainSelectionScreen.d.ts +7 -0
  365. package/dist/WalletConnectionFlow/screens/ChainSelectionScreen.js +7 -0
  366. package/dist/WalletConnectionFlow/screens/ConnectWalletScreen.d.ts +6 -0
  367. package/dist/WalletConnectionFlow/screens/ConnectWalletScreen.js +17 -0
  368. package/dist/WalletConnectionFlow/screens/DepositProgressScreen.d.ts +7 -0
  369. package/dist/WalletConnectionFlow/screens/DepositProgressScreen.js +6 -0
  370. package/dist/WalletConnectionFlow/screens/DepositSuccessScreen.d.ts +8 -0
  371. package/dist/WalletConnectionFlow/screens/DepositSuccessScreen.js +99 -0
  372. package/dist/WalletConnectionFlow/screens/ErrorScreen.d.ts +7 -0
  373. package/dist/WalletConnectionFlow/screens/ErrorScreen.js +13 -0
  374. package/dist/WalletConnectionFlow/screens/EthToSolAuthScreen.d.ts +6 -0
  375. package/dist/WalletConnectionFlow/screens/EthToSolAuthScreen.js +47 -0
  376. package/dist/WalletConnectionFlow/screens/EvmWalletAuthScreen.d.ts +6 -0
  377. package/dist/WalletConnectionFlow/screens/EvmWalletAuthScreen.js +47 -0
  378. package/dist/WalletConnectionFlow/screens/FinalSuccessScreen.d.ts +5 -0
  379. package/dist/WalletConnectionFlow/screens/FinalSuccessScreen.js +18 -0
  380. package/dist/WalletConnectionFlow/screens/NordAuthScreen.d.ts +7 -0
  381. package/dist/WalletConnectionFlow/screens/NordAuthScreen.js +14 -0
  382. package/dist/WalletConnectionFlow/screens/SigningScreen.d.ts +6 -0
  383. package/dist/WalletConnectionFlow/screens/SigningScreen.js +6 -0
  384. package/dist/WalletConnectionFlow/screens/index.d.ts +10 -0
  385. package/dist/WalletConnectionFlow/screens/index.js +10 -0
  386. package/dist/WalletConnectionFlow/types.d.ts +105 -0
  387. package/dist/WalletConnectionFlow/types.js +34 -0
  388. package/dist/WalletConnectionFlow/utils/persistence.d.ts +24 -0
  389. package/dist/WalletConnectionFlow/utils/persistence.js +83 -0
  390. package/dist/components/Logo.d.ts +7 -0
  391. package/dist/components/Logo.js +118 -0
  392. package/dist/components/QRCodeLoader.d.ts +4 -0
  393. package/dist/components/QRCodeLoader.js +8 -0
  394. package/dist/components/WalletDeposit/AnimatedButton.d.ts +17 -0
  395. package/dist/components/WalletDeposit/AnimatedButton.js +29 -0
  396. package/dist/components/WalletDeposit/components/ChainButton.d.ts +7 -0
  397. package/dist/components/WalletDeposit/components/ChainButton.js +5 -0
  398. package/dist/components/WalletDeposit/components/LoadingSquares.d.ts +1 -0
  399. package/dist/components/WalletDeposit/components/LoadingSquares.js +5 -0
  400. package/dist/components/WalletDeposit/components/TransactionTable.d.ts +13 -0
  401. package/dist/components/WalletDeposit/components/TransactionTable.js +58 -0
  402. package/dist/components/WalletDeposit/components/WaitingMessage.d.ts +6 -0
  403. package/dist/components/WalletDeposit/components/WaitingMessage.js +6 -0
  404. package/dist/components/WalletDeposit/constants.d.ts +15 -0
  405. package/dist/components/WalletDeposit/constants.js +32 -0
  406. package/dist/components/WalletDeposit/hooks.d.ts +9 -0
  407. package/dist/components/WalletDeposit/hooks.js +185 -0
  408. package/dist/components/WalletDeposit/index.d.ts +1 -0
  409. package/dist/components/WalletDeposit/index.js +136 -0
  410. package/dist/components/WalletDeposit/screens/AmountInputScreen.d.ts +12 -0
  411. package/dist/components/WalletDeposit/screens/AmountInputScreen.js +18 -0
  412. package/dist/components/WalletDeposit/screens/AppsTableScreen.d.ts +8 -0
  413. package/dist/components/WalletDeposit/screens/AppsTableScreen.js +28 -0
  414. package/dist/components/WalletDeposit/screens/ChainSelectionScreen.d.ts +5 -0
  415. package/dist/components/WalletDeposit/screens/ChainSelectionScreen.js +8 -0
  416. package/dist/components/WalletDeposit/screens/InitialScreen.d.ts +9 -0
  417. package/dist/components/WalletDeposit/screens/InitialScreen.js +18 -0
  418. package/dist/components/WalletDeposit/screens/SigningScreen.d.ts +6 -0
  419. package/dist/components/WalletDeposit/screens/SigningScreen.js +6 -0
  420. package/dist/components/WalletDeposit/screens/SuccessScreen.d.ts +12 -0
  421. package/dist/components/WalletDeposit/screens/SuccessScreen.js +7 -0
  422. package/dist/components/WalletDeposit/types.d.ts +48 -0
  423. package/dist/config/dynamic.d.ts +20 -0
  424. package/dist/config/dynamic.js +47 -0
  425. package/dist/config/solana.d.ts +25 -0
  426. package/dist/config/solana.js +41 -0
  427. package/dist/errors/types.d.ts +5 -1
  428. package/dist/errors/types.js +12 -0
  429. package/dist/hooks/useSolanaSession.d.ts +17 -0
  430. package/dist/hooks/useSolanaSession.js +180 -0
  431. package/dist/index.d.ts +2 -1
  432. package/dist/index.js +2 -1
  433. package/dist/main.css +1 -1
  434. package/dist/utils/dynamicImports.d.ts +24 -0
  435. package/dist/utils/dynamicImports.js +41 -0
  436. package/dist/utils/shortenString.d.ts +2 -0
  437. package/dist/utils/shortenString.js +8 -0
  438. package/dist/utils/solana-session.d.ts +84 -0
  439. package/dist/utils/solana-session.js +230 -0
  440. package/package.json +24 -17
  441. package/.eslintrc.js +0 -29
  442. package/dist/Common/NIcon.js +0 -7
  443. package/dist/components/AnimatedButton.d.ts +0 -9
  444. package/dist/components/AnimatedButton.js +0 -5
  445. package/postcss.config.js +0 -6
  446. package/src/Logic/getPseudoName.ts +0 -5832
  447. package/src/Logic/utils.ts +0 -162
  448. package/src/Logic/words.ts +0 -93571
  449. package/src/Modal/BackButton.tsx +0 -23
  450. package/src/Modal/ConnectView.tsx +0 -88
  451. package/src/Modal/CreateSessionView.tsx +0 -242
  452. package/src/Modal/CreateUserView.tsx +0 -195
  453. package/src/Modal/ModalHeader.tsx +0 -64
  454. package/src/Modal/N1WalletModal.tsx +0 -275
  455. package/src/Modal/NoWhitelistView.tsx +0 -61
  456. package/src/Modal/Sidebar/N1Sidebar.tsx +0 -172
  457. package/src/Modal/SigningView.tsx +0 -18
  458. package/src/Modal/SuccessView.tsx +0 -36
  459. package/src/Provider/LazyWalletProvider.tsx +0 -136
  460. package/src/Provider/N1WalletProvider.tsx +0 -208
  461. package/src/Provider/context.ts +0 -11
  462. package/src/Provider/hooks.ts +0 -22
  463. package/src/Provider/icons/CoinbaseWalletIcon.tsx +0 -27
  464. package/src/Provider/icons/ConnectionDotsSVG.tsx +0 -19
  465. package/src/Provider/icons/MetamaskIcon.tsx +0 -58
  466. package/src/Provider/icons/PhantomIcon.tsx +0 -26
  467. package/src/Provider/icons/UserIcon.tsx +0 -15
  468. package/src/Provider/icons/WalletConnectIcon.tsx +0 -15
  469. package/src/Provider/index.ts +0 -3
  470. package/src/Provider/types.ts +0 -77
  471. package/src/WidgetButton/N1ConnectButton.tsx +0 -72
  472. package/src/components/LazyLoadWrapper.tsx +0 -19
  473. package/src/config.ts +0 -2
  474. package/src/errors/types.ts +0 -49
  475. package/src/index.ts +0 -5
  476. package/src/main.css +0 -3
  477. package/src/styles/main.css +0 -3
  478. package/src/utils/lazyLoad.ts +0 -12
  479. package/src/utils/logger.ts +0 -98
  480. package/src/utils/react-shim.js +0 -8
  481. package/tailwind.config.js +0 -44
  482. package/tsconfig.json +0 -21
  483. /package/dist/{Common/NIcon.d.ts → components/WalletDeposit/types.js} +0 -0
@@ -0,0 +1,165 @@
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, Fragment as _Fragment } from "react/jsx-runtime";
38
+ import { useCallback, useEffect, useRef, useState } from 'react';
39
+ import { useN1WalletContext, useN1WalletInternalContext } from '../../../Provider/hooks';
40
+ import { ImageWithFallback } from '../components';
41
+ import { ANIMATION_EASE, MAX_DEPOSIT, MIN_DEPOSIT } from '../constants';
42
+ import { formatAmount, isNordConfigured } from '../utils/nordUtils';
43
+ export function AmountInputScreen(_a) {
44
+ var _this = this;
45
+ var amount = _a.amount, onAmountChange = _a.onAmountChange, onContinue = _a.onContinue, balance = _a.balance, propFaucetUrl = _a.faucetUrl, refreshBalance = _a.refreshBalance;
46
+ var _b = useState(false), isHovered = _b[0], setIsHovered = _b[1];
47
+ var _c = useState(false), isFaucetLoading = _c[0], setIsFaucetLoading = _c[1];
48
+ var _d = useState(null), faucetError = _d[0], setFaucetError = _d[1];
49
+ var _e = useState(false), tokensObtained = _e[0], setTokensObtained = _e[1];
50
+ var _f = useState(false), showFaucetSuccess = _f[0], setShowFaucetSuccess = _f[1];
51
+ var _g = useN1WalletContext(), address = _g.address, nord = _g.nord;
52
+ var contextFaucetUrl = useN1WalletInternalContext().faucetUrl;
53
+ var prevBalanceRef = useRef(balance);
54
+ var faucetUrl = propFaucetUrl || contextFaucetUrl;
55
+ // Get token information from Nord if available
56
+ var _h = useState('USDC'), tokenSymbol = _h[0], setTokenSymbol = _h[1];
57
+ var _j = useState('/images/tokens/usdc.svg'), tokenLogo = _j[0], setTokenLogo = _j[1];
58
+ var _k = useState(6), tokenDecimals = _k[0], setTokenDecimals = _k[1];
59
+ // Try to get token information from Nord
60
+ useEffect(function () {
61
+ if (nord && isNordConfigured(nord)) {
62
+ try {
63
+ // Find the USDC token or the first token
64
+ var usdcToken = nord.tokens.find(function (t) { return t.symbol === 'USDC'; }) || nord.tokens[0];
65
+ if (usdcToken) {
66
+ setTokenSymbol(usdcToken.symbol);
67
+ // Use a default logo if not available
68
+ setTokenLogo("/images/tokens/".concat(usdcToken.symbol.toLowerCase(), ".svg"));
69
+ setTokenDecimals(usdcToken.decimals);
70
+ }
71
+ }
72
+ catch (error) {
73
+ console.warn('Error getting token information from Nord:', error);
74
+ }
75
+ }
76
+ }, [nord]);
77
+ var handleAmountChange = function (e) {
78
+ var value = e.target.value;
79
+ if (/^\d*\.?\d*$/.test(value)) {
80
+ onAmountChange(value);
81
+ }
82
+ };
83
+ // todo:fix
84
+ var isValidAmount = true;
85
+ // Check if faucet is enabled and balance is low
86
+ var shouldShowFaucet = faucetUrl && balance < MIN_DEPOSIT && !tokensObtained;
87
+ // Determine if we should show the faucet overlay
88
+ var showFaucetOverlay = (shouldShowFaucet && (isFaucetLoading || faucetError)) || showFaucetSuccess;
89
+ // Function to request tokens from faucet
90
+ var requestTestnetTokens = useCallback(function () { return __awaiter(_this, void 0, void 0, function () {
91
+ var response, errorData, error_1;
92
+ return __generator(this, function (_a) {
93
+ switch (_a.label) {
94
+ case 0:
95
+ if (!faucetUrl || !address)
96
+ return [2 /*return*/];
97
+ _a.label = 1;
98
+ case 1:
99
+ _a.trys.push([1, 8, 9, 10]);
100
+ setIsFaucetLoading(true);
101
+ setFaucetError(null);
102
+ setShowFaucetSuccess(false);
103
+ return [4 /*yield*/, fetch(faucetUrl, {
104
+ method: 'POST',
105
+ headers: {
106
+ 'Content-Type': 'application/json',
107
+ },
108
+ body: JSON.stringify({ address: address }),
109
+ })];
110
+ case 2:
111
+ response = _a.sent();
112
+ if (!!response.ok) return [3 /*break*/, 4];
113
+ return [4 /*yield*/, response.json().catch(function () { return ({ error: 'Failed to request tokens' }); })];
114
+ case 3:
115
+ errorData = _a.sent();
116
+ throw new Error(errorData.error || 'Failed to request tokens');
117
+ case 4: return [4 /*yield*/, response.json()];
118
+ case 5:
119
+ _a.sent();
120
+ // Mark tokens as obtained to prevent further requests
121
+ setTokensObtained(true);
122
+ // Show success message
123
+ setShowFaucetSuccess(true);
124
+ if (!refreshBalance) return [3 /*break*/, 7];
125
+ return [4 /*yield*/, refreshBalance()];
126
+ case 6:
127
+ _a.sent();
128
+ _a.label = 7;
129
+ case 7:
130
+ setShowFaucetSuccess(false);
131
+ return [3 /*break*/, 10];
132
+ case 8:
133
+ error_1 = _a.sent();
134
+ console.error('Faucet error:', error_1);
135
+ setFaucetError(error_1 instanceof Error ? error_1.message : 'Failed to request tokens');
136
+ return [3 /*break*/, 10];
137
+ case 9:
138
+ setIsFaucetLoading(false);
139
+ return [7 /*endfinally*/];
140
+ case 10: return [2 /*return*/];
141
+ }
142
+ });
143
+ }); }, [faucetUrl, address, refreshBalance]);
144
+ // Request tokens automatically when faucet is enabled and balance is low
145
+ useEffect(function () {
146
+ if (shouldShowFaucet && !isFaucetLoading && !faucetError && !showFaucetSuccess) {
147
+ requestTestnetTokens();
148
+ }
149
+ }, [shouldShowFaucet, isFaucetLoading, faucetError, showFaucetSuccess, requestTestnetTokens]);
150
+ // Reset tokensObtained state if balance changes to a higher value
151
+ useEffect(function () {
152
+ // If balance has increased and is now sufficient, reset the tokensObtained flag
153
+ if (balance > prevBalanceRef.current && balance >= MIN_DEPOSIT) {
154
+ setTokensObtained(false);
155
+ setShowFaucetSuccess(false);
156
+ }
157
+ // Update the previous balance reference
158
+ prevBalanceRef.current = balance;
159
+ }, [balance]);
160
+ // Format the balance with the appropriate number of decimal places
161
+ var formattedBalance = formatAmount(balance, tokenDecimals);
162
+ return (_jsxs("div", { className: "overflow-hidden relative", children: [showFaucetOverlay && (_jsx("div", { className: "absolute inset-0 z-10 bg-white/70 dark:bg-neutral-900/80 backdrop-blur-md flex flex-col items-center justify-center p-6", children: isFaucetLoading ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "relative w-16 h-16 mb-4", children: _jsxs("div", { className: "absolute inset-0 grid grid-cols-2 gap-1", children: [_jsx("div", { className: "relative bg-white dark:bg-neutral-800 border border-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm", children: _jsx("div", { className: "absolute inset-x-0 bottom-0 h-full bg-main/40 dark:bg-main/30 animate-square-loader" }) }), _jsx("div", { className: "relative bg-white dark:bg-neutral-800 border border-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm", children: _jsx("div", { className: "absolute inset-x-0 bottom-0 h-full bg-main/40 dark:bg-main/30 animate-square-loader", style: { animationDelay: '0.2s' } }) }), _jsx("div", { className: "relative bg-white dark:bg-neutral-800 border border-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm", children: _jsx("div", { className: "absolute inset-x-0 bottom-0 h-full bg-main/40 dark:bg-main/30 animate-square-loader", style: { animationDelay: '0.4s' } }) }), _jsx("div", { className: "relative bg-white dark:bg-neutral-800 border border-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm", children: _jsx("div", { className: "absolute inset-x-0 bottom-0 h-full bg-main/40 dark:bg-main/30 animate-square-loader", style: { animationDelay: '0.6s' } }) })] }) }), _jsx("h3", { className: "text-lg font-medium text-gray-800 dark:text-white mb-2", children: "Obtaining Testnet Tokens" }), _jsx("p", { className: "text-sm text-gray-500 dark:text-neutral-400 text-center", children: "Please wait while we request testnet tokens for your wallet..." })] })) : showFaucetSuccess ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "text-green-500 text-4xl mb-4", children: "\u2713" }), _jsx("h3", { className: "text-lg font-medium text-gray-800 dark:text-white mb-2", children: "Tokens Obtained Successfully" }), _jsx("p", { className: "text-sm text-green-500 dark:text-green-400 text-center mb-4", children: "Your wallet has been funded with testnet tokens." }), _jsx("p", { className: "text-sm text-gray-500 dark:text-neutral-400 text-center", children: "Please wait while your balance updates..." })] })) : faucetError ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "text-red-500 text-4xl mb-4", children: "\u26A0\uFE0F" }), _jsx("h3", { className: "text-lg font-medium text-gray-800 dark:text-white mb-2", children: "Failed to Get Tokens" }), _jsx("p", { className: "text-sm text-red-500 dark:text-red-400 text-center mb-4", children: faucetError }), _jsx("button", { onClick: requestTestnetTokens, className: "px-4 py-2 bg-main text-white rounded-md hover:bg-main/90 transition-colors", children: "Try Again" })] })) : null })), _jsx("h2", { className: "text-xl text-gray-800 dark:text-white font-semibold mb-6 text-center", children: "Enter Amount" }), _jsxs("div", { className: "space-y-8", children: [_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-sm text-gray-500 dark:text-neutral-400", children: "Amount" }), _jsxs("span", { className: "text-sm text-gray-500 dark:text-neutral-400", children: ["Balance: ", formattedBalance, " ", tokenSymbol] })] }), _jsxs("div", { className: "relative", children: [_jsx("input", { type: "text", defaultValue: amount, onChange: handleAmountChange, placeholder: "0.00", className: "w-full bg-white dark:bg-neutral-950 border-2 border-gray-100 dark:border-neutral-800 rounded-md px-4 py-3 text-gray-900 dark:text-white placeholder-gray-400 dark:placeholder-neutral-500 focus:outline-none focus:ring-0 focus:border-main dark:focus:border-main transition-colors duration-200" }), _jsxs("div", { className: "absolute right-4 top-1/2 -translate-y-1/2 flex items-center gap-2", children: [_jsx(ImageWithFallback, { src: tokenLogo, width: 20, height: 20, alt: tokenSymbol, fallbackClassName: "w-5 h-5 rounded-full text-xs font-bold flex items-center justify-center", fallbackBgColor: "bg-blue-100 dark:bg-blue-900", fallbackTextColor: "text-blue-500 dark:text-blue-300", fallbackText: tokenSymbol.charAt(0) }), _jsx("span", { className: "text-gray-400 dark:text-neutral-500", children: tokenSymbol })] })] }), _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("span", { className: "text-xs text-gray-400 dark:text-neutral-500", children: ["Min: ", MIN_DEPOSIT, " ", tokenSymbol] }), _jsxs("span", { className: "text-xs text-gray-400 dark:text-neutral-500", children: ["Max: ", MAX_DEPOSIT, " ", tokenSymbol] })] })] }), _jsx("button", { onClick: onContinue, disabled: !isValidAmount, 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(!isValidAmount ? 'opacity-50 cursor-not-allowed hover:border-gray-200 dark:hover:border-gray-800' : '', "\n "), style: {
163
+ transform: isHovered && isValidAmount ? 'scale(0.99)' : 'scale(1)',
164
+ }, 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: "Continue" }) })] })] }));
165
+ }
@@ -0,0 +1,6 @@
1
+ import { WaitingMessageState } from '../types';
2
+ interface DepositProgressScreenProps {
3
+ message: WaitingMessageState;
4
+ }
5
+ export declare function DepositProgressScreen({ message, }: DepositProgressScreenProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,44 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import { WaitingMessage } from '../components/WaitingMessage';
14
+ import { useN1WalletInternalContext } from '../../../Provider/hooks';
15
+ import { N1SessionMode } from '../../../Provider/types';
16
+ import { useState, useEffect } from 'react';
17
+ export function DepositProgressScreen(_a) {
18
+ var message = _a.message;
19
+ var sessionMode = useN1WalletInternalContext().sessionMode;
20
+ var _b = useState(0), elapsedTime = _b[0], setElapsedTime = _b[1];
21
+ var maxTime = 90; // Maximum time in seconds
22
+ // Start timer when component mounts
23
+ useEffect(function () {
24
+ var timer = setInterval(function () {
25
+ setElapsedTime(function (prevTime) {
26
+ if (prevTime >= maxTime) {
27
+ clearInterval(timer);
28
+ return maxTime;
29
+ }
30
+ return prevTime + 1;
31
+ });
32
+ }, 1000);
33
+ // Clean up timer on unmount
34
+ return function () { return clearInterval(timer); };
35
+ }, []);
36
+ // Determine the appropriate message based on session mode
37
+ var getSessionSpecificMessage = function () {
38
+ var currentSessionMode = sessionMode !== null && sessionMode !== void 0 ? sessionMode : N1SessionMode.NTS;
39
+ var accountType = currentSessionMode === N1SessionMode.Nord ? 'Nord' : 'NTS';
40
+ return __assign(__assign({}, message), { title: message.title || "Processing ".concat(accountType, " Deposit"), subtitle: message.subtitle || "Please wait while we process your ".concat(accountType, " deposit") });
41
+ };
42
+ var sessionMessage = getSessionSpecificMessage();
43
+ return (_jsxs("div", { className: "overflow-hidden relative", children: [_jsx(WaitingMessage, { message: sessionMessage }), _jsxs("div", { className: "text-center mt-4 text-sm text-gray-500", children: ["Time elapsed: ", elapsedTime, "s / ", maxTime, "s"] })] }));
44
+ }
@@ -0,0 +1,8 @@
1
+ import { TableValues } from '../types';
2
+ interface DepositSuccessScreenProps {
3
+ amount: string;
4
+ tableValues: TableValues;
5
+ onContinue: () => void;
6
+ }
7
+ export declare function DepositSuccessScreen({ amount, tableValues, onContinue, }: DepositSuccessScreenProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,119 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import { useEffect, useState } from 'react';
14
+ import { TransactionTable } from '../components/TransactionTable';
15
+ import { ANIMATION_EASE, TYPING_INTERVAL } from '../constants';
16
+ import { useN1WalletContext } from '../../../Provider/hooks';
17
+ import { isNordConfigured } from '../utils/nordUtils';
18
+ export function DepositSuccessScreen(_a) {
19
+ var amount = _a.amount, tableValues = _a.tableValues, onContinue = _a.onContinue;
20
+ var nord = useN1WalletContext().nord;
21
+ var _b = useState(false), isHovered = _b[0], setIsHovered = _b[1];
22
+ var _c = useState(false), showDetails = _c[0], setShowDetails = _c[1];
23
+ var _d = useState({
24
+ amount: { text: '', visible: false, typing: false },
25
+ tx: { text: '', visible: false, typing: false },
26
+ from: { text: '', visible: false, typing: false },
27
+ to: { text: '', visible: false, typing: false },
28
+ network: { text: '', visible: false, typing: false },
29
+ status: { text: '', visible: false, typing: false },
30
+ }), animatedTableValues = _d[0], setAnimatedTableValues = _d[1];
31
+ // Add state to track if the button should be enabled
32
+ var _e = useState(false), isContinueEnabled = _e[0], setIsContinueEnabled = _e[1];
33
+ // Add state to show a message about waiting
34
+ var _f = useState(true), showWaitingMessage = _f[0], setShowWaitingMessage = _f[1];
35
+ // Get token information from Nord if available
36
+ var _g = useState('USDC'), tokenSymbol = _g[0], setTokenSymbol = _g[1];
37
+ // Try to get token information from Nord
38
+ useEffect(function () {
39
+ if (nord && isNordConfigured(nord)) {
40
+ try {
41
+ // Find the USDC token or the first token
42
+ var usdcToken = nord.tokens.find(function (t) { return t.symbol === 'USDC'; }) || nord.tokens[0];
43
+ if (usdcToken) {
44
+ setTokenSymbol(usdcToken.symbol);
45
+ }
46
+ }
47
+ catch (error) {
48
+ console.warn('Error getting token information from Nord:', error);
49
+ }
50
+ }
51
+ }, [nord]);
52
+ // Add animation to table values
53
+ useEffect(function () {
54
+ if (!showDetails)
55
+ return;
56
+ // Extract the text values from the tableValues
57
+ var values = {
58
+ amount: "".concat(Number(amount).toLocaleString(), " ").concat(tokenSymbol),
59
+ tx: tableValues.tx.text,
60
+ from: tableValues.from.text,
61
+ to: tableValues.to.text,
62
+ network: tableValues.network.text,
63
+ status: tableValues.status.text,
64
+ };
65
+ // Animate each field with typing effect
66
+ Object.entries(values).forEach(function (_a, index) {
67
+ var key = _a[0], value = _a[1];
68
+ setTimeout(function () {
69
+ // Make the field visible first
70
+ setAnimatedTableValues(function (prev) {
71
+ var _a;
72
+ return (__assign(__assign({}, prev), (_a = {}, _a[key] = __assign(__assign({}, prev[key]), { visible: true, typing: true }), _a)));
73
+ });
74
+ var textIndex = 0;
75
+ // Type out each character with the typing animation
76
+ var interval = setInterval(function () {
77
+ if (textIndex <= value.length) {
78
+ setAnimatedTableValues(function (prev) {
79
+ var _a;
80
+ return (__assign(__assign({}, prev), (_a = {}, _a[key] = {
81
+ text: value.slice(0, textIndex),
82
+ visible: true,
83
+ typing: textIndex < value.length,
84
+ }, _a)));
85
+ });
86
+ textIndex++;
87
+ }
88
+ else {
89
+ clearInterval(interval);
90
+ setAnimatedTableValues(function (prev) {
91
+ var _a;
92
+ return (__assign(__assign({}, prev), (_a = {}, _a[key] = {
93
+ text: value,
94
+ visible: true,
95
+ typing: false,
96
+ }, _a)));
97
+ });
98
+ }
99
+ }, TYPING_INTERVAL);
100
+ }, index * 300); // Slightly faster staggering for better UX
101
+ });
102
+ }, [tableValues, showDetails, amount, tokenSymbol]);
103
+ // Enable the continue button after a minimum viewing time
104
+ useEffect(function () {
105
+ var enableTimer = setTimeout(function () {
106
+ setIsContinueEnabled(true);
107
+ setShowWaitingMessage(false);
108
+ }, 4000);
109
+ return function () { return clearTimeout(enableTimer); };
110
+ }, []);
111
+ var toggleDetails = function () {
112
+ setShowDetails(function (prev) { return !prev; });
113
+ };
114
+ return (_jsx("div", { className: "relative w-full px-4", children: _jsx("div", { className: "flex flex-col space-y-6", children: _jsxs("div", { className: "w-full", children: [_jsx("div", { className: "relative w-full px-3 py-3 flex items-center justify-center transition-all duration-300 ".concat(ANIMATION_EASE, " ").concat(showDetails ? 'opacity-0 max-h-0' : 'opacity-100 max-h-[200px]'), children: _jsxs("div", { className: "relative w-full px-5 py-8 transition-all duration-300 ".concat(ANIMATION_EASE, " ").concat(showDetails ? 'max-h-0 overflow-hidden' : 'max-h-[200px]'), children: [_jsx("div", { className: "w-2 h-2 bg-green-200 dark:bg-emerald-800 absolute -top-2 -left-2 rounded-sm" }), _jsx("div", { className: "w-2 h-2 bg-green-200 dark:bg-emerald-800 absolute -top-2 -right-2 rounded-sm" }), _jsx("div", { className: "w-2 h-2 bg-green-200 dark:bg-emerald-800 absolute -bottom-2 -left-2 rounded-sm" }), _jsx("div", { className: "w-2 h-2 bg-green-200 dark:bg-emerald-800 absolute -bottom-2 -right-2 rounded-sm" }), _jsxs("p", { className: "text-5xl md:text-7xl tracking-tight text-green-500/80 dark:text-emerald-500/80 font-medium pt-4 underline text-center animate-fade-up", style: { animationDelay: '0.3s' }, children: ["+", Number(amount).toLocaleString(), _jsx("span", { className: "text-xl md:text-2xl text-green-500/50 dark:text-emerald-500/50 ml-2", children: tokenSymbol })] }), _jsx("div", { className: "absolute bottom-0 left-0 right-0 flex justify-center -mb-3", children: _jsxs("button", { onClick: toggleDetails, className: "\n group flex items-center space-x-1 px-3 py-1 text-xs font-medium \n transition-colors duration-200 focus:outline-none\n ".concat(showDetails
115
+ ? 'text-green-600 dark:text-emerald-400 hover:text-green-700 dark:hover:text-emerald-300'
116
+ : 'text-gray-500 dark:text-gray-400 hover:text-green-600 dark:hover:text-emerald-400', "\n "), children: [_jsx("span", { children: "View details" }), _jsx("svg", { xmlns: "http://www.w3.org/2000/svg", className: "h-3 w-3 transition-transform duration-200", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) })] }) })] }) }), _jsx("div", { className: "transition-all duration-300 ease-in-out overflow-hidden ".concat(showDetails ? 'max-h-[500px] opacity-100 -mt-4' : 'max-h-0 opacity-0'), children: _jsx(TransactionTable, { tableValues: animatedTableValues, onClose: toggleDetails }) }), _jsxs("div", { className: "mt-6", children: [showWaitingMessage && (_jsx("p", { className: "text-sm text-gray-600 dark:text-neutral-400 text-center mb-2 animate-pulse", children: "Please wait a moment..." })), _jsx("button", { onClick: isContinueEnabled ? onContinue : 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(!isContinueEnabled ? 'opacity-50 cursor-not-allowed' : '', "\n "), style: {
117
+ transform: isHovered && isContinueEnabled ? 'scale(0.99)' : 'scale(1)',
118
+ }, disabled: !isContinueEnabled, 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: "Continue" }) })] })] }) }) }));
119
+ }
@@ -0,0 +1,6 @@
1
+ interface AuthLoadingScreenProps {
2
+ isCreatingAccount?: boolean;
3
+ onAuthComplete?: (success: boolean) => void;
4
+ }
5
+ export declare function AuthLoadingScreen({ isCreatingAccount, onAuthComplete }: AuthLoadingScreenProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,126 @@
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, useCallback, useRef } from 'react';
39
+ import { useN1WalletContext, useN1WalletInternalContext } from '../../../Provider/hooks';
40
+ import { LoadingSquares } from '../components/LoadingSquares';
41
+ import { logger } from '../../../utils/logger';
42
+ import { ANIMATION_EASE } from '../constants';
43
+ export function AuthLoadingScreen(_a) {
44
+ var _this = this;
45
+ var _b = _a.isCreatingAccount, isCreatingAccount = _b === void 0 ? false : _b, onAuthComplete = _a.onAuthComplete;
46
+ var _c = useN1WalletInternalContext(), sessionMode = _c.sessionMode, setNordUser = _c.setNordUser;
47
+ var _d = useN1WalletContext(), address = _d.address, nord = _d.nord, nordUser = _d.nordUser;
48
+ var _e = useState('loading'), authStatus = _e[0], setAuthStatus = _e[1];
49
+ var _f = useState(null), errorMessage = _f[0], setErrorMessage = _f[1];
50
+ var _g = useState(null), statusMessage = _g[0], setStatusMessage = _g[1];
51
+ var _h = useState(false), isHovered = _h[0], setIsHovered = _h[1];
52
+ var authInitiatedRef = useRef(false);
53
+ var performAuth = useCallback(function () { return __awaiter(_this, void 0, void 0, function () {
54
+ var sessionPubKey, sessionId, sessionIdKey, error_1;
55
+ return __generator(this, function (_a) {
56
+ switch (_a.label) {
57
+ case 0:
58
+ _a.trys.push([0, 3, , 4]);
59
+ // Step 1: Tell user to sign transaction
60
+ setStatusMessage("Please sign the transaction to authenticate your session");
61
+ if (!nordUser) {
62
+ throw new Error('Nord user is not initialized');
63
+ }
64
+ // Step 2: Call nordUser.refreshSession and get sessionId
65
+ setStatusMessage("Session is being authenticated...");
66
+ sessionPubKey = nordUser.sessionPubKey;
67
+ if (!sessionPubKey) {
68
+ throw new Error('Session public key is not available');
69
+ }
70
+ // Refresh the session
71
+ return [4 /*yield*/, nordUser.refreshSession(sessionPubKey)];
72
+ case 1:
73
+ // Refresh the session
74
+ _a.sent();
75
+ return [4 /*yield*/, nordUser.updateAccountId()
76
+ // Get the sessionId after refresh
77
+ ];
78
+ case 2:
79
+ _a.sent();
80
+ sessionId = nordUser.sessionId;
81
+ if (!sessionId) {
82
+ throw new Error('Failed to get session ID after refresh');
83
+ }
84
+ logger.debug('Session refreshed successfully', { sessionId: sessionId.toString() });
85
+ // Step 3: Store sessionId in localStorage
86
+ if (address) {
87
+ sessionIdKey = "n1_sessionId_".concat(address);
88
+ localStorage.setItem(sessionIdKey, sessionId.toString());
89
+ logger.debug('Stored sessionId in localStorage', { key: sessionIdKey });
90
+ }
91
+ // Step 4: Update status to success
92
+ setAuthStatus('success');
93
+ // Step 5: Call onAuthComplete callback with success=true
94
+ if (onAuthComplete) {
95
+ onAuthComplete(true);
96
+ }
97
+ setNordUser(nordUser);
98
+ return [3 /*break*/, 4];
99
+ case 3:
100
+ error_1 = _a.sent();
101
+ console.error('Authentication error:', error_1);
102
+ setAuthStatus('error');
103
+ setErrorMessage(error_1 instanceof Error ? error_1.message : 'Unknown error occurred');
104
+ return [3 /*break*/, 4];
105
+ case 4: return [2 /*return*/];
106
+ }
107
+ });
108
+ }); }, [onAuthComplete, isCreatingAccount, sessionMode, address, nord]);
109
+ useEffect(function () {
110
+ if (!authInitiatedRef.current) {
111
+ authInitiatedRef.current = true;
112
+ performAuth();
113
+ }
114
+ }, []);
115
+ var handleRetry = function () {
116
+ setAuthStatus('loading');
117
+ setErrorMessage(null);
118
+ setStatusMessage(null);
119
+ performAuth();
120
+ };
121
+ 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' && statusMessage ? statusMessage : ('Please wait while we create your Nord account'), authStatus === 'success' && (isCreatingAccount
122
+ ? 'Your account has been created successfully'
123
+ : 'You have been logged in successfully'), authStatus === 'error' && (errorMessage || 'There was an error during authentication. Please try again.')] }), authStatus === 'error' && (_jsx("div", { className: "mt-6", children: _jsx("button", { onClick: handleRetry, 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: {
124
+ transform: isHovered ? 'scale(0.99)' : 'scale(1)',
125
+ }, 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" }) }) }))] })] }));
126
+ }
@@ -0,0 +1,5 @@
1
+ interface NordAuthScreenProps {
2
+ onCreateSession: () => void;
3
+ }
4
+ export declare function NordAuthScreen({ onCreateSession }: NordAuthScreenProps): import("react/jsx-runtime").JSX.Element;
5
+ export {};
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { ANIMATION_EASE } from '../constants';
4
+ export function NordAuthScreen(_a) {
5
+ var onCreateSession = _a.onCreateSession;
6
+ var _b = useState(null), isHovered = _b[0], setIsHovered = _b[1];
7
+ // Get the appropriate title and description based on Nord configuration
8
+ var getTitle = function () {
9
+ return 'Session Authentication';
10
+ };
11
+ var getDescription = function () {
12
+ return 'Create a session';
13
+ };
14
+ return (_jsxs("div", { className: "overflow-hidden relative", children: [_jsx("h2", { className: "text-xl text-gray-800 dark:text-white font-semibold mb-2 text-center", children: getTitle() }), _jsx("p", { className: "text-sm text-gray-600 dark:text-neutral-400 text-center mb-8", children: getDescription() }), _jsx("div", { className: "space-y-4", children: _jsx("button", { onClick: onCreateSession, onMouseEnter: function () { return setIsHovered('create'); }, 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: {
15
+ transform: isHovered === 'create' ? 'scale(0.99)' : 'scale(1)',
16
+ }, 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: "Create Account" }) }) })] }));
17
+ }
@@ -0,0 +1,6 @@
1
+ interface AuthLoadingScreenProps {
2
+ isCreatingAccount?: boolean;
3
+ onAuthComplete?: (success: boolean) => void;
4
+ }
5
+ export declare function AuthLoadingScreen({ isCreatingAccount, onAuthComplete }: AuthLoadingScreenProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};