@n1xyz/wallet-widget 0.0.8 → 0.0.10

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 (514) hide show
  1. package/dist/Logic/getPseudoName.js +1 -0
  2. package/dist/Logic/getPseudoName.js.map +1 -0
  3. package/dist/Logic/sessionManager.js +1 -0
  4. package/dist/Logic/sessionManager.js.map +1 -0
  5. package/dist/Logic/transactionManager.js +1 -0
  6. package/dist/Logic/transactionManager.js.map +1 -0
  7. package/dist/Logic/utils.js +1 -0
  8. package/dist/Logic/utils.js.map +1 -0
  9. package/dist/Logic/words.js +1 -0
  10. package/dist/Logic/words.js.map +1 -0
  11. package/dist/Modal/LoadingFallback.js +2 -1
  12. package/dist/Modal/LoadingFallback.js.map +1 -0
  13. package/dist/Modal/N1WalletModal.js +5 -5
  14. package/dist/Modal/N1WalletModal.js.map +1 -0
  15. package/dist/Modal/NTSFlow/LoadingFallback.js +2 -1
  16. package/dist/Modal/NTSFlow/LoadingFallback.js.map +1 -0
  17. package/dist/Modal/NTSFlow/NTSFlow.js +1 -0
  18. package/dist/Modal/NTSFlow/NTSFlow.js.map +1 -0
  19. package/dist/Modal/NTSFlow/components/BackButton.js +3 -2
  20. package/dist/Modal/NTSFlow/components/BackButton.js.map +1 -0
  21. package/dist/Modal/NTSFlow/components/ModalHeader.js +2 -1
  22. package/dist/Modal/NTSFlow/components/ModalHeader.js.map +1 -0
  23. package/dist/Modal/NTSFlow/index.js +1 -0
  24. package/dist/Modal/NTSFlow/index.js.map +1 -0
  25. package/dist/Modal/NTSFlow/views/ConnectView.js +3 -2
  26. package/dist/Modal/NTSFlow/views/ConnectView.js.map +1 -0
  27. package/dist/Modal/NTSFlow/views/CreateSessionView.js +6 -5
  28. package/dist/Modal/NTSFlow/views/CreateSessionView.js.map +1 -0
  29. package/dist/Modal/NTSFlow/views/CreateUserView.js +2 -1
  30. package/dist/Modal/NTSFlow/views/CreateUserView.js.map +1 -0
  31. package/dist/Modal/NTSFlow/views/NoWhitelistView.js +4 -3
  32. package/dist/Modal/NTSFlow/views/NoWhitelistView.js.map +1 -0
  33. package/dist/Modal/NTSFlow/views/SigningView.js +2 -1
  34. package/dist/Modal/NTSFlow/views/SigningView.js.map +1 -0
  35. package/dist/Modal/NTSFlow/views/SuccessView.js +1 -0
  36. package/dist/Modal/NTSFlow/views/SuccessView.js.map +1 -0
  37. package/dist/Modal/NordFlow/NordFlow.js +8 -12
  38. package/dist/Modal/NordFlow/NordFlow.js.map +1 -0
  39. package/dist/Modal/NordFlow/components/ChainButton.js +6 -5
  40. package/dist/Modal/NordFlow/components/ChainButton.js.map +1 -0
  41. package/dist/Modal/NordFlow/components/EVMChainsButton.js +5 -4
  42. package/dist/Modal/NordFlow/components/EVMChainsButton.js.map +1 -0
  43. package/dist/Modal/NordFlow/components/ImageWithFallback.js +2 -1
  44. package/dist/Modal/NordFlow/components/ImageWithFallback.js.map +1 -0
  45. package/dist/Modal/NordFlow/components/LoadingSquares.js +2 -1
  46. package/dist/Modal/NordFlow/components/LoadingSquares.js.map +1 -0
  47. package/dist/Modal/NordFlow/components/MoreButton.js +5 -4
  48. package/dist/Modal/NordFlow/components/MoreButton.js.map +1 -0
  49. package/dist/Modal/NordFlow/components/TransactionTable.js +7 -6
  50. package/dist/Modal/NordFlow/components/TransactionTable.js.map +1 -0
  51. package/dist/Modal/NordFlow/components/WaitingMessage.js +2 -1
  52. package/dist/Modal/NordFlow/components/WaitingMessage.js.map +1 -0
  53. package/dist/Modal/NordFlow/components/index.js +1 -0
  54. package/dist/Modal/NordFlow/components/index.js.map +1 -0
  55. package/dist/Modal/NordFlow/constants.js +1 -0
  56. package/dist/Modal/NordFlow/constants.js.map +1 -0
  57. package/dist/Modal/NordFlow/hoc/index.js +1 -0
  58. package/dist/Modal/NordFlow/hoc/index.js.map +1 -0
  59. package/dist/Modal/NordFlow/hoc/withImageFallback.js +1 -0
  60. package/dist/Modal/NordFlow/hoc/withImageFallback.js.map +1 -0
  61. package/dist/Modal/NordFlow/hooks/index.js +1 -0
  62. package/dist/Modal/NordFlow/hooks/index.js.map +1 -0
  63. package/dist/Modal/NordFlow/hooks/useDepositFlow.js +31 -30
  64. package/dist/Modal/NordFlow/hooks/useDepositFlow.js.map +1 -0
  65. package/dist/Modal/NordFlow/hooks/useFlowState.js +44 -22
  66. package/dist/Modal/NordFlow/hooks/useFlowState.js.map +1 -0
  67. package/dist/Modal/NordFlow/hooks/useInterruptHandler.js +19 -16
  68. package/dist/Modal/NordFlow/hooks/useInterruptHandler.js.map +1 -0
  69. package/dist/Modal/NordFlow/hooks/useNordInstance.d.ts +0 -4
  70. package/dist/Modal/NordFlow/hooks/useNordInstance.js +65 -25
  71. package/dist/Modal/NordFlow/hooks/useNordInstance.js.map +1 -0
  72. package/dist/Modal/NordFlow/hooks/useNordWalletConnect.js +73 -52
  73. package/dist/Modal/NordFlow/hooks/useNordWalletConnect.js.map +1 -0
  74. package/dist/Modal/NordFlow/index.js +1 -0
  75. package/dist/Modal/NordFlow/index.js.map +1 -0
  76. package/dist/Modal/NordFlow/screens/01-ConnectWalletScreen.js +4 -3
  77. package/dist/Modal/NordFlow/screens/01-ConnectWalletScreen.js.map +1 -0
  78. package/dist/Modal/NordFlow/screens/02-EvmWalletAuthScreen.js +5 -4
  79. package/dist/Modal/NordFlow/screens/02-EvmWalletAuthScreen.js.map +1 -0
  80. package/dist/Modal/NordFlow/screens/03-ChainSelectionScreen.js +3 -2
  81. package/dist/Modal/NordFlow/screens/03-ChainSelectionScreen.js.map +1 -0
  82. package/dist/Modal/NordFlow/screens/04-AmountInputScreen.js +3 -2
  83. package/dist/Modal/NordFlow/screens/04-AmountInputScreen.js.map +1 -0
  84. package/dist/Modal/NordFlow/screens/05-DepositProgressScreen.js +2 -1
  85. package/dist/Modal/NordFlow/screens/05-DepositProgressScreen.js.map +1 -0
  86. package/dist/Modal/NordFlow/screens/06-DepositSuccessScreen.js +5 -4
  87. package/dist/Modal/NordFlow/screens/06-DepositSuccessScreen.js.map +1 -0
  88. package/dist/Modal/NordFlow/screens/07-AuthLoadingScreen.js +5 -4
  89. package/dist/Modal/NordFlow/screens/07-AuthLoadingScreen.js.map +1 -0
  90. package/dist/Modal/NordFlow/screens/08-FinalSuccessScreen.js +3 -2
  91. package/dist/Modal/NordFlow/screens/08-FinalSuccessScreen.js.map +1 -0
  92. package/dist/Modal/NordFlow/screens/09-ErrorScreen.js +4 -3
  93. package/dist/Modal/NordFlow/screens/09-ErrorScreen.js.map +1 -0
  94. package/dist/Modal/NordFlow/screens/index.js +1 -0
  95. package/dist/Modal/NordFlow/screens/index.js.map +1 -0
  96. package/dist/Modal/NordFlow/types.js +1 -0
  97. package/dist/Modal/NordFlow/types.js.map +1 -0
  98. package/dist/Modal/NordFlow/utils/imageUtils.js +1 -0
  99. package/dist/Modal/NordFlow/utils/imageUtils.js.map +1 -0
  100. package/dist/Modal/NordFlow/utils/index.js +1 -0
  101. package/dist/Modal/NordFlow/utils/index.js.map +1 -0
  102. package/dist/Modal/NordFlow/utils/nordUtils.js +1 -0
  103. package/dist/Modal/NordFlow/utils/nordUtils.js.map +1 -0
  104. package/dist/Modal/NordFlow/utils/persistence.js +1 -0
  105. package/dist/Modal/NordFlow/utils/persistence.js.map +1 -0
  106. package/dist/Modal/Sidebar/N1Sidebar.js +12 -10
  107. package/dist/Modal/Sidebar/N1Sidebar.js.map +1 -0
  108. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketOverview.js +1 -0
  109. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketOverview.js.map +1 -0
  110. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketSelector.js +6 -5
  111. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketSelector.js.map +1 -0
  112. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketStats.js +4 -3
  113. package/dist/Modal/Sidebar/NordTradingView/MarketOverview/MarketStats.js.map +1 -0
  114. package/dist/Modal/Sidebar/NordTradingView/NordTradingView.js +3 -2
  115. package/dist/Modal/Sidebar/NordTradingView/NordTradingView.js.map +1 -0
  116. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBook.js +3 -2
  117. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBook.js.map +1 -0
  118. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookDepthVisualizer.js +2 -1
  119. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookDepthVisualizer.js.map +1 -0
  120. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookHeader.js +5 -4
  121. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookHeader.js.map +1 -0
  122. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookTable.js +7 -6
  123. package/dist/Modal/Sidebar/NordTradingView/OrderBook/OrderBookTable.js.map +1 -0
  124. package/dist/Modal/Sidebar/NordTradingView/TradeForm/AmountInput.js +2 -1
  125. package/dist/Modal/Sidebar/NordTradingView/TradeForm/AmountInput.js.map +1 -0
  126. package/dist/Modal/Sidebar/NordTradingView/TradeForm/BuySellTabs.js +4 -3
  127. package/dist/Modal/Sidebar/NordTradingView/TradeForm/BuySellTabs.js.map +1 -0
  128. package/dist/Modal/Sidebar/NordTradingView/TradeForm/FillModeSelector.js +8 -7
  129. package/dist/Modal/Sidebar/NordTradingView/TradeForm/FillModeSelector.js.map +1 -0
  130. package/dist/Modal/Sidebar/NordTradingView/TradeForm/OrderTypeSelector.js +14 -13
  131. package/dist/Modal/Sidebar/NordTradingView/TradeForm/OrderTypeSelector.js.map +1 -0
  132. package/dist/Modal/Sidebar/NordTradingView/TradeForm/PriceInput.js +2 -1
  133. package/dist/Modal/Sidebar/NordTradingView/TradeForm/PriceInput.js.map +1 -0
  134. package/dist/Modal/Sidebar/NordTradingView/TradeForm/SubmitButton.js +3 -2
  135. package/dist/Modal/Sidebar/NordTradingView/TradeForm/SubmitButton.js.map +1 -0
  136. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TotalCalculator.js +2 -1
  137. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TotalCalculator.js.map +1 -0
  138. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TradeForm.js +6 -5
  139. package/dist/Modal/Sidebar/NordTradingView/TradeForm/TradeForm.js.map +1 -0
  140. package/dist/Modal/Sidebar/NordTradingView/UserBalances/UserBalances.js +2 -1
  141. package/dist/Modal/Sidebar/NordTradingView/UserBalances/UserBalances.js.map +1 -0
  142. package/dist/Modal/Sidebar/NordTradingView/UserOrders/UserOrders.js +6 -5
  143. package/dist/Modal/Sidebar/NordTradingView/UserOrders/UserOrders.js.map +1 -0
  144. package/dist/Modal/Sidebar/NordTradingView/UserPositions/UserPositions.js +5 -4
  145. package/dist/Modal/Sidebar/NordTradingView/UserPositions/UserPositions.js.map +1 -0
  146. package/dist/Provider/LazyWalletProvider.js +1 -0
  147. package/dist/Provider/LazyWalletProvider.js.map +1 -0
  148. package/dist/Provider/N1WalletProvider.js +3 -12
  149. package/dist/Provider/N1WalletProvider.js.map +1 -0
  150. package/dist/Provider/context.js +1 -0
  151. package/dist/Provider/context.js.map +1 -0
  152. package/dist/Provider/hooks.js +1 -0
  153. package/dist/Provider/hooks.js.map +1 -0
  154. package/dist/Provider/icons/CoinbaseWalletIcon.js +1 -0
  155. package/dist/Provider/icons/CoinbaseWalletIcon.js.map +1 -0
  156. package/dist/Provider/icons/ConnectionDotsSVG.js +1 -0
  157. package/dist/Provider/icons/ConnectionDotsSVG.js.map +1 -0
  158. package/dist/Provider/icons/MetamaskIcon.js +1 -0
  159. package/dist/Provider/icons/MetamaskIcon.js.map +1 -0
  160. package/dist/Provider/icons/PhantomIcon.js +1 -0
  161. package/dist/Provider/icons/PhantomIcon.js.map +1 -0
  162. package/dist/Provider/icons/UserIcon.js +1 -0
  163. package/dist/Provider/icons/UserIcon.js.map +1 -0
  164. package/dist/Provider/icons/WalletConnectIcon.js +1 -0
  165. package/dist/Provider/icons/WalletConnectIcon.js.map +1 -0
  166. package/dist/Provider/index.js +1 -0
  167. package/dist/Provider/index.js.map +1 -0
  168. package/dist/Provider/types.js +1 -0
  169. package/dist/Provider/types.js.map +1 -0
  170. package/dist/WidgetButton/N1ConnectButton.js +1 -0
  171. package/dist/WidgetButton/N1ConnectButton.js.map +1 -0
  172. package/dist/components/Logo.js +1 -0
  173. package/dist/components/Logo.js.map +1 -0
  174. package/dist/components/QRCodeLoader.js +2 -1
  175. package/dist/components/QRCodeLoader.js.map +1 -0
  176. package/dist/components/logos/ArbitrumLogo.js +1 -0
  177. package/dist/components/logos/ArbitrumLogo.js.map +1 -0
  178. package/dist/components/logos/BaseLogo.js +1 -0
  179. package/dist/components/logos/BaseLogo.js.map +1 -0
  180. package/dist/components/logos/BeraLogo.js +1 -0
  181. package/dist/components/logos/BeraLogo.js.map +1 -0
  182. package/dist/components/logos/BitcoinLogo.js +1 -0
  183. package/dist/components/logos/BitcoinLogo.js.map +1 -0
  184. package/dist/components/logos/EVMChainsGroup.js +2 -1
  185. package/dist/components/logos/EVMChainsGroup.js.map +1 -0
  186. package/dist/components/logos/EthereumLogo.js +1 -0
  187. package/dist/components/logos/EthereumLogo.js.map +1 -0
  188. package/dist/components/logos/HyperliquidLogo.js +1 -0
  189. package/dist/components/logos/HyperliquidLogo.js.map +1 -0
  190. package/dist/components/logos/MoreChainsGroup.js +2 -1
  191. package/dist/components/logos/MoreChainsGroup.js.map +1 -0
  192. package/dist/components/logos/OptimismLogo.js +1 -0
  193. package/dist/components/logos/OptimismLogo.js.map +1 -0
  194. package/dist/components/logos/SolanaLogo.js +1 -0
  195. package/dist/components/logos/SolanaLogo.js.map +1 -0
  196. package/dist/components/logos/index.js +1 -0
  197. package/dist/components/logos/index.js.map +1 -0
  198. package/dist/config/solana.js +1 -0
  199. package/dist/config/solana.js.map +1 -0
  200. package/dist/config.js +1 -0
  201. package/dist/config.js.map +1 -0
  202. package/dist/errors/types.js +1 -0
  203. package/dist/errors/types.js.map +1 -0
  204. package/dist/index.js +1 -0
  205. package/dist/index.js.map +1 -0
  206. package/dist/main.css +1 -1
  207. package/dist/utils/dynamicImports.js +1 -0
  208. package/dist/utils/dynamicImports.js.map +1 -0
  209. package/dist/utils/logger.d.ts +1 -0
  210. package/dist/utils/logger.js +26 -2
  211. package/dist/utils/logger.js.map +1 -0
  212. package/dist/utils/shortenString.js +1 -0
  213. package/dist/utils/shortenString.js.map +1 -0
  214. package/package.json +2 -2
  215. package/dist/Modal/BackButton.d.ts +0 -3
  216. package/dist/Modal/BackButton.js +0 -26
  217. package/dist/Modal/ConnectView.d.ts +0 -1
  218. package/dist/Modal/ConnectView.js +0 -68
  219. package/dist/Modal/CreateSessionView.d.ts +0 -1
  220. package/dist/Modal/CreateSessionView.js +0 -248
  221. package/dist/Modal/CreateUserView.d.ts +0 -1
  222. package/dist/Modal/CreateUserView.js +0 -160
  223. package/dist/Modal/ModalHeader.d.ts +0 -1
  224. package/dist/Modal/ModalHeader.js +0 -20
  225. package/dist/Modal/NTSFlow/NordFlow/WalletConnectionFlow.d.ts +0 -9
  226. package/dist/Modal/NTSFlow/NordFlow/WalletConnectionFlow.js +0 -145
  227. package/dist/Modal/NTSFlow/NordFlow/components/AnimatedButton.d.ts +0 -14
  228. package/dist/Modal/NTSFlow/NordFlow/components/AnimatedButton.js +0 -75
  229. package/dist/Modal/NTSFlow/NordFlow/components/ChainButton.d.ts +0 -7
  230. package/dist/Modal/NTSFlow/NordFlow/components/ChainButton.js +0 -5
  231. package/dist/Modal/NTSFlow/NordFlow/components/LoadingSquares.d.ts +0 -1
  232. package/dist/Modal/NTSFlow/NordFlow/components/LoadingSquares.js +0 -5
  233. package/dist/Modal/NTSFlow/NordFlow/components/TransactionTable.d.ts +0 -13
  234. package/dist/Modal/NTSFlow/NordFlow/components/TransactionTable.js +0 -58
  235. package/dist/Modal/NTSFlow/NordFlow/components/WaitingMessage.d.ts +0 -6
  236. package/dist/Modal/NTSFlow/NordFlow/components/WaitingMessage.js +0 -6
  237. package/dist/Modal/NTSFlow/NordFlow/components/index.d.ts +0 -5
  238. package/dist/Modal/NTSFlow/NordFlow/components/index.js +0 -5
  239. package/dist/Modal/NTSFlow/NordFlow/constants.d.ts +0 -37
  240. package/dist/Modal/NTSFlow/NordFlow/constants.js +0 -223
  241. package/dist/Modal/NTSFlow/NordFlow/hooks/index.d.ts +0 -8
  242. package/dist/Modal/NTSFlow/NordFlow/hooks/index.js +0 -8
  243. package/dist/Modal/NTSFlow/NordFlow/hooks/useButtonTyping.d.ts +0 -7
  244. package/dist/Modal/NTSFlow/NordFlow/hooks/useButtonTyping.js +0 -43
  245. package/dist/Modal/NTSFlow/NordFlow/hooks/useDepositFlow.d.ts +0 -38
  246. package/dist/Modal/NTSFlow/NordFlow/hooks/useDepositFlow.js +0 -166
  247. package/dist/Modal/NTSFlow/NordFlow/hooks/useFlowState.d.ts +0 -32
  248. package/dist/Modal/NTSFlow/NordFlow/hooks/useFlowState.js +0 -163
  249. package/dist/Modal/NTSFlow/NordFlow/hooks/useInterruptHandler.d.ts +0 -27
  250. package/dist/Modal/NTSFlow/NordFlow/hooks/useInterruptHandler.js +0 -101
  251. package/dist/Modal/NTSFlow/NordFlow/hooks/useNordSession.d.ts +0 -32
  252. package/dist/Modal/NTSFlow/NordFlow/hooks/useNordSession.js +0 -193
  253. package/dist/Modal/NTSFlow/NordFlow/hooks/useTableValues.d.ts +0 -2
  254. package/dist/Modal/NTSFlow/NordFlow/hooks/useTableValues.js +0 -69
  255. package/dist/Modal/NTSFlow/NordFlow/hooks/useWaitingMessage.d.ts +0 -6
  256. package/dist/Modal/NTSFlow/NordFlow/hooks/useWaitingMessage.js +0 -89
  257. package/dist/Modal/NTSFlow/NordFlow/hooks/useWalletConnect.d.ts +0 -30
  258. package/dist/Modal/NTSFlow/NordFlow/hooks/useWalletConnect.js +0 -132
  259. package/dist/Modal/NTSFlow/NordFlow/index.d.ts +0 -3
  260. package/dist/Modal/NTSFlow/NordFlow/index.js +0 -3
  261. package/dist/Modal/NTSFlow/NordFlow/screens/01-ConnectWalletScreen.d.ts +0 -6
  262. package/dist/Modal/NTSFlow/NordFlow/screens/01-ConnectWalletScreen.js +0 -17
  263. package/dist/Modal/NTSFlow/NordFlow/screens/02-EvmWalletAuthScreen.d.ts +0 -6
  264. package/dist/Modal/NTSFlow/NordFlow/screens/02-EvmWalletAuthScreen.js +0 -47
  265. package/dist/Modal/NTSFlow/NordFlow/screens/03-ChainSelectionScreen.d.ts +0 -7
  266. package/dist/Modal/NTSFlow/NordFlow/screens/03-ChainSelectionScreen.js +0 -7
  267. package/dist/Modal/NTSFlow/NordFlow/screens/04-AmountInputScreen.d.ts +0 -8
  268. package/dist/Modal/NTSFlow/NordFlow/screens/04-AmountInputScreen.js +0 -20
  269. package/dist/Modal/NTSFlow/NordFlow/screens/05-DepositProgressScreen.d.ts +0 -7
  270. package/dist/Modal/NTSFlow/NordFlow/screens/05-DepositProgressScreen.js +0 -6
  271. package/dist/Modal/NTSFlow/NordFlow/screens/06-DepositSuccessScreen.d.ts +0 -8
  272. package/dist/Modal/NTSFlow/NordFlow/screens/06-DepositSuccessScreen.js +0 -99
  273. package/dist/Modal/NTSFlow/NordFlow/screens/07-NordAuthScreen.d.ts +0 -7
  274. package/dist/Modal/NTSFlow/NordFlow/screens/07-NordAuthScreen.js +0 -14
  275. package/dist/Modal/NTSFlow/NordFlow/screens/08-AuthLoadingScreen.d.ts +0 -6
  276. package/dist/Modal/NTSFlow/NordFlow/screens/08-AuthLoadingScreen.js +0 -20
  277. package/dist/Modal/NTSFlow/NordFlow/screens/09-FinalSuccessScreen.d.ts +0 -5
  278. package/dist/Modal/NTSFlow/NordFlow/screens/09-FinalSuccessScreen.js +0 -18
  279. package/dist/Modal/NTSFlow/NordFlow/screens/10-ErrorScreen.d.ts +0 -7
  280. package/dist/Modal/NTSFlow/NordFlow/screens/10-ErrorScreen.js +0 -13
  281. package/dist/Modal/NTSFlow/NordFlow/screens/index.d.ts +0 -10
  282. package/dist/Modal/NTSFlow/NordFlow/screens/index.js +0 -10
  283. package/dist/Modal/NTSFlow/NordFlow/types.d.ts +0 -105
  284. package/dist/Modal/NTSFlow/NordFlow/types.js +0 -34
  285. package/dist/Modal/NTSFlow/NordFlow/utils/persistence.d.ts +0 -24
  286. package/dist/Modal/NTSFlow/NordFlow/utils/persistence.js +0 -83
  287. package/dist/Modal/NoWhitelistView.d.ts +0 -1
  288. package/dist/Modal/NoWhitelistView.js +0 -42
  289. package/dist/Modal/NordFlow/NordFlowWrapper.d.ts +0 -11
  290. package/dist/Modal/NordFlow/NordFlowWrapper.js +0 -11
  291. package/dist/Modal/NordFlow/WalletConnectionFlow.d.ts +0 -9
  292. package/dist/Modal/NordFlow/WalletConnectionFlow.js +0 -145
  293. package/dist/Modal/NordFlow/components/AnimatedButton.d.ts +0 -14
  294. package/dist/Modal/NordFlow/components/AnimatedButton.js +0 -75
  295. package/dist/Modal/NordFlow/hooks/useButtonTyping.d.ts +0 -7
  296. package/dist/Modal/NordFlow/hooks/useButtonTyping.js +0 -43
  297. package/dist/Modal/NordFlow/hooks/useNordSession.d.ts +0 -32
  298. package/dist/Modal/NordFlow/hooks/useNordSession.js +0 -391
  299. package/dist/Modal/NordFlow/hooks/useTableValues.d.ts +0 -2
  300. package/dist/Modal/NordFlow/hooks/useTableValues.js +0 -69
  301. package/dist/Modal/NordFlow/hooks/useWaitingMessage.d.ts +0 -6
  302. package/dist/Modal/NordFlow/hooks/useWaitingMessage.js +0 -89
  303. package/dist/Modal/NordFlow/hooks/useWalletConnect.d.ts +0 -14
  304. package/dist/Modal/NordFlow/hooks/useWalletConnect.js +0 -221
  305. package/dist/Modal/NordFlow/index copy.d.ts +0 -1
  306. package/dist/Modal/NordFlow/index copy.js +0 -1
  307. package/dist/Modal/NordFlow/screens/07-NordAuthScreen.d.ts +0 -5
  308. package/dist/Modal/NordFlow/screens/07-NordAuthScreen.js +0 -17
  309. package/dist/Modal/NordFlow/screens/08-AuthLoadingScreen.d.ts +0 -6
  310. package/dist/Modal/NordFlow/screens/08-AuthLoadingScreen.js +0 -153
  311. package/dist/Modal/NordFlow/screens/09-FinalSuccessScreen.d.ts +0 -5
  312. package/dist/Modal/NordFlow/screens/09-FinalSuccessScreen.js +0 -47
  313. package/dist/Modal/NordFlow/screens/10-ErrorScreen.d.ts +0 -7
  314. package/dist/Modal/NordFlow/screens/10-ErrorScreen.js +0 -62
  315. package/dist/Modal/Sidebar/NordTradingView/AccountSummary/AccountSummary.d.ts +0 -1
  316. package/dist/Modal/Sidebar/NordTradingView/AccountSummary/AccountSummary.js +0 -116
  317. package/dist/Modal/Sidebar/NordTradingView/TradeHistory/TradeHistory.d.ts +0 -5
  318. package/dist/Modal/Sidebar/NordTradingView/TradeHistory/TradeHistory.js +0 -138
  319. package/dist/Modal/SigningView.d.ts +0 -1
  320. package/dist/Modal/SigningView.js +0 -5
  321. package/dist/Modal/SuccessView.d.ts +0 -1
  322. package/dist/Modal/SuccessView.js +0 -10
  323. package/dist/NordFlow/WalletConnectionFlow.d.ts +0 -9
  324. package/dist/NordFlow/WalletConnectionFlow.js +0 -145
  325. package/dist/NordFlow/components/AnimatedButton.d.ts +0 -14
  326. package/dist/NordFlow/components/AnimatedButton.js +0 -75
  327. package/dist/NordFlow/components/ChainButton.d.ts +0 -7
  328. package/dist/NordFlow/components/ChainButton.js +0 -5
  329. package/dist/NordFlow/components/LoadingSquares.d.ts +0 -1
  330. package/dist/NordFlow/components/LoadingSquares.js +0 -5
  331. package/dist/NordFlow/components/TransactionTable.d.ts +0 -13
  332. package/dist/NordFlow/components/TransactionTable.js +0 -58
  333. package/dist/NordFlow/components/WaitingMessage.d.ts +0 -6
  334. package/dist/NordFlow/components/WaitingMessage.js +0 -6
  335. package/dist/NordFlow/components/index.d.ts +0 -5
  336. package/dist/NordFlow/components/index.js +0 -5
  337. package/dist/NordFlow/constants.d.ts +0 -37
  338. package/dist/NordFlow/constants.js +0 -223
  339. package/dist/NordFlow/hooks/index.d.ts +0 -8
  340. package/dist/NordFlow/hooks/index.js +0 -8
  341. package/dist/NordFlow/hooks/useButtonTyping.d.ts +0 -7
  342. package/dist/NordFlow/hooks/useButtonTyping.js +0 -43
  343. package/dist/NordFlow/hooks/useDepositFlow.d.ts +0 -38
  344. package/dist/NordFlow/hooks/useDepositFlow.js +0 -166
  345. package/dist/NordFlow/hooks/useFlowState.d.ts +0 -32
  346. package/dist/NordFlow/hooks/useFlowState.js +0 -163
  347. package/dist/NordFlow/hooks/useInterruptHandler.d.ts +0 -27
  348. package/dist/NordFlow/hooks/useInterruptHandler.js +0 -101
  349. package/dist/NordFlow/hooks/useNordSession.d.ts +0 -32
  350. package/dist/NordFlow/hooks/useNordSession.js +0 -193
  351. package/dist/NordFlow/hooks/useTableValues.d.ts +0 -2
  352. package/dist/NordFlow/hooks/useTableValues.js +0 -69
  353. package/dist/NordFlow/hooks/useWaitingMessage.d.ts +0 -6
  354. package/dist/NordFlow/hooks/useWaitingMessage.js +0 -89
  355. package/dist/NordFlow/hooks/useWalletConnect.d.ts +0 -30
  356. package/dist/NordFlow/hooks/useWalletConnect.js +0 -132
  357. package/dist/NordFlow/index.d.ts +0 -3
  358. package/dist/NordFlow/index.js +0 -3
  359. package/dist/NordFlow/screens/01-ConnectWalletScreen.d.ts +0 -6
  360. package/dist/NordFlow/screens/01-ConnectWalletScreen.js +0 -17
  361. package/dist/NordFlow/screens/02-EvmWalletAuthScreen.d.ts +0 -6
  362. package/dist/NordFlow/screens/02-EvmWalletAuthScreen.js +0 -47
  363. package/dist/NordFlow/screens/03-ChainSelectionScreen.d.ts +0 -7
  364. package/dist/NordFlow/screens/03-ChainSelectionScreen.js +0 -7
  365. package/dist/NordFlow/screens/04-AmountInputScreen.d.ts +0 -8
  366. package/dist/NordFlow/screens/04-AmountInputScreen.js +0 -20
  367. package/dist/NordFlow/screens/05-DepositProgressScreen.d.ts +0 -7
  368. package/dist/NordFlow/screens/05-DepositProgressScreen.js +0 -6
  369. package/dist/NordFlow/screens/06-DepositSuccessScreen.d.ts +0 -8
  370. package/dist/NordFlow/screens/06-DepositSuccessScreen.js +0 -99
  371. package/dist/NordFlow/screens/07-NordAuthScreen.d.ts +0 -7
  372. package/dist/NordFlow/screens/07-NordAuthScreen.js +0 -14
  373. package/dist/NordFlow/screens/08-AuthLoadingScreen.d.ts +0 -6
  374. package/dist/NordFlow/screens/08-AuthLoadingScreen.js +0 -20
  375. package/dist/NordFlow/screens/09-FinalSuccessScreen.d.ts +0 -5
  376. package/dist/NordFlow/screens/09-FinalSuccessScreen.js +0 -18
  377. package/dist/NordFlow/screens/10-ErrorScreen.d.ts +0 -7
  378. package/dist/NordFlow/screens/10-ErrorScreen.js +0 -13
  379. package/dist/NordFlow/screens/index.d.ts +0 -10
  380. package/dist/NordFlow/screens/index.js +0 -10
  381. package/dist/NordFlow/types.d.ts +0 -105
  382. package/dist/NordFlow/types.js +0 -34
  383. package/dist/NordFlow/utils/persistence.d.ts +0 -24
  384. package/dist/NordFlow/utils/persistence.js +0 -83
  385. package/dist/WalletConnectionFlow/WalletConnectionFlow.d.ts +0 -9
  386. package/dist/WalletConnectionFlow/WalletConnectionFlow.js +0 -145
  387. package/dist/WalletConnectionFlow/components/AnimatedButton.d.ts +0 -14
  388. package/dist/WalletConnectionFlow/components/AnimatedButton.js +0 -75
  389. package/dist/WalletConnectionFlow/components/ChainButton.d.ts +0 -7
  390. package/dist/WalletConnectionFlow/components/ChainButton.js +0 -5
  391. package/dist/WalletConnectionFlow/components/LoadingSquares.d.ts +0 -1
  392. package/dist/WalletConnectionFlow/components/LoadingSquares.js +0 -5
  393. package/dist/WalletConnectionFlow/components/TransactionTable.d.ts +0 -13
  394. package/dist/WalletConnectionFlow/components/TransactionTable.js +0 -58
  395. package/dist/WalletConnectionFlow/components/WaitingMessage.d.ts +0 -6
  396. package/dist/WalletConnectionFlow/components/WaitingMessage.js +0 -6
  397. package/dist/WalletConnectionFlow/components/index.d.ts +0 -5
  398. package/dist/WalletConnectionFlow/components/index.js +0 -5
  399. package/dist/WalletConnectionFlow/constants.d.ts +0 -37
  400. package/dist/WalletConnectionFlow/constants.js +0 -223
  401. package/dist/WalletConnectionFlow/hooks/index.d.ts +0 -8
  402. package/dist/WalletConnectionFlow/hooks/index.js +0 -8
  403. package/dist/WalletConnectionFlow/hooks/useButtonTyping.d.ts +0 -7
  404. package/dist/WalletConnectionFlow/hooks/useButtonTyping.js +0 -43
  405. package/dist/WalletConnectionFlow/hooks/useDepositFlow.d.ts +0 -38
  406. package/dist/WalletConnectionFlow/hooks/useDepositFlow.js +0 -166
  407. package/dist/WalletConnectionFlow/hooks/useFlowState.d.ts +0 -32
  408. package/dist/WalletConnectionFlow/hooks/useFlowState.js +0 -163
  409. package/dist/WalletConnectionFlow/hooks/useInterruptHandler.d.ts +0 -27
  410. package/dist/WalletConnectionFlow/hooks/useInterruptHandler.js +0 -101
  411. package/dist/WalletConnectionFlow/hooks/useNordSession.d.ts +0 -32
  412. package/dist/WalletConnectionFlow/hooks/useNordSession.js +0 -193
  413. package/dist/WalletConnectionFlow/hooks/useTableValues.d.ts +0 -2
  414. package/dist/WalletConnectionFlow/hooks/useTableValues.js +0 -69
  415. package/dist/WalletConnectionFlow/hooks/useWaitingMessage.d.ts +0 -6
  416. package/dist/WalletConnectionFlow/hooks/useWaitingMessage.js +0 -89
  417. package/dist/WalletConnectionFlow/hooks/useWalletConnect.d.ts +0 -30
  418. package/dist/WalletConnectionFlow/hooks/useWalletConnect.js +0 -132
  419. package/dist/WalletConnectionFlow/index.d.ts +0 -3
  420. package/dist/WalletConnectionFlow/index.js +0 -3
  421. package/dist/WalletConnectionFlow/screens/01-ConnectWalletScreen.d.ts +0 -6
  422. package/dist/WalletConnectionFlow/screens/01-ConnectWalletScreen.js +0 -17
  423. package/dist/WalletConnectionFlow/screens/02-EvmWalletAuthScreen.d.ts +0 -6
  424. package/dist/WalletConnectionFlow/screens/02-EvmWalletAuthScreen.js +0 -47
  425. package/dist/WalletConnectionFlow/screens/03-ChainSelectionScreen.d.ts +0 -7
  426. package/dist/WalletConnectionFlow/screens/03-ChainSelectionScreen.js +0 -7
  427. package/dist/WalletConnectionFlow/screens/04-AmountInputScreen.d.ts +0 -8
  428. package/dist/WalletConnectionFlow/screens/04-AmountInputScreen.js +0 -20
  429. package/dist/WalletConnectionFlow/screens/05-DepositProgressScreen.d.ts +0 -7
  430. package/dist/WalletConnectionFlow/screens/05-DepositProgressScreen.js +0 -6
  431. package/dist/WalletConnectionFlow/screens/06-DepositSuccessScreen.d.ts +0 -8
  432. package/dist/WalletConnectionFlow/screens/06-DepositSuccessScreen.js +0 -99
  433. package/dist/WalletConnectionFlow/screens/07-NordAuthScreen.d.ts +0 -7
  434. package/dist/WalletConnectionFlow/screens/07-NordAuthScreen.js +0 -14
  435. package/dist/WalletConnectionFlow/screens/08-AuthLoadingScreen.d.ts +0 -6
  436. package/dist/WalletConnectionFlow/screens/08-AuthLoadingScreen.js +0 -20
  437. package/dist/WalletConnectionFlow/screens/09-FinalSuccessScreen.d.ts +0 -5
  438. package/dist/WalletConnectionFlow/screens/09-FinalSuccessScreen.js +0 -18
  439. package/dist/WalletConnectionFlow/screens/10-ErrorScreen.d.ts +0 -7
  440. package/dist/WalletConnectionFlow/screens/10-ErrorScreen.js +0 -13
  441. package/dist/WalletConnectionFlow/screens/AmountInputScreen.d.ts +0 -8
  442. package/dist/WalletConnectionFlow/screens/AmountInputScreen.js +0 -20
  443. package/dist/WalletConnectionFlow/screens/AppsTableScreen.d.ts +0 -8
  444. package/dist/WalletConnectionFlow/screens/AppsTableScreen.js +0 -28
  445. package/dist/WalletConnectionFlow/screens/AuthLoadingScreen.d.ts +0 -6
  446. package/dist/WalletConnectionFlow/screens/AuthLoadingScreen.js +0 -20
  447. package/dist/WalletConnectionFlow/screens/ChainSelectionScreen.d.ts +0 -7
  448. package/dist/WalletConnectionFlow/screens/ChainSelectionScreen.js +0 -7
  449. package/dist/WalletConnectionFlow/screens/ConnectWalletScreen.d.ts +0 -6
  450. package/dist/WalletConnectionFlow/screens/ConnectWalletScreen.js +0 -17
  451. package/dist/WalletConnectionFlow/screens/DepositProgressScreen.d.ts +0 -7
  452. package/dist/WalletConnectionFlow/screens/DepositProgressScreen.js +0 -6
  453. package/dist/WalletConnectionFlow/screens/DepositSuccessScreen.d.ts +0 -8
  454. package/dist/WalletConnectionFlow/screens/DepositSuccessScreen.js +0 -99
  455. package/dist/WalletConnectionFlow/screens/ErrorScreen.d.ts +0 -7
  456. package/dist/WalletConnectionFlow/screens/ErrorScreen.js +0 -13
  457. package/dist/WalletConnectionFlow/screens/EthToSolAuthScreen.d.ts +0 -6
  458. package/dist/WalletConnectionFlow/screens/EthToSolAuthScreen.js +0 -47
  459. package/dist/WalletConnectionFlow/screens/EvmWalletAuthScreen.d.ts +0 -6
  460. package/dist/WalletConnectionFlow/screens/EvmWalletAuthScreen.js +0 -47
  461. package/dist/WalletConnectionFlow/screens/FinalSuccessScreen.d.ts +0 -5
  462. package/dist/WalletConnectionFlow/screens/FinalSuccessScreen.js +0 -18
  463. package/dist/WalletConnectionFlow/screens/NordAuthScreen.d.ts +0 -7
  464. package/dist/WalletConnectionFlow/screens/NordAuthScreen.js +0 -14
  465. package/dist/WalletConnectionFlow/screens/SigningScreen.d.ts +0 -6
  466. package/dist/WalletConnectionFlow/screens/SigningScreen.js +0 -6
  467. package/dist/WalletConnectionFlow/screens/index.d.ts +0 -10
  468. package/dist/WalletConnectionFlow/screens/index.js +0 -10
  469. package/dist/WalletConnectionFlow/types.d.ts +0 -105
  470. package/dist/WalletConnectionFlow/types.js +0 -34
  471. package/dist/WalletConnectionFlow/utils/persistence.d.ts +0 -24
  472. package/dist/WalletConnectionFlow/utils/persistence.js +0 -83
  473. package/dist/components/LazyLoadWrapper.d.ts +0 -8
  474. package/dist/components/LazyLoadWrapper.js +0 -17
  475. package/dist/components/WalletDeposit/AnimatedButton.d.ts +0 -17
  476. package/dist/components/WalletDeposit/AnimatedButton.js +0 -29
  477. package/dist/components/WalletDeposit/components/ChainButton.d.ts +0 -7
  478. package/dist/components/WalletDeposit/components/ChainButton.js +0 -5
  479. package/dist/components/WalletDeposit/components/LoadingSquares.d.ts +0 -1
  480. package/dist/components/WalletDeposit/components/LoadingSquares.js +0 -5
  481. package/dist/components/WalletDeposit/components/TransactionTable.d.ts +0 -13
  482. package/dist/components/WalletDeposit/components/TransactionTable.js +0 -58
  483. package/dist/components/WalletDeposit/components/WaitingMessage.d.ts +0 -6
  484. package/dist/components/WalletDeposit/components/WaitingMessage.js +0 -6
  485. package/dist/components/WalletDeposit/constants.d.ts +0 -15
  486. package/dist/components/WalletDeposit/constants.js +0 -32
  487. package/dist/components/WalletDeposit/hooks.d.ts +0 -9
  488. package/dist/components/WalletDeposit/hooks.js +0 -185
  489. package/dist/components/WalletDeposit/index.d.ts +0 -1
  490. package/dist/components/WalletDeposit/index.js +0 -136
  491. package/dist/components/WalletDeposit/screens/AmountInputScreen.d.ts +0 -12
  492. package/dist/components/WalletDeposit/screens/AmountInputScreen.js +0 -18
  493. package/dist/components/WalletDeposit/screens/AppsTableScreen.d.ts +0 -8
  494. package/dist/components/WalletDeposit/screens/AppsTableScreen.js +0 -28
  495. package/dist/components/WalletDeposit/screens/ChainSelectionScreen.d.ts +0 -5
  496. package/dist/components/WalletDeposit/screens/ChainSelectionScreen.js +0 -8
  497. package/dist/components/WalletDeposit/screens/InitialScreen.d.ts +0 -9
  498. package/dist/components/WalletDeposit/screens/InitialScreen.js +0 -18
  499. package/dist/components/WalletDeposit/screens/SigningScreen.d.ts +0 -6
  500. package/dist/components/WalletDeposit/screens/SigningScreen.js +0 -6
  501. package/dist/components/WalletDeposit/screens/SuccessScreen.d.ts +0 -12
  502. package/dist/components/WalletDeposit/screens/SuccessScreen.js +0 -7
  503. package/dist/components/WalletDeposit/types.d.ts +0 -48
  504. package/dist/components/WalletDeposit/types.js +0 -1
  505. package/dist/config/dynamic.d.ts +0 -20
  506. package/dist/config/dynamic.js +0 -47
  507. package/dist/hooks/useSolanaSession.d.ts +0 -17
  508. package/dist/hooks/useSolanaSession.js +0 -180
  509. package/dist/utils/lazyLoad.d.ts +0 -3
  510. package/dist/utils/lazyLoad.js +0 -9
  511. package/dist/utils/react-shim.d.ts +0 -2
  512. package/dist/utils/react-shim.js +0 -6
  513. package/dist/utils/solana-session.d.ts +0 -84
  514. package/dist/utils/solana-session.js +0 -230
@@ -51,8 +51,11 @@ export var useNordWalletConnect = function (state, transition, context, updateCo
51
51
  var _c = useState(false), isConnecting = _c[0], setIsConnecting = _c[1];
52
52
  var _d = useState(context.walletType), walletType = _d[0], setWalletType = _d[1];
53
53
  var _e = useState(false), hasProcessedWallet = _e[0], setHasProcessedWallet = _e[1];
54
- // Use a ref to track the current wallet address to prevent processing the same wallet multiple times
54
+ // Use refs to track previous values
55
55
  var processedWalletAddressRef = useRef(null);
56
+ var prevNordUserRef = useRef(nordUser);
57
+ var prevDynamicWalletRef = useRef(dynamicWallet);
58
+ var prevStateRef = useRef(state);
56
59
  /**
57
60
  * Determine wallet type from Dynamic wallet
58
61
  */
@@ -85,21 +88,24 @@ export var useNordWalletConnect = function (state, transition, context, updateCo
85
88
  logger.debug('Starting wallet connection process');
86
89
  _a.label = 1;
87
90
  case 1:
88
- _a.trys.push([1, 3, , 4]);
91
+ _a.trys.push([1, 4, , 5]);
89
92
  // Show Dynamic widget to connect wallet
90
- return [4 /*yield*/, showDynamicWidget(true)];
93
+ return [4 /*yield*/, disconnectWallet()];
91
94
  case 2:
92
95
  // Show Dynamic widget to connect wallet
93
96
  _a.sent();
94
- logger.debug('Dynamic widget shown');
95
- return [3 /*break*/, 4];
97
+ return [4 /*yield*/, showDynamicWidget(true)];
96
98
  case 3:
99
+ _a.sent();
100
+ logger.debug('Dynamic widget shown');
101
+ return [3 /*break*/, 5];
102
+ case 4:
97
103
  error_1 = _a.sent();
98
104
  setIsConnecting(false);
99
105
  updateContext({ walletType: null });
100
106
  logger.error('Error showing Dynamic widget:', error_1);
101
- return [3 /*break*/, 4];
102
- case 4: return [2 /*return*/];
107
+ return [3 /*break*/, 5];
108
+ case 5: return [2 /*return*/];
103
109
  }
104
110
  });
105
111
  }); }, [isConnecting, showDynamicWidget, updateContext]);
@@ -110,47 +116,48 @@ export var useNordWalletConnect = function (state, transition, context, updateCo
110
116
  logger.debug('Disconnecting wallet');
111
117
  setWalletType(null);
112
118
  setHasProcessedWallet(false);
119
+ processedWalletAddressRef.current = null;
113
120
  updateContext({ walletType: null });
114
121
  }, [updateContext]);
122
+ // Process nordUser changes
115
123
  useEffect(function () {
116
- if (hasProcessedWallet && nordUser) {
124
+ var currentNordUser = nordUser;
125
+ var prevNordUser = prevNordUserRef.current;
126
+ // Only run if nordUser has changed and we have processed a wallet
127
+ if (hasProcessedWallet && currentNordUser && currentNordUser !== prevNordUser) {
128
+ logger.debug('NordUser changed, checking account status');
117
129
  (function () { return __awaiter(void 0, void 0, void 0, function () {
118
- var hasNordAccount, sessionId, hasActiveSession, transitionDestination;
130
+ var hasNordAccount_1, sessionId, hasActiveSession_1, transitionDestination_1, error_2;
119
131
  return __generator(this, function (_a) {
120
132
  switch (_a.label) {
121
- case 0: return [4 /*yield*/, nord.accountExists(dynamicWallet.address)];
133
+ case 0:
134
+ _a.trys.push([0, 2, , 3]);
135
+ if (!dynamicWallet || !nord)
136
+ return [2 /*return*/];
137
+ return [4 /*yield*/, nord.accountExists(dynamicWallet.address)];
122
138
  case 1:
123
- hasNordAccount = _a.sent();
124
- sessionId = nordUser.sessionId;
125
- hasActiveSession = sessionId != null;
126
- updateContext({ hasNordAccount: hasNordAccount, hasActiveSession: hasActiveSession });
127
- transitionDestination = hasNordAccount
139
+ hasNordAccount_1 = _a.sent();
140
+ sessionId = currentNordUser.sessionId;
141
+ hasActiveSession_1 = sessionId != null;
142
+ updateContext({ hasNordAccount: hasNordAccount_1, hasActiveSession: hasActiveSession_1 });
143
+ transitionDestination_1 = hasNordAccount_1
128
144
  ? sessionId != null
129
145
  ? FlowState.FINAL_SUCCESS
130
146
  : FlowState.AUTH_LOADING
131
147
  : FlowState.CHAIN_SELECTION;
132
- if (hasNordAccount && sessionId != null) {
148
+ if (hasNordAccount_1 && sessionId != null) {
133
149
  setIsConnected(true);
134
150
  }
135
151
  // Force a small delay to ensure UI updates properly
136
152
  setTimeout(function () {
137
153
  try {
138
- logger.debug('Attempting transition to ' + transitionDestination);
139
- transition(transitionDestination, {
154
+ logger.debug('Attempting transition to ' + transitionDestination_1);
155
+ transition(transitionDestination_1, {
140
156
  walletType: 'solana',
141
- hasNordAccount: hasNordAccount,
142
- hasActiveSession: hasActiveSession,
157
+ hasNordAccount: hasNordAccount_1,
158
+ hasActiveSession: hasActiveSession_1,
143
159
  });
144
- logger.debug('Transition to ' + transitionDestination + ' completed');
145
- // Try again with a longer delay as a fallback
146
- setTimeout(function () {
147
- logger.debug('Trying fallback transition after delay');
148
- transition(transitionDestination, {
149
- walletType: 'solana',
150
- hasNordAccount: hasNordAccount,
151
- hasActiveSession: hasActiveSession,
152
- });
153
- }, 500);
160
+ logger.debug('Transition to ' + transitionDestination_1 + ' completed');
154
161
  }
155
162
  catch (error) {
156
163
  logger.error('Error during transition:', error);
@@ -159,24 +166,38 @@ export var useNordWalletConnect = function (state, transition, context, updateCo
159
166
  setIsConnecting(false);
160
167
  }
161
168
  }, 100);
162
- return [2 /*return*/];
169
+ return [3 /*break*/, 3];
170
+ case 2:
171
+ error_2 = _a.sent();
172
+ logger.error('Error checking account status:', error_2);
173
+ setIsConnecting(false);
174
+ return [3 /*break*/, 3];
175
+ case 3: return [2 /*return*/];
163
176
  }
164
177
  });
165
178
  }); })();
166
179
  }
167
- }, [hasProcessedWallet, nordUser]);
180
+ // Update ref
181
+ prevNordUserRef.current = currentNordUser;
182
+ }, [nordUser, hasProcessedWallet, dynamicWallet, nord, updateContext, transition, setIsConnected]);
168
183
  /**
169
184
  * Effect to handle wallet connection state changes
170
185
  */
171
186
  useEffect(function () {
172
187
  var isNordMode = sessionMode === N1SessionMode.Nord;
188
+ var currentDynamicWallet = dynamicWallet;
189
+ var prevDynamicWallet = prevDynamicWalletRef.current;
173
190
  // If we don't have a wallet, nothing to process
174
- if (!dynamicWallet) {
191
+ if (!currentDynamicWallet) {
192
+ return;
193
+ }
194
+ // If the wallet hasn't changed, don't reprocess
195
+ if (currentDynamicWallet === prevDynamicWallet) {
175
196
  return;
176
197
  }
177
198
  // If we've already processed this specific wallet address, don't process again
178
199
  if (hasProcessedWallet &&
179
- processedWalletAddressRef.current === dynamicWallet.address) {
200
+ processedWalletAddressRef.current === currentDynamicWallet.address) {
180
201
  logger.debug('Skipping wallet processing - already processed this address');
181
202
  return;
182
203
  }
@@ -191,24 +212,22 @@ export var useNordWalletConnect = function (state, transition, context, updateCo
191
212
  return [2 /*return*/];
192
213
  }
193
214
  logger.debug('Processing wallet connection:', {
194
- wallet: (_a = dynamicWallet.connector) === null || _a === void 0 ? void 0 : _a.name,
195
- address: (_b = dynamicWallet.address) === null || _b === void 0 ? void 0 : _b.slice(0, 8),
215
+ wallet: (_a = currentDynamicWallet.connector) === null || _a === void 0 ? void 0 : _a.name,
216
+ address: (_b = currentDynamicWallet.address) === null || _b === void 0 ? void 0 : _b.slice(0, 8),
196
217
  state: state,
197
218
  isNordMode: isNordMode,
198
219
  });
199
220
  // Set processed flag first to prevent re-entry
200
221
  setHasProcessedWallet(true);
201
- processedWalletAddressRef.current = dynamicWallet.address;
222
+ processedWalletAddressRef.current = currentDynamicWallet.address;
202
223
  type = determineWalletType();
203
224
  setWalletType(type);
204
225
  return [2 /*return*/];
205
226
  });
206
227
  }); })();
207
- // Cleanup function to handle component unmount
208
- return function () {
209
- logger.debug('Wallet connection effect cleanup');
210
- };
211
- }, [dynamicWallet, determineWalletType]);
228
+ // Update ref
229
+ prevDynamicWalletRef.current = currentDynamicWallet;
230
+ }, [dynamicWallet, determineWalletType, hasProcessedWallet, sessionMode, state]);
212
231
  // Handle wallet disconnection in a separate effect
213
232
  useEffect(function () {
214
233
  if (!dynamicWallet && hasProcessedWallet) {
@@ -219,17 +238,18 @@ export var useNordWalletConnect = function (state, transition, context, updateCo
219
238
  }, [dynamicWallet, hasProcessedWallet]);
220
239
  // Handle connecting state changes in a separate effect
221
240
  useEffect(function () {
222
- if (state === FlowState.CONNECTING_WALLET &&
223
- !dynamicWallet &&
224
- isConnecting) {
225
- // Only keep isConnecting true if we're in the connecting state and don't have a wallet yet
226
- // This prevents an infinite loop of setting isConnecting
227
- }
228
- else if (state !== FlowState.CONNECTING_WALLET && isConnecting) {
229
- // If we're no longer in the connecting state, reset the connecting flag
230
- setIsConnecting(false);
241
+ var currentState = state;
242
+ var prevState = prevStateRef.current;
243
+ // Only run if state has changed
244
+ if (currentState !== prevState) {
245
+ if (currentState !== FlowState.CONNECTING_WALLET && isConnecting) {
246
+ // If we're no longer in the connecting state, reset the connecting flag
247
+ setIsConnecting(false);
248
+ }
249
+ // Update ref
250
+ prevStateRef.current = currentState;
231
251
  }
232
- }, [state, dynamicWallet, isConnecting]);
252
+ }, [state, isConnecting]);
233
253
  return {
234
254
  isConnecting: isConnecting,
235
255
  walletType: walletType,
@@ -237,3 +257,4 @@ export var useNordWalletConnect = function (state, transition, context, updateCo
237
257
  disconnectWallet: disconnectWallet,
238
258
  };
239
259
  };
260
+ //# sourceMappingURL=useNordWalletConnect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useNordWalletConnect.js","sourceRoot":"","sources":["../../../../src/Modal/NordFlow/hooks/useNordWalletConnect.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EACL,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC;;;;;GAKG;AACH,MAAM,CAAC,IAAM,oBAAoB,GAAG,UAClC,KAAgB,EAChB,UAAwE,EACxE,OAAY,EACZ,aAA8C,EAC9C,WAA2B;IAErB,IAAA,KAAqB,kBAAkB,EAAE,EAAvC,IAAI,UAAA,EAAE,QAAQ,cAAyB,CAAC;IAC1C,IAAA,KACJ,0BAA0B,EAAE,EADtB,iBAAiB,uBAAA,EAAE,aAAa,mBAAA,EAAE,cAAc,oBAC1B,CAAC;IAEzB,IAAA,KAAkC,QAAQ,CAAC,KAAK,CAAC,EAAhD,YAAY,QAAA,EAAE,eAAe,QAAmB,CAAC;IAClD,IAAA,KAA8B,QAAQ,CAC1C,OAAO,CAAC,UAAU,CACnB,EAFM,UAAU,QAAA,EAAE,aAAa,QAE/B,CAAC;IACI,IAAA,KAA8C,QAAQ,CAAC,KAAK,CAAC,EAA5D,kBAAkB,QAAA,EAAE,qBAAqB,QAAmB,CAAC;IAEpE,oCAAoC;IACpC,IAAM,yBAAyB,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAC9D,IAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAM,oBAAoB,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;IACnD,IAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAEnC;;OAEG;IACH,IAAM,mBAAmB,GAAG,WAAW,CAAC;;QACtC,IAAI,CAAC,aAAa;YAAE,OAAO,IAAI,CAAC;QAEhC,oEAAoE;QACpE,IAAM,WAAW,GAAG,CAAA,MAAA,MAAA,aAAa,CAAC,SAAS,0CAAE,IAAI,0CAAE,WAAW,EAAE,KAAI,EAAE,CAAC;QACvE,IAAI,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACtE,OAAO,QAAQ,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,6CAA6C;YAC7C,OAAO,UAAU,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB;;OAEG;IACH,IAAM,aAAa,GAAG,WAAW,CAAC;;;;;oBAChC,IAAI,YAAY,IAAI,CAAC,iBAAiB;wBAAE,sBAAO;oBAE/C,eAAe,CAAC,IAAI,CAAC,CAAC;oBACtB,qBAAqB,CAAC,KAAK,CAAC,CAAC;oBAC7B,MAAM,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;;;;oBAGjD,wCAAwC;oBACxC,qBAAM,gBAAgB,EAAE,EAAA;;oBADxB,wCAAwC;oBACxC,SAAwB,CAAA;oBACxB,qBAAM,iBAAiB,CAAC,IAAI,CAAC,EAAA;;oBAA7B,SAA6B,CAAC;oBAC9B,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;;;;oBAErC,eAAe,CAAC,KAAK,CAAC,CAAC;oBACvB,aAAa,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;oBACpC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,OAAK,CAAC,CAAC;;;;;SAExD,EAAE,CAAC,YAAY,EAAE,iBAAiB,EAAE,aAAa,CAAC,CAAC,CAAC;IAErD;;OAEG;IACH,IAAM,gBAAgB,GAAG,WAAW,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACrC,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC7B,yBAAyB,CAAC,OAAO,GAAG,IAAI,CAAC;QAEzC,aAAa,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,2BAA2B;IAC3B,SAAS,CAAC;QACR,IAAM,eAAe,GAAG,QAAQ,CAAC;QACjC,IAAM,YAAY,GAAG,eAAe,CAAC,OAAO,CAAC;QAE7C,kEAAkE;QAClE,IAAI,kBAAkB,IAAI,eAAe,IAAI,eAAe,KAAK,YAAY,EAAE,CAAC;YAC9E,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;YAE1D,CAAC;;;;;;4BAEG,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI;gCAAE,sBAAO;4BAEb,qBAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,EAAA;;4BAAhE,mBAAiB,SAA+C;4BAChE,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC;4BACtC,qBAAmB,SAAS,IAAI,IAAI,CAAC;4BAE3C,aAAa,CAAC,EAAE,cAAc,kBAAA,EAAE,gBAAgB,oBAAA,EAAE,CAAC,CAAC;4BAE9C,0BAAwB,gBAAc;gCAC1C,CAAC,CAAC,SAAS,IAAI,IAAI;oCACjB,CAAC,CAAC,SAAS,CAAC,aAAa;oCACzB,CAAC,CAAC,SAAS,CAAC,YAAY;gCAC1B,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC;4BAE9B,IAAI,gBAAc,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;gCACxC,cAAc,CAAC,IAAI,CAAC,CAAC;4BACvB,CAAC;4BAED,oDAAoD;4BACpD,UAAU,CAAC;gCACT,IAAI,CAAC;oCACH,MAAM,CAAC,KAAK,CAAC,2BAA2B,GAAG,uBAAqB,CAAC,CAAC;oCAClE,UAAU,CAAC,uBAAqB,EAAE;wCAChC,UAAU,EAAE,QAAQ;wCACpB,cAAc,kBAAA;wCACd,gBAAgB,oBAAA;qCACjB,CAAC,CAAC;oCACH,MAAM,CAAC,KAAK,CACV,gBAAgB,GAAG,uBAAqB,GAAG,YAAY,CACxD,CAAC;gCACJ,CAAC;gCAAC,OAAO,KAAK,EAAE,CAAC;oCACf,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;gCAClD,CAAC;wCAAS,CAAC;oCACT,eAAe,CAAC,KAAK,CAAC,CAAC;gCACzB,CAAC;4BACH,CAAC,EAAE,GAAG,CAAC,CAAC;;;;4BAER,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,OAAK,CAAC,CAAC;4BACtD,eAAe,CAAC,KAAK,CAAC,CAAC;;;;;iBAE1B,CAAC,EAAE,CAAC;QACP,CAAC;QAED,aAAa;QACb,eAAe,CAAC,OAAO,GAAG,eAAe,CAAC;IAC5C,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;IAEnG;;OAEG;IACH,SAAS,CAAC;QACR,IAAM,UAAU,GAAG,WAAW,KAAK,aAAa,CAAC,IAAI,CAAC;QACtD,IAAM,oBAAoB,GAAG,aAAa,CAAC;QAC3C,IAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC;QAEvD,gDAAgD;QAChD,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,OAAO;QACT,CAAC;QAED,gDAAgD;QAChD,IAAI,oBAAoB,KAAK,iBAAiB,EAAE,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,+EAA+E;QAC/E,IACE,kBAAkB;YAClB,yBAAyB,CAAC,OAAO,KAAK,oBAAoB,CAAC,OAAO,EAClE,CAAC;YACD,MAAM,CAAC,KAAK,CACV,6DAA6D,CAC9D,CAAC;YACF,OAAO;QACT,CAAC;QAED,6CAA6C;QAC7C,CAAC;;;;gBACC,4CAA4C;gBAC5C,IAAI,kBAAkB,EAAE,CAAC;oBACvB,MAAM,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;oBACxE,sBAAO;gBACT,CAAC;gBAED,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE;oBAC5C,MAAM,EAAE,MAAA,oBAAoB,CAAC,SAAS,0CAAE,IAAI;oBAC5C,OAAO,EAAE,MAAA,oBAAoB,CAAC,OAAO,0CAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;oBAClD,KAAK,OAAA;oBACL,UAAU,YAAA;iBACX,CAAC,CAAC;gBAEH,+CAA+C;gBAC/C,qBAAqB,CAAC,IAAI,CAAC,CAAC;gBAC5B,yBAAyB,CAAC,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC;gBAE3D,IAAI,GAAG,mBAAmB,EAAE,CAAC;gBACnC,aAAa,CAAC,IAAI,CAAC,CAAC;;;aACrB,CAAC,EAAE,CAAC;QAEL,aAAa;QACb,oBAAoB,CAAC,OAAO,GAAG,oBAAoB,CAAC;IACtD,CAAC,EAAE,CAAC,aAAa,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;IAEjF,mDAAmD;IACnD,SAAS,CAAC;QACR,IAAI,CAAC,aAAa,IAAI,kBAAkB,EAAE,CAAC;YACzC,MAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;YAC9D,yBAAyB,CAAC,OAAO,GAAG,IAAI,CAAC;YACzC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,EAAE,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAExC,uDAAuD;IACvD,SAAS,CAAC;QACR,IAAM,YAAY,GAAG,KAAK,CAAC;QAC3B,IAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC;QAEvC,gCAAgC;QAChC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,YAAY,KAAK,SAAS,CAAC,iBAAiB,IAAI,YAAY,EAAE,CAAC;gBACjE,wEAAwE;gBACxE,eAAe,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;YAED,aAAa;YACb,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC;QACtC,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IAE1B,OAAO;QACL,YAAY,cAAA;QACZ,UAAU,YAAA;QACV,aAAa,eAAA;QACb,gBAAgB,kBAAA;KACjB,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { useCallback, useEffect, useState, useRef } from 'react';\nimport {\n useN1WalletContext,\n useN1WalletInternalContext,\n} from '../../../Provider/hooks';\nimport { N1SessionMode } from '../../../Provider/types';\nimport { logger } from '../../../utils/logger';\nimport { FlowState } from '../types';\n\n/**\n * Hook for handling wallet connection\n *\n * @param options Configuration options\n * @returns Wallet connection methods and state\n */\nexport const useNordWalletConnect = (\n state: FlowState,\n transition: (newState: FlowState, contextUpdates?: Partial<any>) => void,\n context: any,\n updateContext: (updates: Partial<any>) => void,\n sessionMode?: N1SessionMode\n) => {\n const { nord, nordUser } = useN1WalletContext();\n const { showDynamicWidget, dynamicWallet, setIsConnected } =\n useN1WalletInternalContext();\n\n const [isConnecting, setIsConnecting] = useState(false);\n const [walletType, setWalletType] = useState<'solana' | 'ethereum' | null>(\n context.walletType\n );\n const [hasProcessedWallet, setHasProcessedWallet] = useState(false);\n\n // Use refs to track previous values\n const processedWalletAddressRef = useRef<string | null>(null);\n const prevNordUserRef = useRef(nordUser);\n const prevDynamicWalletRef = useRef(dynamicWallet);\n const prevStateRef = useRef(state);\n\n /**\n * Determine wallet type from Dynamic wallet\n */\n const determineWalletType = useCallback((): 'solana' | 'ethereum' | null => {\n if (!dynamicWallet) return null;\n\n // Check wallet connector id to determine if it's ethereum or solana\n const connectorId = dynamicWallet.connector?.name?.toLowerCase() || '';\n if (connectorId.includes('solana') || connectorId.includes('phantom')) {\n return 'solana';\n } else {\n // Default to ethereum for most other wallets\n return 'ethereum';\n }\n }, [dynamicWallet]);\n\n /**\n * Connect wallet using Dynamic widget\n */\n const connectWallet = useCallback(async () => {\n if (isConnecting || !showDynamicWidget) return;\n\n setIsConnecting(true);\n setHasProcessedWallet(false);\n logger.debug('Starting wallet connection process');\n\n try {\n // Show Dynamic widget to connect wallet\n await disconnectWallet()\n await showDynamicWidget(true);\n logger.debug('Dynamic widget shown');\n } catch (error) {\n setIsConnecting(false);\n updateContext({ walletType: null });\n logger.error('Error showing Dynamic widget:', error);\n }\n }, [isConnecting, showDynamicWidget, updateContext]);\n\n /**\n * Disconnect wallet\n */\n const disconnectWallet = useCallback(() => {\n logger.debug('Disconnecting wallet');\n setWalletType(null);\n setHasProcessedWallet(false);\n processedWalletAddressRef.current = null;\n\n updateContext({ walletType: null });\n }, [updateContext]);\n\n // Process nordUser changes\n useEffect(() => {\n const currentNordUser = nordUser;\n const prevNordUser = prevNordUserRef.current;\n \n // Only run if nordUser has changed and we have processed a wallet\n if (hasProcessedWallet && currentNordUser && currentNordUser !== prevNordUser) {\n logger.debug('NordUser changed, checking account status');\n \n (async () => {\n try {\n if (!dynamicWallet || !nord) return;\n \n const hasNordAccount = await nord.accountExists(dynamicWallet.address);\n const sessionId = currentNordUser.sessionId;\n const hasActiveSession = sessionId != null;\n \n updateContext({ hasNordAccount, hasActiveSession });\n \n const transitionDestination = hasNordAccount\n ? sessionId != null\n ? FlowState.FINAL_SUCCESS\n : FlowState.AUTH_LOADING\n : FlowState.CHAIN_SELECTION;\n\n if (hasNordAccount && sessionId != null) {\n setIsConnected(true);\n }\n\n // Force a small delay to ensure UI updates properly\n setTimeout(() => {\n try {\n logger.debug('Attempting transition to ' + transitionDestination);\n transition(transitionDestination, {\n walletType: 'solana',\n hasNordAccount,\n hasActiveSession,\n });\n logger.debug(\n 'Transition to ' + transitionDestination + ' completed'\n );\n } catch (error) {\n logger.error('Error during transition:', error);\n } finally {\n setIsConnecting(false);\n }\n }, 100);\n } catch (error) {\n logger.error('Error checking account status:', error);\n setIsConnecting(false);\n }\n })();\n }\n \n // Update ref\n prevNordUserRef.current = currentNordUser;\n }, [nordUser, hasProcessedWallet, dynamicWallet, nord, updateContext, transition, setIsConnected]);\n\n /**\n * Effect to handle wallet connection state changes\n */\n useEffect(() => {\n const isNordMode = sessionMode === N1SessionMode.Nord;\n const currentDynamicWallet = dynamicWallet;\n const prevDynamicWallet = prevDynamicWalletRef.current;\n\n // If we don't have a wallet, nothing to process\n if (!currentDynamicWallet) {\n return;\n }\n\n // If the wallet hasn't changed, don't reprocess\n if (currentDynamicWallet === prevDynamicWallet) {\n return;\n }\n\n // If we've already processed this specific wallet address, don't process again\n if (\n hasProcessedWallet &&\n processedWalletAddressRef.current === currentDynamicWallet.address\n ) {\n logger.debug(\n 'Skipping wallet processing - already processed this address'\n );\n return;\n }\n\n // Use an IIFE to handle the async processing\n (async () => {\n // Prevent processing if already in progress\n if (hasProcessedWallet) {\n logger.debug('Skipping wallet processing - hasProcessedWallet is true');\n return;\n }\n\n logger.debug('Processing wallet connection:', {\n wallet: currentDynamicWallet.connector?.name,\n address: currentDynamicWallet.address?.slice(0, 8),\n state,\n isNordMode,\n });\n\n // Set processed flag first to prevent re-entry\n setHasProcessedWallet(true);\n processedWalletAddressRef.current = currentDynamicWallet.address;\n\n const type = determineWalletType();\n setWalletType(type);\n })();\n\n // Update ref\n prevDynamicWalletRef.current = currentDynamicWallet;\n }, [dynamicWallet, determineWalletType, hasProcessedWallet, sessionMode, state]);\n\n // Handle wallet disconnection in a separate effect\n useEffect(() => {\n if (!dynamicWallet && hasProcessedWallet) {\n logger.debug('Wallet disconnected, resetting processed flag');\n processedWalletAddressRef.current = null;\n setHasProcessedWallet(false);\n }\n }, [dynamicWallet, hasProcessedWallet]);\n\n // Handle connecting state changes in a separate effect\n useEffect(() => {\n const currentState = state;\n const prevState = prevStateRef.current;\n \n // Only run if state has changed\n if (currentState !== prevState) {\n if (currentState !== FlowState.CONNECTING_WALLET && isConnecting) {\n // If we're no longer in the connecting state, reset the connecting flag\n setIsConnecting(false);\n }\n \n // Update ref\n prevStateRef.current = currentState;\n }\n }, [state, isConnecting]);\n\n return {\n isConnecting,\n walletType,\n connectWallet,\n disconnectWallet,\n };\n};\n"]}
@@ -1 +1,2 @@
1
1
  export { NordFlow } from './NordFlow';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Modal/NordFlow/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC","sourcesContent":["export { NordFlow } from './NordFlow';\n"]}
@@ -8,10 +8,11 @@ export function ConnectWalletScreen(_a) {
8
8
  var _b = useState(null), isHovered = _b[0], setIsHovered = _b[1];
9
9
  // If connecting, show loading state
10
10
  if (isConnecting) {
11
- return (_jsxs("div", { className: "flex flex-col items-center justify-center py-12 space-y-6", children: [_jsx(LoadingSquares, {}), _jsxs("div", { className: "space-y-2 text-center w-[300px]", children: [_jsx("h3", { className: "text-xl text-gray-800 dark:text-white font-semibold", children: "Connecting Wallet" }), _jsx("p", { className: "text-sm text-gray-600 dark:text-neutral-400", children: "Please approve the connection request in your wallet" })] })] }));
11
+ return (_jsxs("div", { className: "flex flex-col items-center justify-center py-12 space-y-6", children: [_jsx(LoadingSquares, {}), _jsxs("div", { className: "space-y-2 text-center w-[300px]", children: [_jsx("h3", { className: "text-xl text-n1-gray-800 dark:text-white font-semibold", children: "Connecting Wallet" }), _jsx("p", { className: "text-sm text-n1-gray-600 dark:text-neutral-400", children: "Please approve the connection request in your wallet" })] })] }));
12
12
  }
13
13
  // If not connecting, show connect options (exactly like NTS flow)
14
- return (_jsx("div", { className: "p-6 overflow-hidden relative", children: _jsxs("div", { className: "space-y-4", children: [_jsx("button", { onClick: onConnectWallet, onMouseEnter: function () { return setIsHovered('wallet'); }, 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: {
14
+ return (_jsx("div", { className: "p-6 overflow-hidden relative", children: _jsxs("div", { className: "space-y-4", children: [_jsx("button", { onClick: onConnectWallet, onMouseEnter: function () { return setIsHovered('wallet'); }, onMouseLeave: function () { return setIsHovered(null); }, className: "\n group relative w-full overflow-hidden rounded-md border-2 bg-n1-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-pointer border-n1-gray-200 dark:border-n1-gray-800 hover:border-n1-gray-400 dark:hover:border-white/60\n "), style: {
15
15
  transform: isHovered === 'wallet' ? 'scale(0.99)' : 'scale(1)',
16
- }, children: _jsx("div", { className: "relative z-[200] pl-4 isolate", children: _jsxs("div", { className: "flex items-center", children: [_jsx(IoMdWallet, { className: "w-5 h-5 text-gray-500 dark:text-neutral-400 group-hover:text-gray-900 dark:group-hover:text-white transition-colors duration-300" }), _jsx("span", { className: "\n ml-2 text-base font-medium tracking-wide transition-colors duration-300 ".concat(ANIMATION_EASE, "\n text-gray-500 dark:text-neutral-400 group-hover:text-gray-900 dark:group-hover:text-white\n "), children: "Continue with Wallet" })] }) }) }), _jsx("button", { disabled: true, onMouseEnter: function () { return setIsHovered('google'); }, 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-not-allowed border-gray-200 dark:border-gray-800 opacity-50\n "), children: _jsx("div", { className: "relative z-[200] pl-4 isolate", children: _jsx("div", { className: "flex items-center", children: _jsx("span", { className: "text-base font-medium tracking-wide text-gray-500 dark:text-neutral-400", children: "Continue with Google (soon)" }) }) }) }), _jsx("button", { disabled: true, onMouseEnter: function () { return setIsHovered('email'); }, 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-not-allowed border-gray-200 dark:border-gray-800 opacity-50\n "), children: _jsx("div", { className: "relative z-[200] pl-4 isolate", children: _jsx("div", { className: "flex items-center", children: _jsx("span", { className: "text-base font-medium tracking-wide text-gray-500 dark:text-neutral-400", children: "Continue with Email (soon)" }) }) }) })] }) }));
16
+ }, children: _jsx("div", { className: "relative z-[200] pl-4 isolate", children: _jsxs("div", { className: "flex items-center", children: [_jsx(IoMdWallet, { className: "w-5 h-5 text-n1-gray-500 dark:text-neutral-400 group-hover:text-n1-gray-900 dark:group-hover:text-white transition-colors duration-300" }), _jsx("span", { className: "\n ml-2 text-base font-medium tracking-wide transition-colors duration-300 ".concat(ANIMATION_EASE, "\n text-n1-gray-500 dark:text-neutral-400 group-hover:text-n1-gray-900 dark:group-hover:text-white\n "), children: "Continue with Wallet" })] }) }) }), _jsx("button", { disabled: true, onMouseEnter: function () { return setIsHovered('google'); }, onMouseLeave: function () { return setIsHovered(null); }, className: "\n group relative w-full overflow-hidden rounded-md border-2 bg-n1-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-not-allowed border-n1-gray-200 dark:border-n1-gray-800 opacity-50\n "), children: _jsx("div", { className: "relative z-[200] pl-4 isolate", children: _jsx("div", { className: "flex items-center", children: _jsx("span", { className: "text-base font-medium tracking-wide text-n1-gray-500 dark:text-neutral-400", children: "Continue with Google (soon)" }) }) }) }), _jsx("button", { disabled: true, onMouseEnter: function () { return setIsHovered('email'); }, onMouseLeave: function () { return setIsHovered(null); }, className: "\n group relative w-full overflow-hidden rounded-md border-2 bg-n1-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-not-allowed border-n1-gray-200 dark:border-n1-gray-800 opacity-50\n "), children: _jsx("div", { className: "relative z-[200] pl-4 isolate", children: _jsx("div", { className: "flex items-center", children: _jsx("span", { className: "text-base font-medium tracking-wide text-n1-gray-500 dark:text-neutral-400", children: "Continue with Email (soon)" }) }) }) })] }) }));
17
17
  }
18
+ //# sourceMappingURL=01-ConnectWalletScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"01-ConnectWalletScreen.js","sourceRoot":"","sources":["../../../../src/Modal/NordFlow/screens/01-ConnectWalletScreen.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAO9C,MAAM,UAAU,mBAAmB,CAAC,EAGT;QAFzB,eAAe,qBAAA,EACf,YAAY,kBAAA;IAEN,IAAA,KAA4B,QAAQ,CAExC,IAAI,CAAC,EAFA,SAAS,QAAA,EAAE,YAAY,QAEvB,CAAC;IAER,oCAAoC;IACpC,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,CACL,eAAK,SAAS,EAAC,2DAA2D,aACxE,KAAC,cAAc,KAAG,EAClB,eAAK,SAAS,EAAC,iCAAiC,aAC9C,aAAI,SAAS,EAAC,wDAAwD,kCAEjE,EACL,YAAG,SAAS,EAAC,gDAAgD,qEAEzD,IACA,IACF,CACP,CAAC;IACJ,CAAC;IAED,kEAAkE;IAClE,OAAO,CACL,cAAK,SAAS,EAAC,8BAA8B,YAC3C,eAAK,SAAS,EAAC,WAAW,aACxB,iBACE,OAAO,EAAE,eAAe,EACxB,YAAY,EAAE,cAAM,OAAA,YAAY,CAAC,QAAQ,CAAC,EAAtB,CAAsB,EAC1C,YAAY,EAAE,cAAM,OAAA,YAAY,CAAC,IAAI,CAAC,EAAlB,CAAkB,EACtC,SAAS,EAAE,+KAEqB,cAAc,4IAE7C,EACD,KAAK,EAAE;wBACL,SAAS,EAAE,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU;qBAC/D,YAED,cAAK,SAAS,EAAC,+BAA+B,YAC5C,eAAK,SAAS,EAAC,mBAAmB,aAChC,KAAC,UAAU,IAAC,SAAS,EAAC,wIAAwI,GAAG,EACjK,eACE,SAAS,EAAE,oGAC+D,cAAc,sIAEzF,qCAGM,IACH,GACF,GACC,EAET,iBACE,QAAQ,QACR,YAAY,EAAE,cAAM,OAAA,YAAY,CAAC,QAAQ,CAAC,EAAtB,CAAsB,EAC1C,YAAY,EAAE,cAAM,OAAA,YAAY,CAAC,IAAI,CAAC,EAAlB,CAAkB,EACtC,SAAS,EAAE,+KAEqB,cAAc,uGAE7C,YAED,cAAK,SAAS,EAAC,+BAA+B,YAC5C,cAAK,SAAS,EAAC,mBAAmB,YAChC,eAAM,SAAS,EAAC,4EAA4E,4CAErF,GACH,GACF,GACC,EAET,iBACE,QAAQ,QACR,YAAY,EAAE,cAAM,OAAA,YAAY,CAAC,OAAO,CAAC,EAArB,CAAqB,EACzC,YAAY,EAAE,cAAM,OAAA,YAAY,CAAC,IAAI,CAAC,EAAlB,CAAkB,EACtC,SAAS,EAAE,+KAEqB,cAAc,uGAE7C,YAED,cAAK,SAAS,EAAC,+BAA+B,YAC5C,cAAK,SAAS,EAAC,mBAAmB,YAChC,eAAM,SAAS,EAAC,4EAA4E,2CAErF,GACH,GACF,GACC,IACL,GACF,CACP,CAAC;AACJ,CAAC","sourcesContent":["import { useState } from 'react';\nimport { IoMdWallet } from 'react-icons/io';\nimport { LoadingSquares } from '../components/LoadingSquares';\nimport { ANIMATION_EASE } from '../constants';\n\ninterface ConnectWalletScreenProps {\n onConnectWallet: () => void;\n isConnecting: boolean;\n}\n\nexport function ConnectWalletScreen({\n onConnectWallet,\n isConnecting,\n}: ConnectWalletScreenProps) {\n const [isHovered, setIsHovered] = useState<\n 'wallet' | 'google' | 'email' | null\n >(null);\n\n // If connecting, show loading state\n if (isConnecting) {\n return (\n <div className=\"flex flex-col items-center justify-center py-12 space-y-6\">\n <LoadingSquares />\n <div className=\"space-y-2 text-center w-[300px]\">\n <h3 className=\"text-xl text-n1-gray-800 dark:text-white font-semibold\">\n Connecting Wallet\n </h3>\n <p className=\"text-sm text-n1-gray-600 dark:text-neutral-400\">\n Please approve the connection request in your wallet\n </p>\n </div>\n </div>\n );\n }\n\n // If not connecting, show connect options (exactly like NTS flow)\n return (\n <div className=\"p-6 overflow-hidden relative\">\n <div className=\"space-y-4\">\n <button\n onClick={onConnectWallet}\n onMouseEnter={() => setIsHovered('wallet')}\n onMouseLeave={() => setIsHovered(null)}\n className={`\n group relative w-full overflow-hidden rounded-md border-2 bg-n1-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ${ANIMATION_EASE}\n cursor-pointer border-n1-gray-200 dark:border-n1-gray-800 hover:border-n1-gray-400 dark:hover:border-white/60\n `}\n style={{\n transform: isHovered === 'wallet' ? 'scale(0.99)' : 'scale(1)',\n }}\n >\n <div className=\"relative z-[200] pl-4 isolate\">\n <div className=\"flex items-center\">\n <IoMdWallet className=\"w-5 h-5 text-n1-gray-500 dark:text-neutral-400 group-hover:text-n1-gray-900 dark:group-hover:text-white transition-colors duration-300\" />\n <span\n className={`\n ml-2 text-base font-medium tracking-wide transition-colors duration-300 ${ANIMATION_EASE}\n text-n1-gray-500 dark:text-neutral-400 group-hover:text-n1-gray-900 dark:group-hover:text-white\n `}\n >\n Continue with Wallet\n </span>\n </div>\n </div>\n </button>\n\n <button\n disabled\n onMouseEnter={() => setIsHovered('google')}\n onMouseLeave={() => setIsHovered(null)}\n className={`\n group relative w-full overflow-hidden rounded-md border-2 bg-n1-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ${ANIMATION_EASE}\n cursor-not-allowed border-n1-gray-200 dark:border-n1-gray-800 opacity-50\n `}\n >\n <div className=\"relative z-[200] pl-4 isolate\">\n <div className=\"flex items-center\">\n <span className=\"text-base font-medium tracking-wide text-n1-gray-500 dark:text-neutral-400\">\n Continue with Google (soon)\n </span>\n </div>\n </div>\n </button>\n\n <button\n disabled\n onMouseEnter={() => setIsHovered('email')}\n onMouseLeave={() => setIsHovered(null)}\n className={`\n group relative w-full overflow-hidden rounded-md border-2 bg-n1-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ${ANIMATION_EASE}\n cursor-not-allowed border-n1-gray-200 dark:border-n1-gray-800 opacity-50\n `}\n >\n <div className=\"relative z-[200] pl-4 isolate\">\n <div className=\"flex items-center\">\n <span className=\"text-base font-medium tracking-wide text-n1-gray-500 dark:text-neutral-400\">\n Continue with Email (soon)\n </span>\n </div>\n </div>\n </button>\n </div>\n </div>\n );\n}\n"]}
@@ -32,16 +32,17 @@ export function EvmWalletAuthScreen(_a) {
32
32
  }, [authState, onAuth]);
33
33
  // Render waiting for signature screen
34
34
  if (authState === AuthState.WAITING_FOR_SIGNATURE) {
35
- return (_jsxs("div", { className: "flex flex-col items-center justify-center py-12 space-y-6", children: [_jsx(LoadingSquares, {}), _jsxs("div", { className: "space-y-2 text-center w-[300px]", children: [_jsx("h3", { className: "text-xl text-gray-800 dark:text-white font-semibold", children: "Waiting for Signature" }), _jsx("p", { className: "text-sm text-gray-600 dark:text-neutral-400", children: "Please sign the message in your Ethereum wallet to authenticate with Solana" })] })] }));
35
+ return (_jsxs("div", { className: "flex flex-col items-center justify-center py-12 space-y-6", children: [_jsx(LoadingSquares, {}), _jsxs("div", { className: "space-y-2 text-center w-[300px]", children: [_jsx("h3", { className: "text-xl text-n1-gray-800 dark:text-white font-semibold", children: "Waiting for Signature" }), _jsx("p", { className: "text-sm text-n1-gray-600 dark:text-neutral-400", children: "Please sign the message in your Ethereum wallet to authenticate with Solana" })] })] }));
36
36
  }
37
37
  // Render success screen
38
38
  if (authState === AuthState.SUCCESS) {
39
- return (_jsxs("div", { className: "flex flex-col items-center justify-center py-12 space-y-6", children: [_jsx("div", { className: "w-16 h-16 rounded-full bg-green-100 dark:bg-green-900 flex items-center justify-center", children: _jsx("svg", { xmlns: "http://www.w3.org/2000/svg", className: "h-8 w-8 text-green-600 dark:text-green-400", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M5 13l4 4L19 7" }) }) }), _jsxs("div", { className: "space-y-2 text-center w-[300px]", children: [_jsx("h3", { className: "text-xl text-gray-800 dark:text-white font-semibold", children: "Signature Verified" }), _jsx("p", { className: "text-sm text-gray-600 dark:text-neutral-400", children: "Your Ethereum wallet has been authenticated successfully" })] })] }));
39
+ return (_jsxs("div", { className: "flex flex-col items-center justify-center py-12 space-y-6", children: [_jsx("div", { className: "w-16 h-16 rounded-full bg-green-100 dark:bg-green-900 flex items-center justify-center", children: _jsx("svg", { xmlns: "http://www.w3.org/2000/svg", className: "h-8 w-8 text-green-600 dark:text-green-400", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M5 13l4 4L19 7" }) }) }), _jsxs("div", { className: "space-y-2 text-center w-[300px]", children: [_jsx("h3", { className: "text-xl text-n1-gray-800 dark:text-white font-semibold", children: "Signature Verified" }), _jsx("p", { className: "text-sm text-n1-gray-600 dark:text-neutral-400", children: "Your Ethereum wallet has been authenticated successfully" })] })] }));
40
40
  }
41
41
  // Render initial screen
42
- return (_jsx("div", { className: "overflow-hidden relative", children: _jsxs("div", { className: "space-y-6", children: [_jsx("h2", { className: "text-xl text-gray-800 dark:text-white font-semibold mb-2 text-center", children: "EVM Wallet Authentication" }), _jsx("p", { className: "text-sm text-gray-600 dark:text-neutral-400 text-center mb-4", children: "You need to sign a message to authenticate your Ethereum wallet with Solana" }), _jsx("button", { onClick: handleSignatureRequest, 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: {
42
+ return (_jsx("div", { className: "overflow-hidden relative", children: _jsxs("div", { className: "space-y-6", children: [_jsx("h2", { className: "text-xl text-n1-gray-800 dark:text-white font-semibold mb-2 text-center", children: "EVM Wallet Authentication" }), _jsx("p", { className: "text-sm text-n1-gray-600 dark:text-neutral-400 text-center mb-4", children: "You need to sign a message to authenticate your Ethereum wallet with Solana" }), _jsx("button", { onClick: handleSignatureRequest, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); }, className: "\n group relative w-full overflow-hidden rounded-md border-2 bg-n1-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-pointer border-n1-gray-200 dark:border-n1-gray-800 hover:border-n1-gray-400 dark:hover:border-white/60\n "), style: {
43
43
  transform: isHovered ? 'scale(0.99)' : 'scale(1)',
44
- }, 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: "Sign Authentication Message" }) })] }) }));
44
+ }, children: _jsx("span", { className: "\n text-base font-medium tracking-wide transition-colors duration-300 ".concat(ANIMATION_EASE, "\n text-n1-gray-700 dark:text-n1-gray-300 group-hover:text-n1-gray-900 dark:group-hover:text-white\n "), children: "Sign Authentication Message" }) })] }) }));
45
45
  }
46
46
  // For backward compatibility
47
47
  export { EvmWalletAuthScreen as EthToSolAuthScreen };
48
+ //# sourceMappingURL=02-EvmWalletAuthScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"02-EvmWalletAuthScreen.js","sourceRoot":"","sources":["../../../../src/Modal/NordFlow/screens/02-EvmWalletAuthScreen.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useEffect, useState } from 'react';\nimport { LoadingSquares } from '../components/LoadingSquares';\nimport { ANIMATION_EASE } from '../constants';\n\ninterface EvmWalletAuthScreenProps {\n onAuth: () => void;\n isAuthenticating?: boolean; // Optional for backward compatibility\n}\n\nenum AuthState {\n INITIAL = 'initial',\n WAITING_FOR_SIGNATURE = 'waiting_for_signature',\n SUCCESS = 'success',\n}\n\nexport function EvmWalletAuthScreen({\n onAuth,\n isAuthenticating = false,\n}: EvmWalletAuthScreenProps) {\n const [isHovered, setIsHovered] = useState(false);\n const [authState, setAuthState] = useState<AuthState>(\n isAuthenticating ? AuthState.WAITING_FOR_SIGNATURE : AuthState.INITIAL\n );\n\n // Handle signature request\n const handleSignatureRequest = () => {\n setAuthState(AuthState.WAITING_FOR_SIGNATURE);\n\n // Simulate signature process - in a real implementation,\n // this would be replaced with actual wallet signature logic\n setTimeout(() => {\n setAuthState(AuthState.SUCCESS);\n }, 2000);\n };\n\n // When signature is successful, trigger onAuth after a brief success message\n useEffect(() => {\n if (authState === AuthState.SUCCESS) {\n const timer = setTimeout(() => {\n onAuth();\n }, 1000);\n\n return () => clearTimeout(timer);\n }\n }, [authState, onAuth]);\n\n // Render waiting for signature screen\n if (authState === AuthState.WAITING_FOR_SIGNATURE) {\n return (\n <div className=\"flex flex-col items-center justify-center py-12 space-y-6\">\n <LoadingSquares />\n <div className=\"space-y-2 text-center w-[300px]\">\n <h3 className=\"text-xl text-n1-gray-800 dark:text-white font-semibold\">\n Waiting for Signature\n </h3>\n <p className=\"text-sm text-n1-gray-600 dark:text-neutral-400\">\n Please sign the message in your Ethereum wallet to authenticate with\n Solana\n </p>\n </div>\n </div>\n );\n }\n\n // Render success screen\n if (authState === AuthState.SUCCESS) {\n return (\n <div className=\"flex flex-col items-center justify-center py-12 space-y-6\">\n <div className=\"w-16 h-16 rounded-full bg-green-100 dark:bg-green-900 flex items-center justify-center\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"h-8 w-8 text-green-600 dark:text-green-400\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M5 13l4 4L19 7\"\n />\n </svg>\n </div>\n <div className=\"space-y-2 text-center w-[300px]\">\n <h3 className=\"text-xl text-n1-gray-800 dark:text-white font-semibold\">\n Signature Verified\n </h3>\n <p className=\"text-sm text-n1-gray-600 dark:text-neutral-400\">\n Your Ethereum wallet has been authenticated successfully\n </p>\n </div>\n </div>\n );\n }\n\n // Render initial screen\n return (\n <div className=\"overflow-hidden relative\">\n <div className=\"space-y-6\">\n <h2 className=\"text-xl text-n1-gray-800 dark:text-white font-semibold mb-2 text-center\">\n EVM Wallet Authentication\n </h2>\n <p className=\"text-sm text-n1-gray-600 dark:text-neutral-400 text-center mb-4\">\n You need to sign a message to authenticate your Ethereum wallet with\n Solana\n </p>\n\n <button\n onClick={handleSignatureRequest}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n className={`\n group relative w-full overflow-hidden rounded-md border-2 bg-n1-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ${ANIMATION_EASE}\n cursor-pointer border-n1-gray-200 dark:border-n1-gray-800 hover:border-n1-gray-400 dark:hover:border-white/60\n `}\n style={{\n transform: isHovered ? 'scale(0.99)' : 'scale(1)',\n }}\n >\n <span\n className={`\n text-base font-medium tracking-wide transition-colors duration-300 ${ANIMATION_EASE}\n text-n1-gray-700 dark:text-n1-gray-300 group-hover:text-n1-gray-900 dark:group-hover:text-white\n `}\n >\n Sign Authentication Message\n </span>\n </button>\n </div>\n </div>\n );\n}\n\n// For backward compatibility\nexport { EvmWalletAuthScreen as EthToSolAuthScreen };\n"]}
@@ -10,7 +10,7 @@ import { logger } from '../../../utils/logger';
10
10
  // Custom N1Logo wrapper that responds to the group hover state
11
11
  var N1Logo = function (_a) {
12
12
  var _b = _a.size, size = _b === void 0 ? 38 : _b;
13
- return (_jsx("div", { className: "text-gray-800 dark:text-white group-hover:text-red-500 dark:group-hover:text-red-500 transition-colors duration-200", children: _jsx(Logo, { size: size }) }));
13
+ return (_jsx("div", { className: "text-n1-gray-800 dark:text-white group-hover:text-red-500 dark:group-hover:text-red-500 transition-colors duration-200", children: _jsx(Logo, { size: size }) }));
14
14
  };
15
15
  export function ChainSelectionScreen(_a) {
16
16
  var onChainSelect = _a.onChainSelect;
@@ -59,5 +59,6 @@ export function ChainSelectionScreen(_a) {
59
59
  disabled: true,
60
60
  },
61
61
  ];
62
- return (_jsxs("div", { className: "overflow-hidden relative", children: [_jsx("h2", { className: "text-xl text-gray-800 dark:text-white font-semibold mb-6 text-center", children: "Select Origin Network" }), isLoading ? (_jsx("div", { className: "flex justify-center items-center py-8", children: _jsx("div", { className: "animate-spin rounded-full h-8 w-8 border-b-2 border-main" }) })) : (_jsxs("div", { className: "space-y-8", children: [_jsxs("div", { className: "grid grid-cols-2 gap-4", children: [_jsx(ChainButton, { chain: chainsWithNetworkInfo[0], onClick: function () { return handleChainSelect(chainsWithNetworkInfo[0].id); }, disabled: chainsWithNetworkInfo[0].disabled }, chainsWithNetworkInfo[0].id), _jsx(ChainButton, { chain: chainsWithNetworkInfo[1], onClick: function () { return handleChainSelect(chainsWithNetworkInfo[1].id); }, disabled: chainsWithNetworkInfo[1].disabled }, chainsWithNetworkInfo[1].id)] }), _jsxs("div", { className: "grid grid-cols-2 gap-4", children: [_jsx(EVMChainsButton, { chain: chainsWithNetworkInfo[2], onClick: function () { return handleChainSelect(chainsWithNetworkInfo[2].id); }, disabled: chainsWithNetworkInfo[2].disabled }, chainsWithNetworkInfo[2].id), _jsx(MoreButton, { chain: chainsWithNetworkInfo[3], onClick: function () { return handleChainSelect(chainsWithNetworkInfo[3].id); }, disabled: chainsWithNetworkInfo[3].disabled }, chainsWithNetworkInfo[3].id)] })] }))] }));
62
+ return (_jsxs("div", { className: "overflow-hidden relative", children: [_jsx("h2", { className: "text-xl text-n1-gray-800 dark:text-white font-semibold mb-6 text-center", children: "Select Origin Network" }), isLoading ? (_jsx("div", { className: "flex justify-center items-center py-8", children: _jsx("div", { className: "n1-animate-spin rounded-full h-8 w-8 border-b-2 border-n1-main" }) })) : (_jsxs("div", { className: "space-y-8", children: [_jsxs("div", { className: "grid grid-cols-2 gap-4", children: [_jsx(ChainButton, { chain: chainsWithNetworkInfo[0], onClick: function () { return handleChainSelect(chainsWithNetworkInfo[0].id); }, disabled: chainsWithNetworkInfo[0].disabled }, chainsWithNetworkInfo[0].id), _jsx(ChainButton, { chain: chainsWithNetworkInfo[1], onClick: function () { return handleChainSelect(chainsWithNetworkInfo[1].id); }, disabled: chainsWithNetworkInfo[1].disabled }, chainsWithNetworkInfo[1].id)] }), _jsxs("div", { className: "grid grid-cols-2 gap-4", children: [_jsx(EVMChainsButton, { chain: chainsWithNetworkInfo[2], onClick: function () { return handleChainSelect(chainsWithNetworkInfo[2].id); }, disabled: chainsWithNetworkInfo[2].disabled }, chainsWithNetworkInfo[2].id), _jsx(MoreButton, { chain: chainsWithNetworkInfo[3], onClick: function () { return handleChainSelect(chainsWithNetworkInfo[3].id); }, disabled: chainsWithNetworkInfo[3].disabled }, chainsWithNetworkInfo[3].id)] })] }))] }));
63
63
  }
64
+ //# sourceMappingURL=03-ChainSelectionScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"03-ChainSelectionScreen.js","sourceRoot":"","sources":["../../../../src/Modal/NordFlow/screens/03-ChainSelectionScreen.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState } from 'react';\nimport { SolanaNetwork } from '../../../config/solana';\nimport { ChainButton } from '../components/ChainButton';\nimport { EVMChainsButton } from '../components/EVMChainsButton';\nimport { MoreButton } from '../components/MoreButton';\nimport { Chain } from '../types';\nimport { SolanaLogo } from '../../../components/logos';\nimport Logo from '../../../components/Logo';\nimport { logger } from '../../../utils/logger';\n\ninterface ChainSelectionScreenProps {\n chains: Chain[];\n onChainSelect: (chainId: string) => void;\n}\n\n// Custom N1Logo wrapper that responds to the group hover state\nconst N1Logo = ({ size = 38 }) => (\n <div className=\"text-n1-gray-800 dark:text-white group-hover:text-red-500 dark:group-hover:text-red-500 transition-colors duration-200\">\n <Logo size={size} />\n </div>\n);\n\nexport function ChainSelectionScreen({\n onChainSelect,\n}: ChainSelectionScreenProps) {\n const [isLoading, setIsLoading] = useState(false);\n\n // Only allow devnet, gray out other chains\n const handleChainSelect = (chainId: string) => {\n logger.debug('Chain selected in ChainSelectionScreen:', chainId);\n\n // Only allow devnet to be selected\n if (chainId === 'devnet') {\n setIsLoading(true);\n onChainSelect(chainId);\n } else {\n logger.debug('Chain not allowed:', chainId);\n // Could show a toast or message here\n }\n };\n\n // Define the 4 options as requested\n const chainsWithNetworkInfo = [\n {\n id: 'devnet',\n name: 'Devnet',\n logo: (\n <div\n className=\"flex items-center justify-center\"\n style={{ width: 48, height: 48 }}\n >\n <N1Logo />\n </div>\n ),\n network: SolanaNetwork.DEVNET,\n disabled: false, // Only devnet is clickable\n },\n {\n id: 'solana',\n name: 'Solana',\n logo: (\n <div\n className=\"flex items-center justify-center\"\n style={{ width: 48, height: 48 }}\n >\n <SolanaLogo width={36} height={36} />\n </div>\n ),\n network: SolanaNetwork.MAINNET,\n disabled: true,\n },\n {\n id: 'evm-chains',\n name: 'EVM Chains',\n logo: '', // Not needed as we're using EVMChainsButton\n network: '', // Empty string instead of null\n disabled: true,\n },\n {\n id: 'more',\n name: 'More',\n logo: '', // Not needed as we're using MoreButton\n network: '', // Empty string instead of null\n disabled: true,\n },\n ];\n\n return (\n <div className=\"overflow-hidden relative\">\n <h2 className=\"text-xl text-n1-gray-800 dark:text-white font-semibold mb-6 text-center\">\n Select Origin Network\n </h2>\n\n {isLoading ? (\n <div className=\"flex justify-center items-center py-8\">\n <div className=\"n1-animate-spin rounded-full h-8 w-8 border-b-2 border-n1-main\"></div>\n </div>\n ) : (\n <div className=\"space-y-8\">\n {/* First row: Devnet, Solana */}\n <div className=\"grid grid-cols-2 gap-4\">\n <ChainButton\n key={chainsWithNetworkInfo[0].id}\n chain={chainsWithNetworkInfo[0]}\n onClick={() => handleChainSelect(chainsWithNetworkInfo[0].id)}\n disabled={chainsWithNetworkInfo[0].disabled}\n />\n <ChainButton\n key={chainsWithNetworkInfo[1].id}\n chain={chainsWithNetworkInfo[1]}\n onClick={() => handleChainSelect(chainsWithNetworkInfo[1].id)}\n disabled={chainsWithNetworkInfo[1].disabled}\n />\n </div>\n\n {/* Second row: EVM Chains, More */}\n <div className=\"grid grid-cols-2 gap-4\">\n <EVMChainsButton\n key={chainsWithNetworkInfo[2].id}\n chain={chainsWithNetworkInfo[2]}\n onClick={() => handleChainSelect(chainsWithNetworkInfo[2].id)}\n disabled={chainsWithNetworkInfo[2].disabled}\n />\n <MoreButton\n key={chainsWithNetworkInfo[3].id}\n chain={chainsWithNetworkInfo[3]}\n onClick={() => handleChainSelect(chainsWithNetworkInfo[3].id)}\n disabled={chainsWithNetworkInfo[3].disabled}\n />\n </div>\n </div>\n )}\n </div>\n );\n}\n"]}
@@ -181,7 +181,8 @@ export function AmountInputScreen(_a) {
181
181
  }, [balance, hardcodedMinDeposit]);
182
182
  // Format the balance with the appropriate number of decimal places
183
183
  var formattedBalance = formatAmount(balance, tokenDecimals);
184
- 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", value: amount, readOnly: true, 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 cursor-not-allowed" }), _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: ", hardcodedMinDeposit, " ", tokenSymbol] }), _jsxs("span", { className: "text-xs text-gray-400 dark:text-neutral-500", children: ["Max: ", hardcodedMaxDeposit, " ", tokenSymbol] })] }), depositError && (_jsx("div", { className: "mt-2 p-3 bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-md", children: _jsxs("div", { className: "flex items-start", children: [_jsx("div", { className: "flex-shrink-0 text-red-500", children: _jsx("svg", { className: "h-5 w-5", viewBox: "0 0 20 20", fill: "currentColor", children: _jsx("path", { fillRule: "evenodd", d: "M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z", clipRule: "evenodd" }) }) }), _jsxs("div", { className: "ml-3", children: [_jsx("h3", { className: "text-sm font-medium text-red-800 dark:text-red-300", children: "Deposit Failed" }), _jsx("div", { className: "mt-2 text-xs text-red-600 dark:text-red-400", children: "Please try again." })] })] }) }))] }), _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: {
184
+ 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-n1-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm", children: _jsx("div", { className: "absolute inset-x-0 bottom-0 h-full bg-n1-main/40 dark:bg-n1-main/30 n1-animate-square-loader" }) }), _jsx("div", { className: "relative bg-white dark:bg-neutral-800 border border-n1-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm", children: _jsx("div", { className: "absolute inset-x-0 bottom-0 h-full bg-n1-main/40 dark:bg-n1-main/30 n1-animate-square-loader", style: { animationDelay: '0.2s' } }) }), _jsx("div", { className: "relative bg-white dark:bg-neutral-800 border border-n1-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm", children: _jsx("div", { className: "absolute inset-x-0 bottom-0 h-full bg-n1-main/40 dark:bg-n1-main/30 n1-animate-square-loader", style: { animationDelay: '0.4s' } }) }), _jsx("div", { className: "relative bg-white dark:bg-neutral-800 border border-n1-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm", children: _jsx("div", { className: "absolute inset-x-0 bottom-0 h-full bg-n1-main/40 dark:bg-n1-main/30 n1-animate-square-loader", style: { animationDelay: '0.6s' } }) })] }) }), _jsx("h3", { className: "text-lg font-medium text-n1-gray-800 dark:text-white mb-2", children: "Obtaining Testnet Tokens" }), _jsx("p", { className: "text-sm text-n1-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-n1-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-n1-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-n1-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-n1-main text-white rounded-md hover:bg-n1-main/90 transition-colors", children: "Try Again" })] })) : null })), _jsx("h2", { className: "text-xl text-n1-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-n1-gray-500 dark:text-neutral-400", children: "Amount" }), _jsxs("span", { className: "text-sm text-n1-gray-500 dark:text-neutral-400", children: ["Balance: ", formattedBalance, " ", tokenSymbol] })] }), _jsxs("div", { className: "relative", children: [_jsx("input", { type: "text", value: amount, readOnly: true, className: "w-full bg-white dark:bg-neutral-950 border-2 border-n1-gray-100 dark:border-neutral-800 rounded-md px-4 py-3 text-n1-gray-900 dark:text-white placeholder-n1-gray-400 dark:placeholder-neutral-500 focus:outline-none focus:ring-0 focus:border-n1-main dark:focus:border-n1-main transition-colors duration-200 cursor-not-allowed" }), _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-n1-gray-400 dark:text-neutral-500", children: tokenSymbol })] })] }), _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("span", { className: "text-xs text-n1-gray-400 dark:text-neutral-500", children: ["Min: ", hardcodedMinDeposit, " ", tokenSymbol] }), _jsxs("span", { className: "text-xs text-n1-gray-400 dark:text-neutral-500", children: ["Max: ", hardcodedMaxDeposit, " ", tokenSymbol] })] }), depositError && (_jsx("div", { className: "mt-2 p-3 bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-md", children: _jsxs("div", { className: "flex items-start", children: [_jsx("div", { className: "flex-shrink-0 text-red-500", children: _jsx("svg", { className: "h-5 w-5", viewBox: "0 0 20 20", fill: "currentColor", children: _jsx("path", { fillRule: "evenodd", d: "M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z", clipRule: "evenodd" }) }) }), _jsxs("div", { className: "ml-3", children: [_jsx("h3", { className: "text-sm font-medium text-red-800 dark:text-red-300", children: "Deposit Failed" }), _jsx("div", { className: "mt-2 text-xs text-red-600 dark:text-red-400", children: "Please try again." })] })] }) }))] }), _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-n1-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-pointer border-n1-gray-200 dark:border-n1-gray-800 hover:border-n1-gray-400 dark:hover:border-white/60\n ").concat(!isValidAmount ? 'opacity-50 cursor-not-allowed hover:border-n1-gray-200 dark:hover:border-n1-gray-800' : '', "\n "), style: {
185
185
  transform: isHovered && isValidAmount ? 'scale(0.99)' : 'scale(1)',
186
- }, 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" }) })] })] }));
186
+ }, children: _jsx("span", { className: "\n text-base font-medium tracking-wide transition-colors duration-300 ".concat(ANIMATION_EASE, "\n text-n1-gray-700 dark:text-n1-gray-300 group-hover:text-n1-gray-900 dark:group-hover:text-white\n "), children: "Continue" }) })] })] }));
187
187
  }
188
+ //# sourceMappingURL=04-AmountInputScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"04-AmountInputScreen.js","sourceRoot":"","sources":["../../../../src/Modal/NordFlow/screens/04-AmountInputScreen.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\nimport {\n useN1WalletContext,\n useN1WalletInternalContext,\n} from '../../../Provider/hooks';\nimport { ImageWithFallback } from '../components';\nimport { ANIMATION_EASE } from '../constants';\nimport { formatAmount, isNordConfigured } from '../utils/nordUtils';\n\ninterface AmountInputScreenProps {\n amount: string;\n onAmountChange: (amount: string) => void;\n onContinue: () => void;\n balance: number;\n faucetUrl?: string;\n refreshBalance?: () => Promise<void>;\n depositError?: string;\n}\n\nexport function AmountInputScreen({\n amount: _amount, // Renamed to _amount since we're not using the prop\n onAmountChange,\n onContinue,\n balance: _balance, // Renamed to _balance since we're overriding it\n faucetUrl: propFaucetUrl,\n refreshBalance,\n depositError,\n}: AmountInputScreenProps) {\n // Hard code amount to 100\n const amount = '100';\n // Hard code balance to 0 to allow faucet to trigger\n const balance = 0;\n\n // Force the amount to be 100 on component mount only, not on every render\n useEffect(() => {\n onAmountChange('100');\n // Empty dependency array ensures this only runs once on mount\n }, []);\n\n const [isHovered, setIsHovered] = useState(false);\n const [isFaucetLoading, setIsFaucetLoading] = useState(false);\n const [faucetError, setFaucetError] = useState<string | null>(null);\n const [tokensObtained, setTokensObtained] = useState(false);\n const [showFaucetSuccess, setShowFaucetSuccess] = useState(false);\n const { address, nord } = useN1WalletContext();\n const { faucetUrl: contextFaucetUrl } = useN1WalletInternalContext();\n const prevBalanceRef = useRef(balance);\n\n const faucetUrl = propFaucetUrl || contextFaucetUrl;\n\n // Get token information from Nord if available\n const [tokenSymbol, setTokenSymbol] = useState('USDC');\n const [tokenLogo, setTokenLogo] = useState('/images/tokens/usdc.svg');\n const [tokenDecimals, setTokenDecimals] = useState(6);\n\n // Try to get token information from Nord\n useEffect(() => {\n if (nord && isNordConfigured(nord)) {\n try {\n // Find the USDC token or the first token\n const usdcToken =\n nord.tokens.find((t: any) => t.symbol === 'USDC') || nord.tokens[0];\n if (usdcToken) {\n setTokenSymbol(usdcToken.symbol);\n // Use a default logo if not available\n setTokenLogo(`/images/tokens/${usdcToken.symbol.toLowerCase()}.svg`);\n setTokenDecimals(usdcToken.decimals);\n }\n } catch (error) {\n console.warn('Error getting token information from Nord:', error);\n }\n }\n }, [nord]);\n\n // Removed handleAmountChange since we don't want user to edit the amount\n\n // todo:fix\n const isValidAmount = true;\n\n // Hard code MIN_DEPOSIT to 100\n const hardcodedMinDeposit = 100;\n // Hard code MAX_DEPOSIT to 100\n const hardcodedMaxDeposit = 100;\n\n // Check if faucet is enabled and balance is low\n const shouldShowFaucet =\n faucetUrl && balance < hardcodedMinDeposit && !tokensObtained;\n\n // Determine if we should show the faucet overlay\n const showFaucetOverlay =\n (shouldShowFaucet && (isFaucetLoading || faucetError)) || showFaucetSuccess;\n\n // Function to request tokens from faucet\n const requestTestnetTokens = useCallback(async () => {\n if (!faucetUrl || !address) return;\n\n try {\n setIsFaucetLoading(true);\n setFaucetError(null);\n setShowFaucetSuccess(false);\n\n const response = await fetch(faucetUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ address }),\n });\n\n if (!response.ok) {\n const errorData = await response\n .json()\n .catch(() => ({ error: 'Failed to request tokens' }));\n throw new Error(errorData.error || 'Failed to request tokens');\n }\n\n await response.json();\n\n // Mark tokens as obtained to prevent further requests\n setTokensObtained(true);\n\n // Show success message\n setShowFaucetSuccess(true);\n\n // Refresh balance if the function is provided\n if (refreshBalance) {\n await refreshBalance();\n }\n\n setShowFaucetSuccess(false);\n } catch (error) {\n console.error('Faucet error:', error);\n setFaucetError(\n error instanceof Error ? error.message : 'Failed to request tokens'\n );\n } finally {\n setIsFaucetLoading(false);\n }\n }, [faucetUrl, address, refreshBalance]);\n\n // Request tokens automatically when faucet is enabled and balance is low\n useEffect(() => {\n if (\n shouldShowFaucet &&\n !isFaucetLoading &&\n !faucetError &&\n !showFaucetSuccess &&\n depositError == null\n ) {\n requestTestnetTokens();\n }\n }, [\n shouldShowFaucet,\n isFaucetLoading,\n faucetError,\n showFaucetSuccess,\n requestTestnetTokens,\n ]);\n\n // Reset tokensObtained state if balance changes to a higher value\n useEffect(() => {\n // If balance has increased and is now sufficient, reset the tokensObtained flag\n if (balance > prevBalanceRef.current && balance >= hardcodedMinDeposit) {\n setTokensObtained(false);\n setShowFaucetSuccess(false);\n }\n\n // Update the previous balance reference\n prevBalanceRef.current = balance;\n }, [balance, hardcodedMinDeposit]);\n\n // Format the balance with the appropriate number of decimal places\n const formattedBalance = formatAmount(balance, tokenDecimals);\n\n return (\n <div className=\"overflow-hidden relative\">\n {/* Faucet Overlay */}\n {showFaucetOverlay && (\n <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\">\n {isFaucetLoading ? (\n <>\n <div className=\"relative w-16 h-16 mb-4\">\n <div className=\"absolute inset-0 grid grid-cols-2 gap-1\">\n <div className=\"relative bg-white dark:bg-neutral-800 border border-n1-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm\">\n <div className=\"absolute inset-x-0 bottom-0 h-full bg-n1-main/40 dark:bg-n1-main/30 n1-animate-square-loader\"></div>\n </div>\n <div className=\"relative bg-white dark:bg-neutral-800 border border-n1-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm\">\n <div\n className=\"absolute inset-x-0 bottom-0 h-full bg-n1-main/40 dark:bg-n1-main/30 n1-animate-square-loader\"\n style={{ animationDelay: '0.2s' }}\n ></div>\n </div>\n <div className=\"relative bg-white dark:bg-neutral-800 border border-n1-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm\">\n <div\n className=\"absolute inset-x-0 bottom-0 h-full bg-n1-main/40 dark:bg-n1-main/30 n1-animate-square-loader\"\n style={{ animationDelay: '0.4s' }}\n ></div>\n </div>\n <div className=\"relative bg-white dark:bg-neutral-800 border border-n1-gray-100 dark:border-neutral-700 overflow-hidden rounded-sm\">\n <div\n className=\"absolute inset-x-0 bottom-0 h-full bg-n1-main/40 dark:bg-n1-main/30 n1-animate-square-loader\"\n style={{ animationDelay: '0.6s' }}\n ></div>\n </div>\n </div>\n </div>\n <h3 className=\"text-lg font-medium text-n1-gray-800 dark:text-white mb-2\">\n Obtaining Testnet Tokens\n </h3>\n <p className=\"text-sm text-n1-gray-500 dark:text-neutral-400 text-center\">\n Please wait while we request testnet tokens for your wallet...\n </p>\n </>\n ) : showFaucetSuccess ? (\n <>\n <div className=\"text-green-500 text-4xl mb-4\">✓</div>\n <h3 className=\"text-lg font-medium text-n1-gray-800 dark:text-white mb-2\">\n Tokens Obtained Successfully\n </h3>\n <p className=\"text-sm text-green-500 dark:text-green-400 text-center mb-4\">\n Your wallet has been funded with testnet tokens.\n </p>\n <p className=\"text-sm text-n1-gray-500 dark:text-neutral-400 text-center\">\n Please wait while your balance updates...\n </p>\n </>\n ) : faucetError ? (\n <>\n <div className=\"text-red-500 text-4xl mb-4\">⚠️</div>\n <h3 className=\"text-lg font-medium text-n1-gray-800 dark:text-white mb-2\">\n Failed to Get Tokens\n </h3>\n <p className=\"text-sm text-red-500 dark:text-red-400 text-center mb-4\">\n {faucetError}\n </p>\n <button\n onClick={requestTestnetTokens}\n className=\"px-4 py-2 bg-n1-main text-white rounded-md hover:bg-n1-main/90 transition-colors\"\n >\n Try Again\n </button>\n </>\n ) : null}\n </div>\n )}\n\n <h2 className=\"text-xl text-n1-gray-800 dark:text-white font-semibold mb-6 text-center\">\n Enter Amount\n </h2>\n\n <div className=\"space-y-8\">\n <div className=\"space-y-4\">\n <div className=\"flex items-center justify-between\">\n <span className=\"text-sm text-n1-gray-500 dark:text-neutral-400\">\n Amount\n </span>\n <span className=\"text-sm text-n1-gray-500 dark:text-neutral-400\">\n Balance: {formattedBalance} {tokenSymbol}\n </span>\n </div>\n <div className=\"relative\">\n <input\n type=\"text\"\n value={amount}\n readOnly\n className=\"w-full bg-white dark:bg-neutral-950 border-2 border-n1-gray-100 dark:border-neutral-800 rounded-md px-4 py-3 text-n1-gray-900 dark:text-white placeholder-n1-gray-400 dark:placeholder-neutral-500 focus:outline-none focus:ring-0 focus:border-n1-main dark:focus:border-n1-main transition-colors duration-200 cursor-not-allowed\"\n />\n <div className=\"absolute right-4 top-1/2 -translate-y-1/2 flex items-center gap-2\">\n <ImageWithFallback\n src={tokenLogo}\n width={20}\n height={20}\n alt={tokenSymbol}\n fallbackClassName=\"w-5 h-5 rounded-full text-xs font-bold flex items-center justify-center\"\n fallbackBgColor=\"bg-blue-100 dark:bg-blue-900\"\n fallbackTextColor=\"text-blue-500 dark:text-blue-300\"\n fallbackText={tokenSymbol.charAt(0)}\n />\n <span className=\"text-n1-gray-400 dark:text-neutral-500\">\n {tokenSymbol}\n </span>\n </div>\n </div>\n <div className=\"flex items-center justify-between\">\n <span className=\"text-xs text-n1-gray-400 dark:text-neutral-500\">\n Min: {hardcodedMinDeposit} {tokenSymbol}\n </span>\n <span className=\"text-xs text-n1-gray-400 dark:text-neutral-500\">\n Max: {hardcodedMaxDeposit} {tokenSymbol}\n </span>\n </div>\n \n {/* Display deposit error if present */}\n {depositError && (\n <div className=\"mt-2 p-3 bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-md\">\n <div className=\"flex items-start\">\n <div className=\"flex-shrink-0 text-red-500\">\n <svg className=\"h-5 w-5\" viewBox=\"0 0 20 20\" fill=\"currentColor\">\n <path fillRule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\" clipRule=\"evenodd\" />\n </svg>\n </div>\n <div className=\"ml-3\">\n <h3 className=\"text-sm font-medium text-red-800 dark:text-red-300\">\n Deposit Failed\n </h3>\n <div className=\"mt-2 text-xs text-red-600 dark:text-red-400\">\n Please try again.\n </div>\n </div>\n </div>\n </div>\n )}\n </div>\n\n <button\n onClick={onContinue}\n disabled={!isValidAmount}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n className={`\n group relative w-full overflow-hidden rounded-md border-2 bg-n1-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ${ANIMATION_EASE}\n cursor-pointer border-n1-gray-200 dark:border-n1-gray-800 hover:border-n1-gray-400 dark:hover:border-white/60\n ${!isValidAmount ? 'opacity-50 cursor-not-allowed hover:border-n1-gray-200 dark:hover:border-n1-gray-800' : ''}\n `}\n style={{\n transform: isHovered && isValidAmount ? 'scale(0.99)' : 'scale(1)',\n }}\n >\n <span\n className={`\n text-base font-medium tracking-wide transition-colors duration-300 ${ANIMATION_EASE}\n text-n1-gray-700 dark:text-n1-gray-300 group-hover:text-n1-gray-900 dark:group-hover:text-white\n `}\n >\n Continue\n </span>\n </button>\n </div>\n </div>\n );\n}\n"]}
@@ -41,5 +41,6 @@ export function DepositProgressScreen(_a) {
41
41
  "Please wait while we process your ".concat(accountType, " deposit") });
42
42
  };
43
43
  var sessionMessage = getSessionSpecificMessage();
44
- 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
+ return (_jsxs("div", { className: "overflow-hidden relative", children: [_jsx(WaitingMessage, { message: sessionMessage }), _jsxs("div", { className: "text-center mt-4 text-sm text-n1-gray-500", children: ["Time elapsed: ", elapsedTime, "s / ", maxTime, "s"] })] }));
45
45
  }
46
+ //# sourceMappingURL=05-DepositProgressScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"05-DepositProgressScreen.js","sourceRoot":"","sources":["../../../../src/Modal/NordFlow/screens/05-DepositProgressScreen.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAM5C,MAAM,UAAU,qBAAqB,CAAC,EAAuC;QAArC,OAAO,aAAA;IACrC,IAAA,WAAW,GAAK,0BAA0B,EAAE,YAAjC,CAAkC;IAC/C,IAAA,KAAgC,QAAQ,CAAC,CAAC,CAAC,EAA1C,WAAW,QAAA,EAAE,cAAc,QAAe,CAAC;IAClD,IAAM,OAAO,GAAG,GAAG,CAAC,CAAC,0BAA0B;IAE/C,oCAAoC;IACpC,SAAS,CAAC;QACR,IAAM,KAAK,GAAG,WAAW,CAAC;YACxB,cAAc,CAAC,UAAC,QAAQ;gBACtB,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;oBACxB,aAAa,CAAC,KAAK,CAAC,CAAC;oBACrB,OAAO,OAAO,CAAC;gBACjB,CAAC;gBACD,OAAO,QAAQ,GAAG,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,IAAI,CAAC,CAAC;QAET,4BAA4B;QAC5B,OAAO,cAAM,OAAA,aAAa,CAAC,KAAK,CAAC,EAApB,CAAoB,CAAC;IACpC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,0DAA0D;IAC1D,IAAM,yBAAyB,GAAG;QAChC,IAAM,kBAAkB,GAAG,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,aAAa,CAAC,GAAG,CAAC;QAC5D,IAAM,WAAW,GACf,kBAAkB,KAAK,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QAE7D,6BACK,OAAO,KACV,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,qBAAc,WAAW,aAAU,EAC3D,QAAQ,EACN,OAAO,CAAC,QAAQ;gBAChB,4CAAqC,WAAW,aAAU,IAC5D;IACJ,CAAC,CAAC;IAEF,IAAM,cAAc,GAAG,yBAAyB,EAAE,CAAC;IAEnD,OAAO,CACL,eAAK,SAAS,EAAC,0BAA0B,aACvC,KAAC,cAAc,IAAC,OAAO,EAAE,cAAc,GAAI,EAC3C,eAAK,SAAS,EAAC,2CAA2C,+BACzC,WAAW,UAAM,OAAO,SACnC,IACF,CACP,CAAC;AACJ,CAAC","sourcesContent":["import { WaitingMessage } from '../components/WaitingMessage';\nimport { WaitingMessageState } from '../types';\nimport { useN1WalletInternalContext } from '../../../Provider/hooks';\nimport { N1SessionMode } from '../../../Provider/types';\nimport { useState, useEffect } from 'react';\n\ninterface DepositProgressScreenProps {\n message: WaitingMessageState;\n}\n\nexport function DepositProgressScreen({ message }: DepositProgressScreenProps) {\n const { sessionMode } = useN1WalletInternalContext();\n const [elapsedTime, setElapsedTime] = useState(0);\n const maxTime = 300; // Maximum time in seconds\n\n // Start timer when component mounts\n useEffect(() => {\n const timer = setInterval(() => {\n setElapsedTime((prevTime) => {\n if (prevTime >= maxTime) {\n clearInterval(timer);\n return maxTime;\n }\n return prevTime + 1;\n });\n }, 1000);\n\n // Clean up timer on unmount\n return () => clearInterval(timer);\n }, []);\n\n // Determine the appropriate message based on session mode\n const getSessionSpecificMessage = () => {\n const currentSessionMode = sessionMode ?? N1SessionMode.NTS;\n const accountType =\n currentSessionMode === N1SessionMode.Nord ? 'Nord' : 'NTS';\n\n return {\n ...message,\n title: message.title || `Processing ${accountType} Deposit`,\n subtitle:\n message.subtitle ||\n `Please wait while we process your ${accountType} deposit`,\n };\n };\n\n const sessionMessage = getSessionSpecificMessage();\n\n return (\n <div className=\"overflow-hidden relative\">\n <WaitingMessage message={sessionMessage} />\n <div className=\"text-center mt-4 text-sm text-n1-gray-500\">\n Time elapsed: {elapsedTime}s / {maxTime}s\n </div>\n </div>\n );\n}\n"]}
@@ -111,11 +111,12 @@ export function DepositSuccessScreen(_a) {
111
111
  var toggleDetails = function () {
112
112
  setShowDetails(function (prev) { return !prev; });
113
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
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 n1-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
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
116
+ : 'text-n1-gray-500 dark:text-n1-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
117
117
  ? 'max-h-[500px] opacity-100 -mt-4'
118
- : '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: {
118
+ : '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-n1-gray-600 dark:text-neutral-400 text-center mb-2 n1-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-n1-gray-100 dark:bg-neutral-950 py-4 text-center\n transition-all duration-300 ".concat(ANIMATION_EASE, "\n cursor-pointer border-n1-gray-200 dark:border-n1-gray-800 hover:border-n1-gray-400 dark:hover:border-white/60\n ").concat(!isContinueEnabled ? 'opacity-50 cursor-not-allowed' : '', "\n "), style: {
119
119
  transform: isHovered && isContinueEnabled ? 'scale(0.99)' : 'scale(1)',
120
- }, 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" }) })] })] }) }) }));
120
+ }, disabled: !isContinueEnabled, children: _jsx("span", { className: "\n text-base font-medium tracking-wide transition-colors duration-300 ".concat(ANIMATION_EASE, "\n text-n1-gray-700 dark:text-n1-gray-300 group-hover:text-n1-gray-900 dark:group-hover:text-white\n "), children: "Continue" }) })] })] }) }) }));
121
121
  }
122
+ //# sourceMappingURL=06-DepositSuccessScreen.js.map