@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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PriceInput.js","sourceRoot":"","sources":["../../../../../src/Modal/Sidebar/NordTradingView/TradeForm/PriceInput.tsx"],"names":[],"mappings":";AAQA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAIjB;QAHhB,KAAK,WAAA,EACL,QAAQ,cAAA,EACR,WAAW,iBAAA;IAEX,sBAAsB;IACtB,IAAM,iBAAiB,GAAG,UAAC,CAAsC;QAC/D,IAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QAE7B,uCAAuC;QACvC,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YACpD,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;IAEF,4BAA4B;IAC5B,IAAM,cAAc,GAAG;QACrB,IAAI,WAAW,EAAE,CAAC;YAChB,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnC,CAAC;IACH,CAAC,CAAC;IAEF,6BAA6B;IAC7B,IAAM,WAAW,GAAG,UAAC,UAAkB;QACrC,IAAI,CAAC,KAAK;YAAE,OAAO;QAEnB,IAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,KAAK,CAAC,YAAY,CAAC;YAAE,OAAO;QAEhC,IAAM,QAAQ,GAAG,YAAY,GAAG,CAAC,CAAC,GAAG,UAAU,GAAG,GAAG,CAAC,CAAC;QACvD,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChC,CAAC,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,eAAe,aAC5B,gBAAO,SAAS,EAAC,uEAAuE,sBAEhF,EAER,eAAK,SAAS,EAAC,UAAU,aACvB,gBACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAC,8UAA8U,EACxV,WAAW,EAAC,aAAa,GACzB,EAED,WAAW,IAAI,CACd,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,cAAc,EACvB,SAAS,EAAC,+VAA+V,uBAGlW,CACV,IACG,EAGN,eAAK,SAAS,EAAC,6BAA6B,aAC1C,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,cAAM,OAAA,WAAW,CAAC,CAAC,CAAC,CAAC,EAAf,CAAe,EAC9B,SAAS,EAAC,qLAAqL,oBAGxL,EACT,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,cAAM,OAAA,WAAW,CAAC,CAAC,GAAG,CAAC,EAAjB,CAAiB,EAChC,SAAS,EAAC,qLAAqL,sBAGxL,EACT,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,cAAM,OAAA,WAAW,CAAC,GAAG,CAAC,EAAhB,CAAgB,EAC/B,SAAS,EAAC,qLAAqL,sBAGxL,EACT,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,cAAM,OAAA,WAAW,CAAC,CAAC,CAAC,EAAd,CAAc,EAC7B,SAAS,EAAC,qLAAqL,oBAGxL,IACL,IACF,CACP,CAAC;AACJ,CAAC","sourcesContent":["import React from 'react';\n\ninterface PriceInputProps {\n price: string;\n onChange: (price: string) => void;\n marketPrice?: number;\n}\n\nexport default function PriceInput({\n price,\n onChange,\n marketPrice,\n}: PriceInputProps) {\n // Handle price change\n const handlePriceChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value;\n\n // Allow only numbers and decimal point\n if (/^[0-9]*\\.?[0-9]*$/.test(value) || value === '') {\n onChange(value);\n }\n };\n\n // Set price to market price\n const setMarketPrice = () => {\n if (marketPrice) {\n onChange(marketPrice.toString());\n }\n };\n\n // Adjust price by percentage\n const adjustPrice = (percentage: number) => {\n if (!price) return;\n\n const currentPrice = parseFloat(price);\n if (isNaN(currentPrice)) return;\n\n const newPrice = currentPrice * (1 + percentage / 100);\n onChange(newPrice.toString());\n };\n\n return (\n <div className=\"relative z-20\">\n <label className=\"block text-xs font-medium text-n1-gray-700 dark:text-n1-gray-300 mb-1\">\n Price\n </label>\n\n <div className=\"relative\">\n <input\n type=\"text\"\n value={price}\n onChange={handlePriceChange}\n className=\"w-full px-3 py-2 border border-n1-gray-200 dark:border-n1-gray-800 rounded-sm text-sm text-n1-gray-900 dark:text-n1-gray-100 focus:outline-none focus:ring-1 focus:ring-n1-gray-400 dark:focus:ring-n1-gray-600 focus:border-n1-gray-400 dark:focus:border-n1-gray-600 bg-white dark:bg-n1-dark-950 font-mono transition-colors duration-200\"\n placeholder=\"Enter price\"\n />\n\n {marketPrice && (\n <button\n type=\"button\"\n onClick={setMarketPrice}\n className=\"absolute right-2 top-1/2 transform -translate-y-1/2 text-[10px] border border-n1-gray-200 dark:border-n1-gray-800 text-n1-gray-700 dark:text-n1-gray-300 px-1.5 py-0.5 rounded-sm hover:bg-emerald-600 hover:border-emerald-600 hover:text-white dark:hover:bg-emerald-600 dark:hover:border-emerald-600 dark:hover:text-white transition-colors duration-200\"\n >\n Market\n </button>\n )}\n </div>\n\n {/* Price adjustment buttons */}\n <div className=\"grid grid-cols-4 gap-1 mt-2\">\n <button\n type=\"button\"\n onClick={() => adjustPrice(-1)}\n className=\"text-xs px-1 py-0.5 bg-n1-gray-100 dark:bg-n1-gray-800 hover:bg-n1-gray-200 dark:hover:bg-n1-gray-700 rounded text-n1-gray-700 dark:text-n1-gray-300 transition-colors duration-200\"\n >\n -1%\n </button>\n <button\n type=\"button\"\n onClick={() => adjustPrice(-0.1)}\n className=\"text-xs px-1 py-0.5 bg-n1-gray-100 dark:bg-n1-gray-800 hover:bg-n1-gray-200 dark:hover:bg-n1-gray-700 rounded text-n1-gray-700 dark:text-n1-gray-300 transition-colors duration-200\"\n >\n -0.1%\n </button>\n <button\n type=\"button\"\n onClick={() => adjustPrice(0.1)}\n className=\"text-xs px-1 py-0.5 bg-n1-gray-100 dark:bg-n1-gray-800 hover:bg-n1-gray-200 dark:hover:bg-n1-gray-700 rounded text-n1-gray-700 dark:text-n1-gray-300 transition-colors duration-200\"\n >\n +0.1%\n </button>\n <button\n type=\"button\"\n onClick={() => adjustPrice(1)}\n className=\"text-xs px-1 py-0.5 bg-n1-gray-100 dark:bg-n1-gray-800 hover:bg-n1-gray-200 dark:hover:bg-n1-gray-700 rounded text-n1-gray-700 dark:text-n1-gray-300 transition-colors duration-200\"\n >\n +1%\n </button>\n </div>\n </div>\n );\n}\n"]}
@@ -18,7 +18,7 @@ export default function SubmitButton(_a) {
18
18
  var getButtonClass = function () {
19
19
  var baseClasses = 'w-full py-3 rounded-sm font-medium transition-all duration-200 flex items-center justify-center relative overflow-hidden';
20
20
  if (disabled || loading) {
21
- return "".concat(baseClasses, " bg-gray-200 dark:bg-gray-800 text-gray-400 dark:text-gray-500 cursor-not-allowed");
21
+ return "".concat(baseClasses, " bg-n1-gray-200 dark:bg-n1-gray-800 text-n1-gray-400 dark:text-n1-gray-500 cursor-not-allowed");
22
22
  }
23
23
  if (side === 'BUY') {
24
24
  return "".concat(baseClasses, " bg-emerald-600 hover:bg-emerald-700 text-white shadow-sm transform hover:scale-[0.99] active:scale-[0.98]");
@@ -30,10 +30,11 @@ export default function SubmitButton(_a) {
30
30
  return (_jsxs("button", { type: "submit", disabled: disabled || loading, className: getButtonClass(), onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () {
31
31
  setIsHovered(false);
32
32
  setIsPressed(false);
33
- }, onMouseDown: function () { return setIsPressed(true); }, onMouseUp: function () { return setIsPressed(false); }, children: [_jsx("span", { className: "relative z-10 flex items-center justify-center transition-transform duration-200 ".concat(isPressed ? 'scale-95' : ''), children: loading ? (_jsxs(_Fragment, { children: [_jsx(Loader2, { size: 18, className: "animate-spin mr-2 inline-block" }), "Processing..."] })) : (_jsxs(_Fragment, { children: [side === 'BUY' ? (_jsx("svg", { className: "w-4 h-4 mr-2", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M12 5L12 19M12 5L6 11M12 5L18 11", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", className: "transition-transform duration-300 ".concat(isHovered ? 'translate-y-[-2px]' : '') }) })) : (_jsx("svg", { className: "w-4 h-4 mr-2", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M12 19L12 5M12 19L6 13M12 19L18 13", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", className: "transition-transform duration-300 ".concat(isHovered ? 'translate-y-[2px]' : '') }) })), getButtonText()] })) }), !disabled && !loading && (_jsxs(_Fragment, { children: [_jsx("span", { className: "absolute inset-0 bg-gradient-to-r from-transparent via-white to-transparent opacity-25 pointer-events-none translate-x-[-200%] ".concat(isHovered ? 'animate-shimmer' : ''), style: {
33
+ }, onMouseDown: function () { return setIsPressed(true); }, onMouseUp: function () { return setIsPressed(false); }, children: [_jsx("span", { className: "relative z-10 flex items-center justify-center transition-transform duration-200 ".concat(isPressed ? 'scale-95' : ''), children: loading ? (_jsxs(_Fragment, { children: [_jsx(Loader2, { size: 18, className: "n1-animate-spin mr-2 inline-block" }), "Processing..."] })) : (_jsxs(_Fragment, { children: [side === 'BUY' ? (_jsx("svg", { className: "w-4 h-4 mr-2", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M12 5L12 19M12 5L6 11M12 5L18 11", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", className: "transition-transform duration-300 ".concat(isHovered ? 'translate-y-[-2px]' : '') }) })) : (_jsx("svg", { className: "w-4 h-4 mr-2", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M12 19L12 5M12 19L6 13M12 19L18 13", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", className: "transition-transform duration-300 ".concat(isHovered ? 'translate-y-[2px]' : '') }) })), getButtonText()] })) }), !disabled && !loading && (_jsxs(_Fragment, { children: [_jsx("span", { className: "absolute inset-0 bg-gradient-to-r from-transparent via-white to-transparent opacity-25 pointer-events-none translate-x-[-200%] ".concat(isHovered ? 'animate-shimmer' : ''), style: {
34
34
  backgroundSize: '200% 100%',
35
35
  animationDuration: '1.5s',
36
36
  } }), _jsx("span", { className: "absolute inset-0 rounded-sm transition-opacity duration-300 pointer-events-none ".concat(isPressed
37
37
  ? 'bg-black opacity-10 dark:bg-white dark:opacity-10'
38
38
  : 'opacity-0') })] }))] }));
39
39
  }
40
+ //# sourceMappingURL=SubmitButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SubmitButton.js","sourceRoot":"","sources":["../../../../../src/Modal/Sidebar/NordTradingView/TradeForm/SubmitButton.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Loader2 } from 'lucide-react';\nimport { useState } from 'react';\nimport { OrderSide, OrderType } from './TradeForm';\n\ninterface SubmitButtonProps {\n loading: boolean;\n side: OrderSide;\n orderType: OrderType;\n disabled: boolean;\n}\n\nexport default function SubmitButton({\n loading,\n side,\n orderType,\n disabled,\n}: SubmitButtonProps) {\n const [isHovered, setIsHovered] = useState(false);\n const [isPressed, setIsPressed] = useState(false);\n\n // Generate button text based on side and order type\n const getButtonText = () => {\n if (side === 'BUY') {\n return `Buy ${orderType === 'MARKET' ? 'Market' : 'Limit'}`;\n } else {\n return `Sell ${orderType === 'MARKET' ? 'Market' : 'Limit'}`;\n }\n };\n\n // Generate button color based on side\n const getButtonClass = () => {\n const baseClasses =\n 'w-full py-3 rounded-sm font-medium transition-all duration-200 flex items-center justify-center relative overflow-hidden';\n\n if (disabled || loading) {\n return `${baseClasses} bg-n1-gray-200 dark:bg-n1-gray-800 text-n1-gray-400 dark:text-n1-gray-500 cursor-not-allowed`;\n }\n\n if (side === 'BUY') {\n return `${baseClasses} bg-emerald-600 hover:bg-emerald-700 text-white shadow-sm transform hover:scale-[0.99] active:scale-[0.98]`;\n } else {\n return `${baseClasses} bg-red-700 hover:bg-red-800 text-white shadow-sm transform hover:scale-[0.99] active:scale-[0.98]`;\n }\n };\n\n return (\n <button\n type=\"submit\"\n disabled={disabled || loading}\n className={getButtonClass()}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => {\n setIsHovered(false);\n setIsPressed(false);\n }}\n onMouseDown={() => setIsPressed(true)}\n onMouseUp={() => setIsPressed(false)}\n >\n <span\n className={`relative z-10 flex items-center justify-center transition-transform duration-200 ${isPressed ? 'scale-95' : ''}`}\n >\n {loading ? (\n <>\n <Loader2 size={18} className=\"n1-animate-spin mr-2 inline-block\" />\n Processing...\n </>\n ) : (\n <>\n {side === 'BUY' ? (\n <svg\n className=\"w-4 h-4 mr-2\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 5L12 19M12 5L6 11M12 5L18 11\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`transition-transform duration-300 ${isHovered ? 'translate-y-[-2px]' : ''}`}\n />\n </svg>\n ) : (\n <svg\n className=\"w-4 h-4 mr-2\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 19L12 5M12 19L6 13M12 19L18 13\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`transition-transform duration-300 ${isHovered ? 'translate-y-[2px]' : ''}`}\n />\n </svg>\n )}\n {getButtonText()}\n </>\n )}\n </span>\n\n {!disabled && !loading && (\n <>\n <span\n className={`absolute inset-0 bg-gradient-to-r from-transparent via-white to-transparent opacity-25 pointer-events-none translate-x-[-200%] ${isHovered ? 'animate-shimmer' : ''}`}\n style={{\n backgroundSize: '200% 100%',\n animationDuration: '1.5s',\n }}\n />\n <span\n className={`absolute inset-0 rounded-sm transition-opacity duration-300 pointer-events-none ${\n isPressed\n ? 'bg-black opacity-10 dark:bg-white dark:opacity-10'\n : 'opacity-0'\n }`}\n />\n </>\n )}\n </button>\n );\n}\n"]}
@@ -5,5 +5,6 @@ export default function TotalCalculator(_a) {
5
5
  var fee = total && orderType === 'LIMIT'
6
6
  ? (parseFloat(total) * 0.001).toFixed(6)
7
7
  : '0.00';
8
- return (_jsxs("div", { className: "relative z-20", children: [_jsx("label", { className: "block text-xs font-medium text-gray-700 dark:text-gray-300 mb-1", children: "Total" }), _jsx("div", { className: "px-3 py-2 border border-gray-200 dark:border-gray-800 rounded-sm text-sm text-gray-900 dark:text-gray-100 bg-gray-50 dark:bg-dark-950 font-mono", children: orderType === 'MARKET' ? (_jsx("span", { className: "text-gray-500 dark:text-gray-400", children: "Market Order" })) : total ? (total) : (_jsx("span", { className: "text-gray-400 dark:text-gray-500", children: "0.00" })) }), _jsxs("div", { className: "mt-1 text-[10px] text-gray-500 dark:text-gray-400 flex justify-between", children: [_jsx("span", { children: "Estimated fee:" }), _jsx("span", { className: "font-mono", children: fee })] })] }));
8
+ return (_jsxs("div", { className: "relative z-20", children: [_jsx("label", { className: "block text-xs font-medium text-n1-gray-700 dark:text-n1-gray-300 mb-1", children: "Total" }), _jsx("div", { className: "px-3 py-2 border border-n1-gray-200 dark:border-n1-gray-800 rounded-sm text-sm text-n1-gray-900 dark:text-n1-gray-100 bg-n1-gray-50 dark:bg-n1-dark-950 font-mono", children: orderType === 'MARKET' ? (_jsx("span", { className: "text-n1-gray-500 dark:text-n1-gray-400", children: "Market Order" })) : total ? (total) : (_jsx("span", { className: "text-n1-gray-400 dark:text-n1-gray-500", children: "0.00" })) }), _jsxs("div", { className: "mt-1 text-[10px] text-n1-gray-500 dark:text-n1-gray-400 flex justify-between", children: [_jsx("span", { children: "Estimated fee:" }), _jsx("span", { className: "font-mono", children: fee })] })] }));
9
9
  }
10
+ //# sourceMappingURL=TotalCalculator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TotalCalculator.js","sourceRoot":"","sources":["../../../../../src/Modal/Sidebar/NordTradingView/TradeForm/TotalCalculator.tsx"],"names":[],"mappings":";AAUA,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EAGjB;QAFrB,KAAK,WAAA,EACL,SAAS,eAAA;IAET,oCAAoC;IACpC,IAAM,GAAG,GACP,KAAK,IAAI,SAAS,KAAK,OAAO;QAC5B,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,MAAM,CAAC;IAEb,OAAO,CACL,eAAK,SAAS,EAAC,eAAe,aAC5B,gBAAO,SAAS,EAAC,uEAAuE,sBAEhF,EACR,cAAK,SAAS,EAAC,mKAAmK,YAC/K,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,CACxB,eAAM,SAAS,EAAC,wCAAwC,6BAAoB,CAC7E,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CACV,KAAK,CACN,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAC,wCAAwC,qBAAY,CACrE,GACG,EAGN,eAAK,SAAS,EAAC,8EAA8E,aAC3F,4CAA2B,EAC3B,eAAM,SAAS,EAAC,WAAW,YAAE,GAAG,GAAQ,IACpC,IACF,CACP,CAAC;AACJ,CAAC","sourcesContent":["import React from 'react';\n\n// We still need OrderType for backward compatibility with the TotalCalculator\ntype OrderType = 'LIMIT' | 'MARKET';\n\ninterface TotalCalculatorProps {\n total: string;\n orderType: OrderType;\n}\n\nexport default function TotalCalculator({\n total,\n orderType,\n}: TotalCalculatorProps) {\n // Calculate fee (example: 0.1% fee)\n const fee =\n total && orderType === 'LIMIT'\n ? (parseFloat(total) * 0.001).toFixed(6)\n : '0.00';\n\n return (\n <div className=\"relative z-20\">\n <label className=\"block text-xs font-medium text-n1-gray-700 dark:text-n1-gray-300 mb-1\">\n Total\n </label>\n <div className=\"px-3 py-2 border border-n1-gray-200 dark:border-n1-gray-800 rounded-sm text-sm text-n1-gray-900 dark:text-n1-gray-100 bg-n1-gray-50 dark:bg-n1-dark-950 font-mono\">\n {orderType === 'MARKET' ? (\n <span className=\"text-n1-gray-500 dark:text-n1-gray-400\">Market Order</span>\n ) : total ? (\n total\n ) : (\n <span className=\"text-n1-gray-400 dark:text-n1-gray-500\">0.00</span>\n )}\n </div>\n\n {/* Fee estimate */}\n <div className=\"mt-1 text-[10px] text-n1-gray-500 dark:text-n1-gray-400 flex justify-between\">\n <span>Estimated fee:</span>\n <span className=\"font-mono\">{fee}</span>\n </div>\n </div>\n );\n}\n"]}
@@ -237,23 +237,24 @@ export default function TradeForm(_a) {
237
237
  }
238
238
  });
239
239
  }); };
240
- return (_jsxs("div", { className: "p-4 bg-white dark:bg-dark-950 transition-colors duration-300", children: [_jsxs("h2", { className: "text-base font-semibold text-gray-900 dark:text-gray-100 mb-3 transform transition-all duration-500 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: ["Place Order", ' ', marketSymbol ? (_jsx("span", { className: side === 'BUY'
240
+ return (_jsxs("div", { className: "p-4 bg-white dark:bg-n1-dark-950 transition-colors duration-300", children: [_jsxs("h2", { className: "text-base font-semibold text-n1-gray-900 dark:text-n1-gray-100 mb-3 transform transition-all duration-500 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: ["Place Order", ' ', marketSymbol ? (_jsx("span", { className: side === 'BUY'
241
241
  ? 'text-emerald-600 dark:text-emerald-500'
242
- : 'text-red-700 dark:text-red-600', children: marketSymbol })) : ('')] }), !marketSymbol ? (_jsx("div", { className: "p-3 border border-gray-200 dark:border-gray-800 rounded-sm text-gray-500 dark:text-gray-400 text-xs bg-gray-50 dark:bg-dark-950 transform transition-all duration-500 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: "Select a market to place orders" })) : (_jsx("form", { onSubmit: handleSubmit, children: _jsxs("div", { className: "space-y-3", children: [_jsx("div", { className: "transform transition-all duration-500 delay-100 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsx(BuySellTabs, { side: side, onChange: setSide }) }), _jsx("div", { className: "transform transition-all duration-500 delay-200 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsx(FillModeSelector, { fillMode: fillMode, onFillModeChange: setFillMode }) }), !isMarketOrder(fillMode) && (_jsx("div", { className: "transform transition-all duration-500 delay-300 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsx(PriceInput, { price: price, onChange: setPrice, marketPrice: marketInfo === null || marketInfo === void 0 ? void 0 : marketInfo.lastPrice }) })), _jsx("div", { className: "transform transition-all duration-500 delay-400 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsx(AmountInput, { amount: amount, onChange: setAmount, marketInfo: marketInfo }) }), _jsx("div", { className: "transform transition-all duration-500 delay-500 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsx(TotalCalculator, { total: total, orderType: isMarketOrder(fillMode) ? 'MARKET' : 'LIMIT' }) }), accountId && (_jsx("div", { className: "transform transition-all duration-500 delay-550 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsxs("div", { className: "flex items-center text-xs text-gray-500 dark:text-gray-400", children: [_jsx(Info, { size: 12, className: "mr-1" }), _jsxs("span", { children: ["Account ID: ", accountId] })] }) })), _jsx("div", { className: "transform transition-all duration-500 delay-600 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsxs("button", { type: "button", onClick: function () { return setIsReduceOnly(!isReduceOnly); }, className: "w-full flex items-center justify-between px-3 py-2 rounded-sm text-sm transition-all duration-300 ".concat(isReduceOnly
242
+ : 'text-red-700 dark:text-red-600', children: marketSymbol })) : ('')] }), !marketSymbol ? (_jsx("div", { className: "p-3 border border-n1-gray-200 dark:border-n1-gray-800 rounded-sm text-n1-gray-500 dark:text-n1-gray-400 text-xs bg-n1-gray-50 dark:bg-n1-dark-950 transform transition-all duration-500 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: "Select a market to place orders" })) : (_jsx("form", { onSubmit: handleSubmit, children: _jsxs("div", { className: "space-y-3", children: [_jsx("div", { className: "transform transition-all duration-500 delay-100 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsx(BuySellTabs, { side: side, onChange: setSide }) }), _jsx("div", { className: "transform transition-all duration-500 delay-200 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsx(FillModeSelector, { fillMode: fillMode, onFillModeChange: setFillMode }) }), !isMarketOrder(fillMode) && (_jsx("div", { className: "transform transition-all duration-500 delay-300 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsx(PriceInput, { price: price, onChange: setPrice, marketPrice: marketInfo === null || marketInfo === void 0 ? void 0 : marketInfo.lastPrice }) })), _jsx("div", { className: "transform transition-all duration-500 delay-400 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsx(AmountInput, { amount: amount, onChange: setAmount, marketInfo: marketInfo }) }), _jsx("div", { className: "transform transition-all duration-500 delay-500 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsx(TotalCalculator, { total: total, orderType: isMarketOrder(fillMode) ? 'MARKET' : 'LIMIT' }) }), accountId && (_jsx("div", { className: "transform transition-all duration-500 delay-550 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsxs("div", { className: "flex items-center text-xs text-n1-gray-500 dark:text-n1-gray-400", children: [_jsx(Info, { size: 12, className: "mr-1" }), _jsxs("span", { children: ["Account ID: ", accountId] })] }) })), _jsx("div", { className: "transform transition-all duration-500 delay-600 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsxs("button", { type: "button", onClick: function () { return setIsReduceOnly(!isReduceOnly); }, className: "w-full flex items-center justify-between px-3 py-2 rounded-sm text-sm transition-all duration-300 ".concat(isReduceOnly
243
243
  ? side === 'BUY'
244
244
  ? 'bg-emerald-50 dark:bg-emerald-900/10 text-emerald-700 dark:text-emerald-400 border border-emerald-200 dark:border-emerald-800/30'
245
245
  : 'bg-red-50 dark:bg-red-900/10 text-red-700 dark:text-red-400 border border-red-200 dark:border-red-800/30'
246
- : 'bg-gray-50 dark:bg-gray-900 text-gray-700 dark:text-gray-300 border border-gray-200 dark:border-gray-800 hover:border-gray-300 dark:hover:border-gray-600'), children: [_jsxs("div", { className: "flex items-center", children: [_jsx("div", { className: "mr-2 transition-colors duration-300 ".concat(isReduceOnly
246
+ : 'bg-n1-gray-50 dark:bg-n1-gray-900 text-n1-gray-700 dark:text-n1-gray-300 border border-n1-gray-200 dark:border-n1-gray-800 hover:border-n1-gray-300 dark:hover:border-n1-gray-600'), children: [_jsxs("div", { className: "flex items-center", children: [_jsx("div", { className: "mr-2 transition-colors duration-300 ".concat(isReduceOnly
247
247
  ? side === 'BUY'
248
248
  ? 'text-emerald-600 dark:text-emerald-500'
249
249
  : 'text-red-600 dark:text-red-500'
250
- : 'text-gray-500 dark:text-gray-400'), children: isReduceOnly ? _jsx(Lock, { size: 14 }) : _jsx(Unlock, { size: 14 }) }), _jsx("span", { className: "text-xs", children: "Reduce Only" })] }), _jsx("div", { className: "flex items-center justify-center w-4 h-4 rounded-full transition-all duration-300 ".concat(isReduceOnly
250
+ : 'text-n1-gray-500 dark:text-n1-gray-400'), children: isReduceOnly ? _jsx(Lock, { size: 14 }) : _jsx(Unlock, { size: 14 }) }), _jsx("span", { className: "text-xs", children: "Reduce Only" })] }), _jsx("div", { className: "flex items-center justify-center w-4 h-4 rounded-full transition-all duration-300 ".concat(isReduceOnly
251
251
  ? side === 'BUY'
252
252
  ? 'bg-emerald-600 dark:bg-emerald-500 text-white'
253
253
  : 'bg-red-600 dark:bg-red-500 text-white'
254
- : 'bg-gray-200 dark:bg-gray-700'), children: isReduceOnly && _jsx(Check, { size: 10 }) })] }) }), _jsxs("div", { className: "p-2 border rounded-sm text-xs transition-all duration-300 transform ".concat(error
254
+ : 'bg-n1-gray-200 dark:bg-n1-gray-700'), children: isReduceOnly && _jsx(Check, { size: 10 }) })] }) }), _jsxs("div", { className: "p-2 border rounded-sm text-xs transition-all duration-300 transform ".concat(error
255
255
  ? 'opacity-100 max-h-20 border-red-200 dark:border-red-900/30 bg-red-50 dark:bg-red-900/10 text-red-700 dark:text-red-400 flex items-center translate-y-0'
256
256
  : 'opacity-0 max-h-0 overflow-hidden border-transparent translate-y-2'), children: [error && (_jsx(AlertCircle, { size: 14, className: "mr-2 flex-shrink-0" })), error] }), _jsx("div", { className: "p-2 border rounded-sm text-xs transition-all duration-300 transform ".concat(success
257
257
  ? 'opacity-100 max-h-20 border-emerald-200 dark:border-emerald-900/30 bg-emerald-50 dark:bg-emerald-900/10 text-emerald-700 dark:text-emerald-400 translate-y-0'
258
258
  : 'opacity-0 max-h-0 overflow-hidden border-transparent translate-y-2'), children: success }), _jsx("div", { className: "transform transition-all duration-500 delay-700 ".concat(formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'), children: _jsx(SubmitButton, { loading: loading, side: side, orderType: isMarketOrder(fillMode) ? 'MARKET' : 'LIMIT', disabled: !marketSymbol || loading }) })] }) }))] }));
259
259
  }
260
+ //# sourceMappingURL=TradeForm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TradeForm.js","sourceRoot":"","sources":["../../../../../src/Modal/Sidebar/NordTradingView/TradeForm/TradeForm.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useEffect } from 'react';\nimport { useN1WalletContext } from '../../../../Provider/hooks';\nimport BuySellTabs from './BuySellTabs';\nimport FillModeSelector from './FillModeSelector';\nimport PriceInput from './PriceInput';\nimport AmountInput from './AmountInput';\nimport TotalCalculator from './TotalCalculator';\nimport SubmitButton from './SubmitButton';\nimport { AlertCircle, Check, Lock, Unlock, Info } from 'lucide-react';\nimport { logger } from '../../../../utils/logger';\n\ninterface TradeFormProps {\n marketSymbol: string | null;\n}\n\n// Define order types\nexport type OrderSide = 'BUY' | 'SELL';\nexport type OrderType = 'LIMIT' | 'MARKET'; // Keep for backward compatibility\nexport type FillMode = 'GTC' | 'POST_ONLY' | 'IOC' | 'FOK';\n\n// Map our FillMode to the Nord FillMode enum\nconst mapFillMode = (mode: FillMode): number => {\n switch (mode) {\n case 'GTC':\n return 0; // LIMIT\n case 'POST_ONLY':\n return 1; // POST_ONLY\n case 'IOC':\n return 2; // IMMEDIATE_OR_CANCEL\n case 'FOK':\n return 3; // FILL_OR_KILL\n default:\n return 0;\n }\n};\n\n// Map our OrderSide to the Nord Side enum\nconst mapSide = (side: OrderSide): number => {\n return side === 'BUY' ? 1 : 0; // BID = 1, ASK = 0\n};\n\n// Helper to determine if a fill mode is a market order\nconst isMarketOrder = (mode: FillMode): boolean => {\n return mode === 'IOC'; // IOC is used for market orders\n};\n\nexport default function TradeForm({ marketSymbol }: TradeFormProps) {\n const { nord, nordUser } = useN1WalletContext();\n\n // Form state\n const [side, setSide] = useState<OrderSide>('BUY');\n const [fillMode, setFillMode] = useState<FillMode>('GTC');\n const [price, setPrice] = useState<string>('');\n const [amount, setAmount] = useState<string>('');\n const [total, setTotal] = useState<string>('');\n const [isReduceOnly, setIsReduceOnly] = useState<boolean>(false);\n const [accountId, setAccountId] = useState<number | undefined>(undefined);\n\n // UI state\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<string | null>(null);\n const [success, setSuccess] = useState<string | null>(null);\n const [formVisible, setFormVisible] = useState<boolean>(false);\n\n // Market data\n const [marketInfo, setMarketInfo] = useState<any>(null);\n\n // Show form with animation after initial render\n useEffect(() => {\n const timer = setTimeout(() => {\n setFormVisible(true);\n }, 100);\n return () => clearTimeout(timer);\n }, []);\n\n // Fetch market info and user account ID when market changes\n useEffect(() => {\n if (!marketSymbol || !nord) return;\n\n const fetchMarketInfo = async () => {\n try {\n const stats = await nord.getMarketStats();\n const selectedMarket = stats.markets.find(\n (m: any) => m.symbol === marketSymbol\n );\n setMarketInfo(selectedMarket || null);\n\n // Set default price to current market price\n if ((selectedMarket as any)?.lastPrice) {\n setPrice((selectedMarket as any).lastPrice.toString());\n }\n } catch (err) {\n console.error('Error fetching market info:', err);\n }\n };\n\n const fetchUserAccount = async () => {\n if (nordUser) {\n try {\n // Update account ID\n await nordUser.updateAccountId();\n // Set the first account ID if available\n if (nordUser.accountIds && nordUser.accountIds.length > 0) {\n setAccountId(nordUser.accountIds[0]);\n }\n } catch (err) {\n console.error('Error fetching user account:', err);\n }\n }\n };\n\n fetchMarketInfo();\n fetchUserAccount();\n }, [marketSymbol, nord, nordUser]);\n\n // Calculate total when price or amount changes\n useEffect(() => {\n if (!isMarketOrder(fillMode) && price && amount) {\n const calculatedTotal = parseFloat(price) * parseFloat(amount);\n setTotal(calculatedTotal.toFixed(8));\n } else if (isMarketOrder(fillMode)) {\n setTotal('Market');\n } else {\n setTotal('');\n }\n }, [price, amount, fillMode]);\n\n // Handle order submission\n const handleSubmit = async (e: React.FormEvent) => {\n e.preventDefault();\n\n if (!marketSymbol || !nordUser) {\n setError('User or market not available');\n return;\n }\n\n if (!isMarketOrder(fillMode) && (!price || parseFloat(price) <= 0)) {\n setError('Please enter a valid price');\n return;\n }\n\n if (!amount || parseFloat(amount) <= 0) {\n setError('Please enter a valid amount');\n return;\n }\n\n setLoading(true);\n setError(null);\n setSuccess(null);\n\n try {\n // Find market ID from symbol\n const market = nord?.markets?.find((m) => m.symbol === marketSymbol);\n const marketId = market\n ? (market as any).id || (market as any).marketId || 0\n : 0;\n\n // Prepare order parameters\n const orderParams = {\n marketId,\n side: mapSide(side),\n fillMode: mapFillMode(fillMode),\n isReduceOnly,\n // For limit orders or SELL orders, we need size\n size: !isMarketOrder(fillMode) || side === 'SELL' ? amount : undefined,\n // For limit orders, we need price\n price: !isMarketOrder(fillMode) ? price : undefined,\n // For market BUY orders, we need quoteSize (total amount to spend)\n quoteSize:\n isMarketOrder(fillMode) && side === 'BUY' ? total : undefined,\n // Use the first account ID if available\n accountId: accountId,\n };\n\n logger.debug('Placing order with params:', orderParams);\n\n // Place order\n const orderId = await nordUser.placeOrder(orderParams);\n\n if (orderId) {\n setSuccess(`Order placed successfully! Order ID: ${orderId}`);\n // Reset form\n setAmount('');\n if (isMarketOrder(fillMode)) {\n setPrice('');\n }\n } else {\n throw new Error('Failed to place order');\n }\n } catch (err: any) {\n logger.error('Error placing order:', err);\n setError(err.message || 'Failed to place order');\n } finally {\n setLoading(false);\n }\n };\n\n return (\n <div className=\"p-4 bg-white dark:bg-n1-dark-950 transition-colors duration-300\">\n <h2\n className={`text-base font-semibold text-n1-gray-900 dark:text-n1-gray-100 mb-3 transform transition-all duration-500 ${formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'}`}\n >\n Place Order{' '}\n {marketSymbol ? (\n <span\n className={\n side === 'BUY'\n ? 'text-emerald-600 dark:text-emerald-500'\n : 'text-red-700 dark:text-red-600'\n }\n >\n {marketSymbol}\n </span>\n ) : (\n ''\n )}\n </h2>\n\n {!marketSymbol ? (\n <div\n className={`p-3 border border-n1-gray-200 dark:border-n1-gray-800 rounded-sm text-n1-gray-500 dark:text-n1-gray-400 text-xs bg-n1-gray-50 dark:bg-n1-dark-950 transform transition-all duration-500 ${formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'}`}\n >\n Select a market to place orders\n </div>\n ) : (\n <form onSubmit={handleSubmit}>\n <div className=\"space-y-3\">\n {/* Buy/Sell Tabs */}\n <div\n className={`transform transition-all duration-500 delay-100 ${formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'}`}\n >\n <BuySellTabs side={side} onChange={setSide} />\n </div>\n\n {/* Order Type (Fill Mode) */}\n <div\n className={`transform transition-all duration-500 delay-200 ${formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'}`}\n >\n <FillModeSelector\n fillMode={fillMode}\n onFillModeChange={setFillMode}\n />\n </div>\n\n {/* Price Input (hidden for market orders) */}\n {!isMarketOrder(fillMode) && (\n <div\n className={`transform transition-all duration-500 delay-300 ${formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'}`}\n >\n <PriceInput\n price={price}\n onChange={setPrice}\n marketPrice={(marketInfo as any)?.lastPrice}\n />\n </div>\n )}\n\n {/* Amount Input */}\n <div\n className={`transform transition-all duration-500 delay-400 ${formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'}`}\n >\n <AmountInput\n amount={amount}\n onChange={setAmount}\n marketInfo={marketInfo}\n />\n </div>\n\n {/* Total Calculator */}\n <div\n className={`transform transition-all duration-500 delay-500 ${formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'}`}\n >\n <TotalCalculator\n total={total}\n orderType={isMarketOrder(fillMode) ? 'MARKET' : 'LIMIT'}\n />\n </div>\n\n {/* Account ID Info */}\n {accountId && (\n <div\n className={`transform transition-all duration-500 delay-550 ${formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'}`}\n >\n <div className=\"flex items-center text-xs text-n1-gray-500 dark:text-n1-gray-400\">\n <Info size={12} className=\"mr-1\" />\n <span>Account ID: {accountId}</span>\n </div>\n </div>\n )}\n\n {/* Reduce Only Button */}\n <div\n className={`transform transition-all duration-500 delay-600 ${formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'}`}\n >\n <button\n type=\"button\"\n onClick={() => setIsReduceOnly(!isReduceOnly)}\n className={`w-full flex items-center justify-between px-3 py-2 rounded-sm text-sm transition-all duration-300 ${\n isReduceOnly\n ? side === 'BUY'\n ? 'bg-emerald-50 dark:bg-emerald-900/10 text-emerald-700 dark:text-emerald-400 border border-emerald-200 dark:border-emerald-800/30'\n : 'bg-red-50 dark:bg-red-900/10 text-red-700 dark:text-red-400 border border-red-200 dark:border-red-800/30'\n : 'bg-n1-gray-50 dark:bg-n1-gray-900 text-n1-gray-700 dark:text-n1-gray-300 border border-n1-gray-200 dark:border-n1-gray-800 hover:border-n1-gray-300 dark:hover:border-n1-gray-600'\n }`}\n >\n <div className=\"flex items-center\">\n <div\n className={`mr-2 transition-colors duration-300 ${\n isReduceOnly\n ? side === 'BUY'\n ? 'text-emerald-600 dark:text-emerald-500'\n : 'text-red-600 dark:text-red-500'\n : 'text-n1-gray-500 dark:text-n1-gray-400'\n }`}\n >\n {isReduceOnly ? <Lock size={14} /> : <Unlock size={14} />}\n </div>\n <span className=\"text-xs\">Reduce Only</span>\n </div>\n <div\n className={`flex items-center justify-center w-4 h-4 rounded-full transition-all duration-300 ${\n isReduceOnly\n ? side === 'BUY'\n ? 'bg-emerald-600 dark:bg-emerald-500 text-white'\n : 'bg-red-600 dark:bg-red-500 text-white'\n : 'bg-n1-gray-200 dark:bg-n1-gray-700'\n }`}\n >\n {isReduceOnly && <Check size={10} />}\n </div>\n </button>\n </div>\n\n {/* Error Message */}\n <div\n className={`p-2 border rounded-sm text-xs transition-all duration-300 transform ${\n error\n ? 'opacity-100 max-h-20 border-red-200 dark:border-red-900/30 bg-red-50 dark:bg-red-900/10 text-red-700 dark:text-red-400 flex items-center translate-y-0'\n : 'opacity-0 max-h-0 overflow-hidden border-transparent translate-y-2'\n }`}\n >\n {error && (\n <AlertCircle size={14} className=\"mr-2 flex-shrink-0\" />\n )}\n {error}\n </div>\n\n {/* Success Message */}\n <div\n className={`p-2 border rounded-sm text-xs transition-all duration-300 transform ${\n success\n ? 'opacity-100 max-h-20 border-emerald-200 dark:border-emerald-900/30 bg-emerald-50 dark:bg-emerald-900/10 text-emerald-700 dark:text-emerald-400 translate-y-0'\n : 'opacity-0 max-h-0 overflow-hidden border-transparent translate-y-2'\n }`}\n >\n {success}\n </div>\n\n {/* Submit Button */}\n <div\n className={`transform transition-all duration-500 delay-700 ${formVisible ? 'translate-y-0 opacity-100' : 'translate-y-4 opacity-0'}`}\n >\n <SubmitButton\n loading={loading}\n side={side}\n orderType={isMarketOrder(fillMode) ? 'MARKET' : 'LIMIT'}\n disabled={!marketSymbol || loading}\n />\n </div>\n </div>\n </form>\n )}\n </div>\n );\n}\n"]}
@@ -104,5 +104,6 @@ export default function UserBalances() {
104
104
  var intervalId = setInterval(fetchBalances, 10000); // Update every 10 seconds
105
105
  return function () { return clearInterval(intervalId); };
106
106
  }, [nordUser, nord]);
107
- return (_jsx("div", { className: "bg-white dark:bg-gray-950 overflow-hidden", children: _jsxs("div", { className: "p-4", children: [_jsx("h2", { className: "text-lg font-semibold text-gray-900 dark:text-gray-100 mb-4", children: "Balances" }), loading && balances.length === 0 ? (_jsx("div", { className: "flex items-center justify-center h-32", children: _jsx(RefreshCw, { size: 20, className: "text-gray-400 animate-spin" }) })) : error ? (_jsx("div", { className: "p-3 bg-red-50 dark:bg-red-900/20 rounded-lg text-red-600 dark:text-red-400 text-sm", children: error })) : balances.length === 0 ? (_jsx("div", { className: "p-3 bg-gray-50 dark:bg-gray-950 rounded-lg text-gray-500 dark:text-gray-400 text-sm text-center", children: "No balances found" })) : (_jsxs("div", { className: "space-y-3", children: [balances.map(function (balance, index) { return (_jsxs("div", { className: "p-3 bg-gray-50 dark:bg-gray-950 rounded-lg", children: [_jsxs("div", { className: "flex items-center justify-between mb-2", children: [_jsx("div", { className: "flex items-center", children: _jsx("span", { className: "font-medium text-gray-900 dark:text-gray-100", children: balance.symbol }) }), _jsx("div", { className: "font-medium text-gray-900 dark:text-gray-100 font-mono", children: balance.balance.toFixed(6) })] }), _jsxs("div", { className: "text-xs text-gray-500 dark:text-gray-400", children: ["Account ID: ", balance.accountId] })] }, index)); }), loading && balances.length > 0 && (_jsx("div", { className: "flex justify-center mt-2", children: _jsx(RefreshCw, { size: 16, className: "text-gray-400 animate-spin" }) }))] }))] }) }));
107
+ return (_jsx("div", { className: "bg-white dark:bg-n1-gray-950 overflow-hidden", children: _jsxs("div", { className: "p-4", children: [_jsx("h2", { className: "text-lg font-semibold text-n1-gray-900 dark:text-n1-gray-100 mb-4", children: "Balances" }), loading && balances.length === 0 ? (_jsx("div", { className: "flex items-center justify-center h-32", children: _jsx(RefreshCw, { size: 20, className: "text-n1-gray-400 n1-animate-spin" }) })) : error ? (_jsx("div", { className: "p-3 bg-red-50 dark:bg-red-900/20 rounded-lg text-red-600 dark:text-red-400 text-sm", children: error })) : balances.length === 0 ? (_jsx("div", { className: "p-3 bg-n1-gray-50 dark:bg-n1-gray-950 rounded-lg text-n1-gray-500 dark:text-n1-gray-400 text-sm text-center", children: "No balances found" })) : (_jsxs("div", { className: "space-y-3", children: [balances.map(function (balance, index) { return (_jsxs("div", { className: "p-3 bg-n1-gray-50 dark:bg-n1-gray-950 rounded-lg", children: [_jsxs("div", { className: "flex items-center justify-between mb-2", children: [_jsx("div", { className: "flex items-center", children: _jsx("span", { className: "font-medium text-n1-gray-900 dark:text-n1-gray-100", children: balance.symbol }) }), _jsx("div", { className: "font-medium text-n1-gray-900 dark:text-n1-gray-100 font-mono", children: balance.balance.toFixed(6) })] }), _jsxs("div", { className: "text-xs text-n1-gray-500 dark:text-n1-gray-400", children: ["Account ID: ", balance.accountId] })] }, index)); }), loading && balances.length > 0 && (_jsx("div", { className: "flex justify-center mt-2", children: _jsx(RefreshCw, { size: 16, className: "text-n1-gray-400 n1-animate-spin" }) }))] }))] }) }));
108
108
  }
109
+ //# sourceMappingURL=UserBalances.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserBalances.js","sourceRoot":"","sources":["../../../../../src/Modal/Sidebar/NordTradingView/UserBalances/UserBalances.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useEffect } from 'react';\nimport { useN1WalletContext } from '../../../../Provider/hooks';\nimport { RefreshCw } from 'lucide-react';\n\ninterface Balance {\n symbol: string;\n balance: number;\n accountId: number;\n}\n\nexport default function UserBalances() {\n const { nord, nordUser } = useN1WalletContext();\n const [balances, setBalances] = useState<Balance[]>([]);\n const [loading, setLoading] = useState(false);\n const [error, setError] = useState<string | null>(null);\n\n // Fetch user balances\n useEffect(() => {\n if (!nordUser || !nord) return;\n\n const fetchBalances = async () => {\n setLoading(true);\n setError(null);\n\n try {\n // Refresh user info to get latest balances\n await nordUser.fetchInfo();\n\n // Extract real balances from nordUser\n const realBalances: Balance[] = [];\n\n // Loop through all accounts\n if (nordUser.accountIds) {\n for (const accountId of nordUser.accountIds) {\n // Check if this account has balances\n const accountBalances = nordUser.balances[accountId];\n\n if (accountBalances && accountBalances.length > 0) {\n // Add each balance to our list\n for (const balance of accountBalances) {\n // Only include non-zero balances\n if (balance.balance > 0) {\n realBalances.push({\n symbol: balance.symbol,\n balance: balance.balance,\n accountId: accountId,\n });\n }\n }\n }\n }\n }\n\n setBalances(realBalances);\n } catch (err) {\n console.error('Error fetching balances:', err);\n setError('Failed to load balances');\n } finally {\n setLoading(false);\n }\n };\n\n fetchBalances();\n\n // Set up polling for balance updates\n const intervalId = setInterval(fetchBalances, 10000); // Update every 10 seconds\n\n return () => clearInterval(intervalId);\n }, [nordUser, nord]);\n\n return (\n <div className=\"bg-white dark:bg-n1-gray-950 overflow-hidden\">\n <div className=\"p-4\">\n <h2 className=\"text-lg font-semibold text-n1-gray-900 dark:text-n1-gray-100 mb-4\">\n Balances\n </h2>\n\n {loading && balances.length === 0 ? (\n <div className=\"flex items-center justify-center h-32\">\n <RefreshCw size={20} className=\"text-n1-gray-400 n1-animate-spin\" />\n </div>\n ) : error ? (\n <div className=\"p-3 bg-red-50 dark:bg-red-900/20 rounded-lg text-red-600 dark:text-red-400 text-sm\">\n {error}\n </div>\n ) : balances.length === 0 ? (\n <div className=\"p-3 bg-n1-gray-50 dark:bg-n1-gray-950 rounded-lg text-n1-gray-500 dark:text-n1-gray-400 text-sm text-center\">\n No balances found\n </div>\n ) : (\n <div className=\"space-y-3\">\n {balances.map((balance, index) => (\n <div\n key={index}\n className=\"p-3 bg-n1-gray-50 dark:bg-n1-gray-950 rounded-lg\"\n >\n <div className=\"flex items-center justify-between mb-2\">\n <div className=\"flex items-center\">\n <span className=\"font-medium text-n1-gray-900 dark:text-n1-gray-100\">\n {balance.symbol}\n </span>\n </div>\n <div className=\"font-medium text-n1-gray-900 dark:text-n1-gray-100 font-mono\">\n {balance.balance.toFixed(6)}\n </div>\n </div>\n <div className=\"text-xs text-n1-gray-500 dark:text-n1-gray-400\">\n Account ID: {balance.accountId}\n </div>\n </div>\n ))}\n\n {/* Loading indicator for refreshing */}\n {loading && balances.length > 0 && (\n <div className=\"flex justify-center mt-2\">\n <RefreshCw size={16} className=\"text-n1-gray-400 n1-animate-spin\" />\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n );\n}\n"]}
@@ -170,13 +170,14 @@ export default function UserOrders() {
170
170
  }
171
171
  });
172
172
  }); };
173
- return (_jsx("div", { className: "bg-white dark:bg-gray-950 shadow-sm border border-gray-200 dark:border-gray-800 overflow-hidden", children: _jsxs("div", { className: "p-4", children: [_jsx("h2", { className: "text-lg font-semibold text-gray-900 dark:text-gray-100 mb-4", children: "Orders" }), _jsxs("div", { className: "overflow-hidden", ref: containerRef, children: [loading && activeOrders.length === 0 && orderHistory.length === 0 ? (_jsx("div", { className: "flex items-center justify-center h-32", children: _jsx(RefreshCw, { size: 20, className: "text-gray-400 animate-spin" }) })) : error ? (_jsx("div", { className: "p-3 bg-red-50 dark:bg-red-900/20 text-red-600 dark:text-red-400 text-sm", children: error })) : activeOrders.length === 0 ? (_jsx("div", { className: "p-3 bg-gray-50 dark:bg-gray-800 text-gray-500 dark:text-gray-400 text-sm text-center", children: "No active orders" })) : !compactView ? (
173
+ return (_jsx("div", { className: "bg-white dark:bg-n1-gray-950 shadow-sm border border-n1-gray-200 dark:border-n1-gray-800 overflow-hidden", children: _jsxs("div", { className: "p-4", children: [_jsx("h2", { className: "text-lg font-semibold text-n1-gray-900 dark:text-n1-gray-100 mb-4", children: "Orders" }), _jsxs("div", { className: "overflow-hidden", ref: containerRef, children: [loading && activeOrders.length === 0 && orderHistory.length === 0 ? (_jsx("div", { className: "flex items-center justify-center h-32", children: _jsx(RefreshCw, { size: 20, className: "text-n1-gray-400 n1-animate-spin" }) })) : error ? (_jsx("div", { className: "p-3 bg-red-50 dark:bg-red-900/20 text-red-600 dark:text-red-400 text-sm", children: error })) : activeOrders.length === 0 ? (_jsx("div", { className: "p-3 bg-n1-gray-50 dark:bg-n1-gray-800 text-n1-gray-500 dark:text-n1-gray-400 text-sm text-center", children: "No active orders" })) : !compactView ? (
174
174
  // Standard table view for larger containers
175
- _jsx("div", { className: "overflow-x-auto", children: _jsxs("table", { className: "min-w-full divide-y divide-gray-200 dark:divide-gray-800", children: [_jsx("thead", { className: "bg-gray-50 dark:bg-gray-800", children: _jsxs("tr", { children: [_jsx("th", { className: "px-3 py-2 text-left text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider", children: "Market" }), _jsx("th", { className: "px-3 py-2 text-left text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider", children: "Side" }), _jsx("th", { className: "px-3 py-2 text-right text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider", children: "Size" }), _jsx("th", { className: "px-3 py-2 text-right text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider", children: "Price" }), _jsx("th", { className: "px-3 py-2 text-right text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider", children: "Action" })] }) }), _jsx("tbody", { className: "bg-white dark:bg-gray-950 divide-y divide-gray-200 dark:divide-gray-800", children: activeOrders.map(function (order) { return (_jsxs("tr", { className: "hover:bg-gray-50 dark:hover:bg-gray-800", children: [_jsx("td", { className: "px-3 py-2 whitespace-nowrap text-sm text-gray-900 dark:text-gray-100", children: order.symbol }), _jsx("td", { className: "px-3 py-2 whitespace-nowrap text-sm", children: _jsx("span", { className: "font-medium ".concat(order.isLong ? 'text-green-600 dark:text-green-400' : 'text-red-600 dark:text-red-400'), children: order.isLong ? 'BUY' : 'SELL' }) }), _jsx("td", { className: "px-3 py-2 whitespace-nowrap text-sm text-gray-900 dark:text-gray-100 text-right font-mono", children: order.size }), _jsx("td", { className: "px-3 py-2 whitespace-nowrap text-sm text-gray-900 dark:text-gray-100 text-right font-mono", children: order.price }), _jsx("td", { className: "px-3 py-2 whitespace-nowrap text-sm text-right", children: _jsx("button", { onClick: function () { return handleCancelOrder(order.orderId); }, disabled: cancellingOrderId === order.orderId, className: "text-red-600 dark:text-red-400 hover:text-red-800 dark:hover:text-red-300 relative ".concat(cancellingOrderId === order.orderId
175
+ _jsx("div", { className: "overflow-x-auto", children: _jsxs("table", { className: "min-w-full divide-y divide-n1-gray-200 dark:divide-n1-gray-800", children: [_jsx("thead", { className: "bg-n1-gray-50 dark:bg-n1-gray-800", children: _jsxs("tr", { children: [_jsx("th", { className: "px-3 py-2 text-left text-xs font-medium text-n1-gray-500 dark:text-n1-gray-400 uppercase tracking-wider", children: "Market" }), _jsx("th", { className: "px-3 py-2 text-left text-xs font-medium text-n1-gray-500 dark:text-n1-gray-400 uppercase tracking-wider", children: "Side" }), _jsx("th", { className: "px-3 py-2 text-right text-xs font-medium text-n1-gray-500 dark:text-n1-gray-400 uppercase tracking-wider", children: "Size" }), _jsx("th", { className: "px-3 py-2 text-right text-xs font-medium text-n1-gray-500 dark:text-n1-gray-400 uppercase tracking-wider", children: "Price" }), _jsx("th", { className: "px-3 py-2 text-right text-xs font-medium text-n1-gray-500 dark:text-n1-gray-400 uppercase tracking-wider", children: "Action" })] }) }), _jsx("tbody", { className: "bg-white dark:bg-n1-gray-950 divide-y divide-n1-gray-200 dark:divide-n1-gray-800", children: activeOrders.map(function (order) { return (_jsxs("tr", { className: "hover:bg-n1-gray-50 dark:hover:bg-n1-gray-800", children: [_jsx("td", { className: "px-3 py-2 whitespace-nowrap text-sm text-n1-gray-900 dark:text-n1-gray-100", children: order.symbol }), _jsx("td", { className: "px-3 py-2 whitespace-nowrap text-sm", children: _jsx("span", { className: "font-medium ".concat(order.isLong ? 'text-green-600 dark:text-green-400' : 'text-red-600 dark:text-red-400'), children: order.isLong ? 'BUY' : 'SELL' }) }), _jsx("td", { className: "px-3 py-2 whitespace-nowrap text-sm text-n1-gray-900 dark:text-n1-gray-100 text-right font-mono", children: order.size }), _jsx("td", { className: "px-3 py-2 whitespace-nowrap text-sm text-n1-gray-900 dark:text-n1-gray-100 text-right font-mono", children: order.price }), _jsx("td", { className: "px-3 py-2 whitespace-nowrap text-sm text-right", children: _jsx("button", { onClick: function () { return handleCancelOrder(order.orderId); }, disabled: cancellingOrderId === order.orderId, className: "text-red-600 dark:text-red-400 hover:text-red-800 dark:hover:text-red-300 relative ".concat(cancellingOrderId === order.orderId
176
176
  ? 'cursor-not-allowed'
177
- : ''), children: cancellingOrderId === order.orderId ? (_jsxs(_Fragment, { children: [_jsx("span", { className: "opacity-0", children: "Cancel" }), _jsx(X, { size: 16, className: "absolute inset-0 m-auto animate-pulse text-red-500" })] })) : ('Cancel') }) })] }, order.orderId)); }) })] }) })) : (
177
+ : ''), children: cancellingOrderId === order.orderId ? (_jsxs(_Fragment, { children: [_jsx("span", { className: "opacity-0", children: "Cancel" }), _jsx(X, { size: 16, className: "absolute inset-0 m-auto n1-animate-pulse text-red-500" })] })) : ('Cancel') }) })] }, order.orderId)); }) })] }) })) : (
178
178
  // Compact card view for smaller containers
179
- _jsx("div", { className: "grid gap-2", children: activeOrders.map(function (order) { return (_jsxs("div", { className: "bg-white dark:bg-gray-900 border border-gray-200 dark:border-gray-800 rounded p-2 hover:bg-gray-50 dark:hover:bg-gray-800", children: [_jsxs("div", { className: "flex justify-between items-start mb-1", children: [_jsx("div", { className: "font-medium text-sm text-gray-900 dark:text-gray-100", children: order.symbol }), _jsx("button", { onClick: function () { return handleCancelOrder(order.orderId); }, disabled: cancellingOrderId === order.orderId, className: "text-red-600 dark:text-red-400 hover:text-red-800 dark:hover:text-red-300 text-xs relative ".concat(cancellingOrderId === order.orderId
179
+ _jsx("div", { className: "grid gap-2", children: activeOrders.map(function (order) { return (_jsxs("div", { className: "bg-white dark:bg-n1-gray-900 border border-n1-gray-200 dark:border-n1-gray-800 rounded p-2 hover:bg-n1-gray-50 dark:hover:bg-n1-gray-800", children: [_jsxs("div", { className: "flex justify-between items-start mb-1", children: [_jsx("div", { className: "font-medium text-sm text-n1-gray-900 dark:text-n1-gray-100", children: order.symbol }), _jsx("button", { onClick: function () { return handleCancelOrder(order.orderId); }, disabled: cancellingOrderId === order.orderId, className: "text-red-600 dark:text-red-400 hover:text-red-800 dark:hover:text-red-300 text-xs relative ".concat(cancellingOrderId === order.orderId
180
180
  ? 'cursor-not-allowed'
181
- : ''), children: cancellingOrderId === order.orderId ? (_jsxs(_Fragment, { children: [_jsx("span", { className: "opacity-0", children: "Cancel" }), _jsx(X, { size: 14, className: "absolute inset-0 m-auto animate-pulse text-red-500" })] })) : ('Cancel') })] }), _jsxs("div", { className: "grid grid-cols-3 gap-1 text-xs", children: [_jsx("div", { children: _jsx("span", { className: "font-medium ".concat(order.isLong ? 'text-green-600 dark:text-green-400' : 'text-red-600 dark:text-red-400'), children: order.isLong ? 'BUY' : 'SELL' }) }), _jsx("div", { className: "text-right font-mono text-gray-700 dark:text-gray-300", children: order.size }), _jsx("div", { className: "text-right font-mono text-gray-700 dark:text-gray-300", children: order.price })] })] }, order.orderId)); }) })), loading && (activeOrders.length > 0 || orderHistory.length > 0) && (_jsx("div", { className: "flex justify-center mt-2", children: _jsx(RefreshCw, { size: 16, className: "text-gray-400 animate-spin" }) }))] })] }) }));
181
+ : ''), children: cancellingOrderId === order.orderId ? (_jsxs(_Fragment, { children: [_jsx("span", { className: "opacity-0", children: "Cancel" }), _jsx(X, { size: 14, className: "absolute inset-0 m-auto n1-animate-pulse text-red-500" })] })) : ('Cancel') })] }), _jsxs("div", { className: "grid grid-cols-3 gap-1 text-xs", children: [_jsx("div", { children: _jsx("span", { className: "font-medium ".concat(order.isLong ? 'text-green-600 dark:text-green-400' : 'text-red-600 dark:text-red-400'), children: order.isLong ? 'BUY' : 'SELL' }) }), _jsx("div", { className: "text-right font-mono text-n1-gray-700 dark:text-n1-gray-300", children: order.size }), _jsx("div", { className: "text-right font-mono text-n1-gray-700 dark:text-n1-gray-300", children: order.price })] })] }, order.orderId)); }) })), loading && (activeOrders.length > 0 || orderHistory.length > 0) && (_jsx("div", { className: "flex justify-center mt-2", children: _jsx(RefreshCw, { size: 16, className: "text-n1-gray-400 n1-animate-spin" }) }))] })] }) }));
182
182
  }
183
+ //# sourceMappingURL=UserOrders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserOrders.js","sourceRoot":"","sources":["../../../../../src/Modal/Sidebar/NordTradingView/UserOrders/UserOrders.tsx"],"names":[],"mappings":"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","sourcesContent":["import { RefreshCw, X } from 'lucide-react';\nimport { useEffect, useState, useRef } from 'react';\nimport { useN1WalletContext } from '../../../../Provider/hooks';\nimport { logger } from '../../../../utils/logger';\n\ninterface Order {\n orderId: number;\n marketId: number;\n symbol: string;\n isLong: boolean;\n size: number;\n price: number;\n status: 'OPEN' | 'FILLED' | 'CANCELLED' | 'EXPIRED';\n createdAt: number;\n}\n\nexport default function UserOrders() {\n const { nord, nordUser } = useN1WalletContext();\n const [activeOrders, setActiveOrders] = useState<Order[]>([]);\n const [orderHistory, setOrderHistory] = useState<Order[]>([]);\n const [loading, setLoading] = useState(false);\n const [error, setError] = useState<string | null>(null);\n const [cancellingOrderId, setCancellingOrderId] = useState<number | null>(\n null\n );\n const [compactView, setCompactView] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n\n // Fetch user orders\n useEffect(() => {\n if (!nordUser) return;\n\n const fetchOrders = async () => {\n setLoading(true);\n setError(null);\n\n try {\n // Refresh user info to get latest orders\n await nordUser.fetchInfo();\n\n // Process orders from all accounts\n const allOrders: Order[] = [];\n\n // This is a simplified approach - in a real implementation, you would\n // properly extract and format orders from the nordUser object\n logger.debug(nord?.markets, nordUser.orders);\n Object.values(nordUser.orders || {}).forEach((accountOrders: any) => {\n if (Array.isArray(accountOrders)) {\n accountOrders.forEach((order: any) => {\n // Get market name from nord object\n const market = nord?.markets?.find(\n (m: any) => m.marketId === order.marketId\n );\n const marketName = market?.symbol || `Unknown Market`;\n\n // Convert to our Order interface format\n const formattedOrder: Order = {\n orderId: order.orderId,\n marketId: order.marketId,\n symbol: marketName,\n isLong: order.isLong,\n size: order.size,\n price: order.price,\n status: order.status || 'OPEN',\n createdAt: order.createdAt || Date.now(),\n };\n allOrders.push(formattedOrder);\n });\n }\n });\n\n // Split into active and historical orders\n setActiveOrders(allOrders.filter((order) => order.status === 'OPEN'));\n setOrderHistory(allOrders.filter((order) => order.status !== 'OPEN'));\n } catch (err) {\n logger.error('Error fetching orders:', err);\n setError('Failed to load orders');\n } finally {\n setLoading(false);\n }\n };\n\n fetchOrders();\n\n // Set up polling for order updates\n const intervalId = setInterval(fetchOrders, 10000); // Update every 10 seconds\n\n return () => clearInterval(intervalId);\n }, [nordUser, nord]);\n\n // Check container width and update layout\n useEffect(() => {\n if (!containerRef.current) return;\n\n const checkWidth = () => {\n if (containerRef.current) {\n setCompactView(containerRef.current.offsetWidth < 400);\n }\n };\n\n // Initial check\n checkWidth();\n\n // Set up resize observer\n const resizeObserver = new ResizeObserver(checkWidth);\n resizeObserver.observe(containerRef.current);\n\n return () => {\n if (containerRef.current) {\n resizeObserver.unobserve(containerRef.current);\n }\n };\n }, []);\n\n // Handle order cancellation\n const handleCancelOrder = async (orderId: number) => {\n if (!nordUser) return;\n\n try {\n setCancellingOrderId(orderId); // Set the cancelling order ID to show animation\n await nordUser.cancelOrder(orderId);\n // Refresh orders after cancellation\n await nordUser.fetchInfo();\n // Update state (simplified - would be better to wait for the fetchOrders to run)\n setActiveOrders(\n activeOrders.filter((order) => order.orderId !== orderId)\n );\n } catch (err) {\n logger.error('Error cancelling order:', err);\n setError('Failed to cancel order');\n } finally {\n setCancellingOrderId(null); // Reset cancelling order ID\n }\n };\n\n return (\n <div className=\"bg-white dark:bg-n1-gray-950 shadow-sm border border-n1-gray-200 dark:border-n1-gray-800 overflow-hidden\">\n <div className=\"p-4\">\n <h2 className=\"text-lg font-semibold text-n1-gray-900 dark:text-n1-gray-100 mb-4\">\n Orders\n </h2>\n\n {/* Order list */}\n <div className=\"overflow-hidden\" ref={containerRef}>\n {loading && activeOrders.length === 0 && orderHistory.length === 0 ? (\n <div className=\"flex items-center justify-center h-32\">\n <RefreshCw size={20} className=\"text-n1-gray-400 n1-animate-spin\" />\n </div>\n ) : error ? (\n <div className=\"p-3 bg-red-50 dark:bg-red-900/20 text-red-600 dark:text-red-400 text-sm\">\n {error}\n </div>\n ) : activeOrders.length === 0 ? (\n <div className=\"p-3 bg-n1-gray-50 dark:bg-n1-gray-800 text-n1-gray-500 dark:text-n1-gray-400 text-sm text-center\">\n No active orders\n </div>\n ) : !compactView ? (\n // Standard table view for larger containers\n <div className=\"overflow-x-auto\">\n <table className=\"min-w-full divide-y divide-n1-gray-200 dark:divide-n1-gray-800\">\n <thead className=\"bg-n1-gray-50 dark:bg-n1-gray-800\">\n <tr>\n <th className=\"px-3 py-2 text-left text-xs font-medium text-n1-gray-500 dark:text-n1-gray-400 uppercase tracking-wider\">\n Market\n </th>\n <th className=\"px-3 py-2 text-left text-xs font-medium text-n1-gray-500 dark:text-n1-gray-400 uppercase tracking-wider\">\n Side\n </th>\n <th className=\"px-3 py-2 text-right text-xs font-medium text-n1-gray-500 dark:text-n1-gray-400 uppercase tracking-wider\">\n Size\n </th>\n <th className=\"px-3 py-2 text-right text-xs font-medium text-n1-gray-500 dark:text-n1-gray-400 uppercase tracking-wider\">\n Price\n </th>\n <th className=\"px-3 py-2 text-right text-xs font-medium text-n1-gray-500 dark:text-n1-gray-400 uppercase tracking-wider\">\n Action\n </th>\n </tr>\n </thead>\n <tbody className=\"bg-white dark:bg-n1-gray-950 divide-y divide-n1-gray-200 dark:divide-n1-gray-800\">\n {activeOrders.map((order) => (\n <tr\n key={order.orderId}\n className=\"hover:bg-n1-gray-50 dark:hover:bg-n1-gray-800\"\n >\n <td className=\"px-3 py-2 whitespace-nowrap text-sm text-n1-gray-900 dark:text-n1-gray-100\">\n {order.symbol}\n </td>\n <td className=\"px-3 py-2 whitespace-nowrap text-sm\">\n <span\n className={`font-medium ${order.isLong ? 'text-green-600 dark:text-green-400' : 'text-red-600 dark:text-red-400'}`}\n >\n {order.isLong ? 'BUY' : 'SELL'}\n </span>\n </td>\n <td className=\"px-3 py-2 whitespace-nowrap text-sm text-n1-gray-900 dark:text-n1-gray-100 text-right font-mono\">\n {order.size}\n </td>\n <td className=\"px-3 py-2 whitespace-nowrap text-sm text-n1-gray-900 dark:text-n1-gray-100 text-right font-mono\">\n {order.price}\n </td>\n <td className=\"px-3 py-2 whitespace-nowrap text-sm text-right\">\n <button\n onClick={() => handleCancelOrder(order.orderId)}\n disabled={cancellingOrderId === order.orderId}\n className={`text-red-600 dark:text-red-400 hover:text-red-800 dark:hover:text-red-300 relative ${\n cancellingOrderId === order.orderId\n ? 'cursor-not-allowed'\n : ''\n }`}\n >\n {cancellingOrderId === order.orderId ? (\n <>\n <span className=\"opacity-0\">Cancel</span>\n <X\n size={16}\n className=\"absolute inset-0 m-auto n1-animate-pulse text-red-500\"\n />\n </>\n ) : (\n 'Cancel'\n )}\n </button>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n ) : (\n // Compact card view for smaller containers\n <div className=\"grid gap-2\">\n {activeOrders.map((order) => (\n <div\n key={order.orderId}\n className=\"bg-white dark:bg-n1-gray-900 border border-n1-gray-200 dark:border-n1-gray-800 rounded p-2 hover:bg-n1-gray-50 dark:hover:bg-n1-gray-800\"\n >\n <div className=\"flex justify-between items-start mb-1\">\n <div className=\"font-medium text-sm text-n1-gray-900 dark:text-n1-gray-100\">\n {order.symbol}\n </div>\n <button\n onClick={() => handleCancelOrder(order.orderId)}\n disabled={cancellingOrderId === order.orderId}\n className={`text-red-600 dark:text-red-400 hover:text-red-800 dark:hover:text-red-300 text-xs relative ${\n cancellingOrderId === order.orderId\n ? 'cursor-not-allowed'\n : ''\n }`}\n >\n {cancellingOrderId === order.orderId ? (\n <>\n <span className=\"opacity-0\">Cancel</span>\n <X\n size={14}\n className=\"absolute inset-0 m-auto n1-animate-pulse text-red-500\"\n />\n </>\n ) : (\n 'Cancel'\n )}\n </button>\n </div>\n <div className=\"grid grid-cols-3 gap-1 text-xs\">\n <div>\n <span\n className={`font-medium ${order.isLong ? 'text-green-600 dark:text-green-400' : 'text-red-600 dark:text-red-400'}`}\n >\n {order.isLong ? 'BUY' : 'SELL'}\n </span>\n </div>\n <div className=\"text-right font-mono text-n1-gray-700 dark:text-n1-gray-300\">\n {order.size}\n </div>\n <div className=\"text-right font-mono text-n1-gray-700 dark:text-n1-gray-300\">\n {order.price}\n </div>\n </div>\n </div>\n ))}\n </div>\n )}\n\n {/* Loading indicator for refreshing */}\n {loading && (activeOrders.length > 0 || orderHistory.length > 0) && (\n <div className=\"flex justify-center mt-2\">\n <RefreshCw size={16} className=\"text-n1-gray-400 n1-animate-spin\" />\n </div>\n )}\n </div>\n </div>\n </div>\n );\n}\n"]}
@@ -185,11 +185,12 @@ export default function UserPositions() {
185
185
  }
186
186
  });
187
187
  }); };
188
- return (_jsx("div", { className: "bg-white dark:bg-gray-950 overflow-hidden", children: _jsxs("div", { className: "p-4", children: [_jsx("h2", { className: "text-lg font-semibold text-gray-900 dark:text-gray-100 mb-4", children: "Positions" }), loading && positions.length === 0 ? (_jsx("div", { className: "flex items-center justify-center h-32", children: _jsx(RefreshCw, { size: 20, className: "text-gray-400 animate-spin" }) })) : error ? (_jsx("div", { className: "p-3 bg-red-50 dark:bg-red-900/20 rounded-lg text-red-600 dark:text-red-400 text-sm", children: error })) : positions.length === 0 ? (_jsx("div", { className: "p-3 bg-gray-50 dark:bg-gray-950 rounded-lg text-gray-500 dark:text-gray-400 text-sm text-center", children: "No open positions" })) : (_jsxs("div", { className: "space-y-3", children: [positions.map(function (position, index) { return (_jsxs("div", { className: "p-3 bg-gray-50 dark:bg-gray-950 rounded-lg", children: [_jsx("div", { className: "flex items-center justify-between mb-2", children: _jsxs("div", { className: "flex items-center", children: [_jsx("span", { className: "font-medium text-gray-900 dark:text-gray-100 mr-2", children: position.symbol }), _jsxs("span", { className: "text-xs px-2 py-0.5 rounded ".concat(position.size > 0
188
+ return (_jsx("div", { className: "bg-white dark:bg-n1-gray-950 overflow-hidden", children: _jsxs("div", { className: "p-4", children: [_jsx("h2", { className: "text-lg font-semibold text-n1-gray-900 dark:text-n1-gray-100 mb-4", children: "Positions" }), loading && positions.length === 0 ? (_jsx("div", { className: "flex items-center justify-center h-32", children: _jsx(RefreshCw, { size: 20, className: "text-n1-gray-400 n1-animate-spin" }) })) : error ? (_jsx("div", { className: "p-3 bg-red-50 dark:bg-red-900/20 rounded-lg text-red-600 dark:text-red-400 text-sm", children: error })) : positions.length === 0 ? (_jsx("div", { className: "p-3 bg-n1-gray-50 dark:bg-n1-gray-950 rounded-lg text-n1-gray-500 dark:text-n1-gray-400 text-sm text-center", children: "No open positions" })) : (_jsxs("div", { className: "space-y-3", children: [positions.map(function (position, index) { return (_jsxs("div", { className: "p-3 bg-n1-gray-50 dark:bg-n1-gray-950 rounded-lg", children: [_jsx("div", { className: "flex items-center justify-between mb-2", children: _jsxs("div", { className: "flex items-center", children: [_jsx("span", { className: "font-medium text-n1-gray-900 dark:text-n1-gray-100 mr-2", children: position.symbol }), _jsxs("span", { className: "text-xs px-2 py-0.5 rounded ".concat(position.size > 0
189
189
  ? 'bg-green-100 dark:bg-green-900/20 text-green-600 dark:text-green-400'
190
- : 'bg-red-100 dark:bg-red-900/20 text-red-600 dark:text-red-400'), children: [position.size > 0 ? 'Long' : 'Short', ' ', Math.abs(position.size)] })] }) }), _jsxs("div", { className: "grid grid-cols-2 gap-2 text-sm", children: [_jsxs("div", { children: [_jsx("div", { className: "text-gray-500 dark:text-gray-400", children: "Entry Price" }), _jsx("div", { className: "font-medium text-gray-900 dark:text-gray-100 font-mono", children: position.entryPrice.toFixed(2) })] }), _jsxs("div", { children: [_jsx("div", { className: "text-gray-500 dark:text-gray-400", children: "Mark Price" }), _jsx("div", { className: "font-medium text-gray-900 dark:text-gray-100 font-mono", children: position.markPrice.toFixed(2) })] }), _jsxs("div", { children: [_jsx("div", { className: "text-gray-500 dark:text-gray-400", children: "PnL" }), _jsxs("div", { className: "font-medium font-mono ".concat(position.pnl >= 0
190
+ : 'bg-red-100 dark:bg-red-900/20 text-red-600 dark:text-red-400'), children: [position.size > 0 ? 'Long' : 'Short', ' ', Math.abs(position.size)] })] }) }), _jsxs("div", { className: "grid grid-cols-2 gap-2 text-sm", children: [_jsxs("div", { children: [_jsx("div", { className: "text-n1-gray-500 dark:text-n1-gray-400", children: "Entry Price" }), _jsx("div", { className: "font-medium text-n1-gray-900 dark:text-n1-gray-100 font-mono", children: position.entryPrice.toFixed(2) })] }), _jsxs("div", { children: [_jsx("div", { className: "text-n1-gray-500 dark:text-n1-gray-400", children: "Mark Price" }), _jsx("div", { className: "font-medium text-n1-gray-900 dark:text-n1-gray-100 font-mono", children: position.markPrice.toFixed(2) })] }), _jsxs("div", { children: [_jsx("div", { className: "text-n1-gray-500 dark:text-n1-gray-400", children: "PnL" }), _jsxs("div", { className: "font-medium font-mono ".concat(position.pnl >= 0
191
191
  ? 'text-green-600 dark:text-green-400'
192
- : 'text-red-600 dark:text-red-400'), children: [position.pnl >= 0 ? '+' : '', position.pnl.toFixed(2), " (", position.pnlPercentage.toFixed(2), "%)"] })] }), _jsxs("div", { children: [_jsx("div", { className: "text-gray-500 dark:text-gray-400", children: "Liquidation" }), _jsx("div", { className: "font-medium text-gray-900 dark:text-gray-100 font-mono", children: position.liquidationPrice
192
+ : 'text-red-600 dark:text-red-400'), children: [position.pnl >= 0 ? '+' : '', position.pnl.toFixed(2), " (", position.pnlPercentage.toFixed(2), "%)"] })] }), _jsxs("div", { children: [_jsx("div", { className: "text-n1-gray-500 dark:text-n1-gray-400", children: "Liquidation" }), _jsx("div", { className: "font-medium text-n1-gray-900 dark:text-n1-gray-100 font-mono", children: position.liquidationPrice
193
193
  ? position.liquidationPrice.toFixed(2)
194
- : 'N/A' })] })] })] }, index)); }), loading && positions.length > 0 && (_jsx("div", { className: "flex justify-center mt-2", children: _jsx(RefreshCw, { size: 16, className: "text-gray-400 animate-spin" }) }))] }))] }) }));
194
+ : 'N/A' })] })] })] }, index)); }), loading && positions.length > 0 && (_jsx("div", { className: "flex justify-center mt-2", children: _jsx(RefreshCw, { size: 16, className: "text-n1-gray-400 n1-animate-spin" }) }))] }))] }) }));
195
195
  }
196
+ //# sourceMappingURL=UserPositions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserPositions.js","sourceRoot":"","sources":["../../../../../src/Modal/Sidebar/NordTradingView/UserPositions/UserPositions.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useEffect } from 'react';\nimport { useN1WalletContext } from '../../../../Provider/hooks';\nimport { RefreshCw, X } from 'lucide-react';\n\ninterface Position {\n marketId: number;\n symbol: string;\n size: number;\n entryPrice: number;\n markPrice: number;\n pnl: number;\n pnlPercentage: number;\n liquidationPrice?: number;\n accountId: number;\n}\n\n// Interface for market stats based on the Nord API\ninterface MarketStats {\n market_id: number;\n index_price: [number, number];\n volume_24h: number;\n high_24h: number;\n low_24h: number;\n perp_stats?: {\n mark_price?: number;\n funding_rate?: number;\n next_funding_time?: Date;\n open_interest?: number;\n };\n}\n\nexport default function UserPositions() {\n const { nord, nordUser } = useN1WalletContext();\n const [positions, setPositions] = useState<Position[]>([]);\n const [loading, setLoading] = useState(false);\n const [error, setError] = useState<string | null>(null);\n const [marketStats, setMarketStats] = useState<MarketStats[]>([]);\n\n // Fetch user positions\n useEffect(() => {\n if (!nordUser || !nord) return;\n\n const fetchPositions = async () => {\n setLoading(true);\n setError(null);\n\n try {\n // Refresh user info to get latest positions\n await nordUser.fetchInfo();\n\n // Get market stats for mark prices\n try {\n const stats = await nord.marketsStats();\n setMarketStats(stats.markets);\n } catch (statsErr) {\n console.error('Error fetching market stats:', statsErr);\n // Don't set loading to false here, as we still want to try to get positions\n }\n\n // Extract real positions from nordUser\n const realPositions: Position[] = [];\n\n // Loop through all accounts\n if (nordUser.accountIds) {\n for (const accountId of nordUser.accountIds) {\n // Check if this account has positions\n const accountPositions = nordUser.positions[accountId];\n\n if (accountPositions && accountPositions.length > 0) {\n // Process each position\n for (const position of accountPositions) {\n // Only include positions with perp data and non-zero size\n if (position.perp && Math.abs(position.perp.baseSize) > 0) {\n // Find market info to get symbol\n const market = nord.markets.find(\n (m) => m.marketId === position.marketId\n );\n const symbol = market\n ? market.symbol\n : `Market-${position.marketId}`;\n\n // Calculate PnL\n const totalPnl =\n position.perp.sizePricePnl +\n position.perp.fundingPaymentPnl;\n const entryValue =\n Math.abs(position.perp.baseSize) * position.perp.price;\n const pnlPercentage =\n entryValue > 0 ? (totalPnl / entryValue) * 100 : 0;\n\n // Get mark price from market stats or use entry price as fallback\n const stats = marketStats.find(\n (m) => m.market_id === position.marketId\n );\n const markPrice =\n stats?.perp_stats?.mark_price || position.perp.price;\n\n realPositions.push({\n marketId: position.marketId,\n symbol: symbol,\n size: position.perp.isLong\n ? position.perp.baseSize\n : -position.perp.baseSize,\n entryPrice: position.perp.price,\n markPrice: markPrice,\n pnl: totalPnl,\n pnlPercentage: pnlPercentage,\n accountId: accountId,\n });\n }\n }\n }\n }\n }\n\n setPositions(realPositions);\n setLoading(false); // Explicitly set loading to false on success\n } catch (err) {\n console.error('Error fetching positions:', err);\n setError('Failed to load positions');\n setLoading(false); // Ensure loading is set to false on error\n }\n };\n\n fetchPositions();\n\n // Set up polling for position updates\n const intervalId = setInterval(fetchPositions, 10000); // Update every 10 seconds\n\n return () => clearInterval(intervalId);\n }, [nordUser, nord]); // Remove marketStats from dependency array to prevent infinite loops\n\n // Handle position close\n const handleClosePosition = async (marketId: number, accountId: number) => {\n if (!nordUser) return;\n\n try {\n // Find the position to close\n const position = positions.find(\n (pos) => pos.marketId === marketId && pos.accountId === accountId\n );\n\n if (!position) {\n throw new Error('Position not found');\n }\n\n // Place an order to close the position (opposite side, same size)\n await nordUser.placeOrder({\n marketId: marketId,\n side: position.size > 0 ? 'ask' : 'bid', // Opposite side to close\n fillMode: 'market', // Market order to ensure it gets filled\n isReduceOnly: true, // Reduce-only to ensure it only closes the position\n size: Math.abs(position.size), // Absolute size value\n accountId: accountId,\n });\n\n // Refresh positions after closing\n await nordUser.fetchInfo();\n\n // Remove the position from the local state\n setPositions(\n positions.filter(\n (pos) => !(pos.marketId === marketId && pos.accountId === accountId)\n )\n );\n } catch (err) {\n console.error('Error closing position:', err);\n setError('Failed to close position');\n }\n };\n\n return (\n <div className=\"bg-white dark:bg-n1-gray-950 overflow-hidden\">\n <div className=\"p-4\">\n <h2 className=\"text-lg font-semibold text-n1-gray-900 dark:text-n1-gray-100 mb-4\">\n Positions\n </h2>\n\n {loading && positions.length === 0 ? (\n <div className=\"flex items-center justify-center h-32\">\n <RefreshCw size={20} className=\"text-n1-gray-400 n1-animate-spin\" />\n </div>\n ) : error ? (\n <div className=\"p-3 bg-red-50 dark:bg-red-900/20 rounded-lg text-red-600 dark:text-red-400 text-sm\">\n {error}\n </div>\n ) : positions.length === 0 ? (\n <div className=\"p-3 bg-n1-gray-50 dark:bg-n1-gray-950 rounded-lg text-n1-gray-500 dark:text-n1-gray-400 text-sm text-center\">\n No open positions\n </div>\n ) : (\n <div className=\"space-y-3\">\n {positions.map((position, index) => (\n <div\n key={index}\n className=\"p-3 bg-n1-gray-50 dark:bg-n1-gray-950 rounded-lg\"\n >\n <div className=\"flex items-center justify-between mb-2\">\n <div className=\"flex items-center\">\n <span className=\"font-medium text-n1-gray-900 dark:text-n1-gray-100 mr-2\">\n {position.symbol}\n </span>\n <span\n className={`text-xs px-2 py-0.5 rounded ${\n position.size > 0\n ? 'bg-green-100 dark:bg-green-900/20 text-green-600 dark:text-green-400'\n : 'bg-red-100 dark:bg-red-900/20 text-red-600 dark:text-red-400'\n }`}\n >\n {position.size > 0 ? 'Long' : 'Short'}{' '}\n {Math.abs(position.size)}\n </span>\n </div>\n </div>\n\n <div className=\"grid grid-cols-2 gap-2 text-sm\">\n <div>\n <div className=\"text-n1-gray-500 dark:text-n1-gray-400\">\n Entry Price\n </div>\n <div className=\"font-medium text-n1-gray-900 dark:text-n1-gray-100 font-mono\">\n {position.entryPrice.toFixed(2)}\n </div>\n </div>\n <div>\n <div className=\"text-n1-gray-500 dark:text-n1-gray-400\">\n Mark Price\n </div>\n <div className=\"font-medium text-n1-gray-900 dark:text-n1-gray-100 font-mono\">\n {position.markPrice.toFixed(2)}\n </div>\n </div>\n <div>\n <div className=\"text-n1-gray-500 dark:text-n1-gray-400\">PnL</div>\n <div\n className={`font-medium font-mono ${\n position.pnl >= 0\n ? 'text-green-600 dark:text-green-400'\n : 'text-red-600 dark:text-red-400'\n }`}\n >\n {position.pnl >= 0 ? '+' : ''}\n {position.pnl.toFixed(2)} (\n {position.pnlPercentage.toFixed(2)}%)\n </div>\n </div>\n <div>\n <div className=\"text-n1-gray-500 dark:text-n1-gray-400\">\n Liquidation\n </div>\n <div className=\"font-medium text-n1-gray-900 dark:text-n1-gray-100 font-mono\">\n {position.liquidationPrice\n ? position.liquidationPrice.toFixed(2)\n : 'N/A'}\n </div>\n </div>\n </div>\n </div>\n ))}\n\n {/* Loading indicator for refreshing */}\n {loading && positions.length > 0 && (\n <div className=\"flex justify-center mt-2\">\n <RefreshCw size={16} className=\"text-n1-gray-400 n1-animate-spin\" />\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n );\n}\n"]}
@@ -201,3 +201,4 @@ export function LazyWalletProvider(_a) {
201
201
  var children = _a.children;
202
202
  return _jsx(LazyInternal, { children: children });
203
203
  }
204
+ //# sourceMappingURL=LazyWalletProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LazyWalletProvider.js","sourceRoot":"","sources":["../../src/Provider/LazyWalletProvider.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\nimport { useN1WalletInternalContext } from './hooks';\nimport { N1SessionMode } from './types';\nimport { logger } from '../utils/logger';\n\nfunction DynamicContextConsumer({ children }: { children: any }) {\n const [DynamicContext, setDynamicContext] = useState<any>(null);\n const showAuthFlowRef = useRef<((show: boolean) => void) | null>(null);\n\n // Use refs to track previous values and prevent unnecessary updates\n const prevPrimaryWalletRef = useRef<any>(null);\n const prevHandleLogOutRef = useRef<any>(null);\n const prevSdkHasLoadedRef = useRef<boolean | null>(null);\n\n const {\n setDynamicWallet,\n setDynamicHandleLogOut,\n setDynamicSdkHasLoaded,\n setAddress,\n setShowDynamicWidget,\n } = useN1WalletInternalContext();\n\n // Load the Dynamic context only once\n useEffect(() => {\n let isMounted = true;\n import('@dynamic-labs/sdk-react-core').then(({ useDynamicContext }) => {\n if (isMounted) {\n setDynamicContext(() => useDynamicContext);\n }\n });\n return () => {\n isMounted = false;\n };\n }, []);\n\n // Set up a stable widget function that uses the ref - only once\n useEffect(() => {\n const stableShowWidget = (show: boolean) => {\n if (showAuthFlowRef.current) {\n showAuthFlowRef.current(show);\n }\n };\n\n setShowDynamicWidget(() => stableShowWidget);\n }, [setShowDynamicWidget]);\n\n if (!DynamicContext) {\n return <>{children}</>;\n }\n\n const DynamicComponent = () => {\n const { primaryWallet, sdkHasLoaded, setShowAuthFlow, handleLogOut } =\n DynamicContext();\n\n // Store setShowAuthFlow in ref to avoid re-renders - only when it changes\n useEffect(() => {\n if (setShowAuthFlow !== showAuthFlowRef.current) {\n showAuthFlowRef.current = setShowAuthFlow;\n }\n }, [setShowAuthFlow]);\n\n // Set the dynamic wallet and address when the primary wallet changes\n // Use deep comparison to prevent unnecessary updates\n useEffect(() => {\n // Skip if the wallet hasn't actually changed\n if (primaryWallet === prevPrimaryWalletRef.current) {\n return;\n }\n\n prevPrimaryWalletRef.current = primaryWallet;\n\n if (primaryWallet) {\n setDynamicWallet(primaryWallet);\n setAddress(primaryWallet.address);\n } else {\n setDynamicWallet(null);\n setAddress('');\n }\n }, [primaryWallet, setDynamicWallet, setAddress]);\n\n // Set the logout handler when it changes - only when it actually changes\n useEffect(() => {\n if (handleLogOut && handleLogOut !== prevHandleLogOutRef.current) {\n prevHandleLogOutRef.current = handleLogOut;\n setDynamicHandleLogOut(() => handleLogOut);\n }\n }, [handleLogOut, setDynamicHandleLogOut]);\n\n // Set the SDK loaded flag when it changes - only when it actually changes\n useEffect(() => {\n if (sdkHasLoaded !== prevSdkHasLoadedRef.current) {\n prevSdkHasLoadedRef.current = sdkHasLoaded;\n setDynamicSdkHasLoaded(sdkHasLoaded);\n }\n }, [sdkHasLoaded, setDynamicSdkHasLoaded]);\n\n return <>{children}</>;\n };\n\n return <DynamicComponent />;\n}\n\nconst getSettings = (darkMode: boolean) => ({\n initialAuthenticationMode: 'connect-only',\n environmentId: '61fe6031-545b-4e27-bc05-03c8a09f190b',\n silentAuthentication: true,\n silentAuth: true,\n theme: {\n mode: darkMode ? 'dark' : 'light',\n },\n events: {\n onAuthSuccess: (args: any) => {\n logger.debug('onAuthSuccess was called', args);\n },\n },\n});\n\nfunction LazyInternal(props: { children: any }) {\n const [Provider, setProvider] = useState<any>(null);\n const [walletConnectors, setWalletConnectors] = useState<any[]>([]);\n const { darkMode, sessionMode } = useN1WalletInternalContext();\n\n // Use a ref to track the previous session mode\n const prevSessionModeRef = useRef<N1SessionMode | null>(null);\n\n useEffect(() => {\n // Skip if the session mode hasn't changed\n if (sessionMode === prevSessionModeRef.current) {\n return;\n }\n\n prevSessionModeRef.current = sessionMode;\n\n const loadDynamicDeps = async () => {\n try {\n const [\n { DynamicContextProvider },\n { EthereumWalletConnectors },\n { SolanaWalletConnectors },\n ] = await Promise.all([\n import('@dynamic-labs/sdk-react-core'),\n import('@dynamic-labs/ethereum'),\n import('@dynamic-labs/solana'),\n ]);\n\n setProvider(() => DynamicContextProvider);\n\n if (sessionMode === N1SessionMode.Nord) {\n // Only use Solana wallet connectors for Nord mode\n setWalletConnectors([SolanaWalletConnectors]);\n } else {\n // Use all wallet connectors for NTS mode\n setWalletConnectors([\n EthereumWalletConnectors,\n SolanaWalletConnectors,\n ]);\n }\n } catch (error) {\n logger.error('Failed to load Dynamic dependencies:', error);\n }\n };\n\n loadDynamicDeps();\n }, [sessionMode]);\n\n // Memoize the dynamic settings to prevent unnecessary re-renders\n const dynamicSettings = useCallback(\n () => ({\n ...getSettings(darkMode),\n walletConnectors,\n }),\n [darkMode, walletConnectors]\n );\n\n if (!Provider || walletConnectors.length === 0) {\n return null;\n }\n\n return (\n <Provider settings={dynamicSettings()} theme={darkMode ? 'dark' : 'light'}>\n <DynamicContextConsumer>{props.children}</DynamicContextConsumer>\n </Provider>\n );\n}\n\nexport function LazyWalletProvider({ children }: any) {\n return <LazyInternal>{children}</LazyInternal>;\n}\n"]}
@@ -54,12 +54,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
54
54
  import React, { Suspense, useCallback, useEffect, useState } from 'react';
55
55
  import { N1WalletModal } from '../Modal/N1WalletModal';
56
56
  import { WalletError, WalletErrorCode } from '../errors/types';
57
+ import { logger } from '../utils/logger';
57
58
  import { N1InternalWalletContext, N1WalletContext } from './context';
58
59
  import { N1ModalViewMode, N1SessionMode, } from './types';
59
- import { useNordWalletConnect } from '../Modal/NordFlow/hooks/useNordWalletConnect';
60
- import { useNordInstance } from '../Modal/NordFlow/hooks/useNordInstance';
61
- import { FlowState } from '../Modal/NordFlow/types';
62
- import { logger } from '../utils/logger';
63
60
  var LazyWalletProvider = React.lazy(function () {
64
61
  return import('./LazyWalletProvider').then(function (mod) { return ({
65
62
  default: mod.LazyWalletProvider,
@@ -112,13 +109,6 @@ export function N1WalletProvider(_a) {
112
109
  var _y = useState(null), sessionMode = _y[0], setSessionMode = _y[1];
113
110
  var _z = useState(null), dynamicWallet = _z[0], setDynamicWallet = _z[1];
114
111
  var _0 = useState(null), showDynamicWidget = _0[0], setShowDynamicWidget = _0[1];
115
- // Create a separate component for Nord hooks to avoid conditional hook calls
116
- var NordHooks = function () {
117
- useNordInstance();
118
- useNordWalletConnect(FlowState.IDLE, function (newState) { return logger.debug('State transition:', newState); }, {}, // context
119
- function (updates) { return logger.debug('Context updates:', updates); }, providedSessionMode);
120
- return null;
121
- };
122
112
  // Combine SDK loading and initialization into a single effect
123
113
  useEffect(function () {
124
114
  var mounted = true;
@@ -237,5 +227,6 @@ export function N1WalletProvider(_a) {
237
227
  sessionMode: sessionMode,
238
228
  faucetUrl: faucetUrl,
239
229
  setNordUser: setNordUser,
240
- }, children: [children, providedSessionMode === N1SessionMode.Nord && _jsx(NordHooks, {}), _jsx(N1WalletModal, {}), _jsx(Suspense, { fallback: null, children: _jsx(LazyWalletProvider, {}) })] }) }) }));
230
+ }, children: [children, _jsx(N1WalletModal, {}), _jsx(Suspense, { fallback: null, children: _jsx(LazyWalletProvider, {}) })] }) }) }));
241
231
  }
232
+ //# sourceMappingURL=N1WalletProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"N1WalletProvider.js","sourceRoot":"","sources":["../../src/Provider/N1WalletProvider.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client';\n\nimport React, { Suspense, useCallback, useEffect, useState } from 'react';\nimport { N1WalletModal } from '../Modal/N1WalletModal';\nimport { WalletError, WalletErrorCode } from '../errors/types';\nimport { logger } from '../utils/logger';\nimport { N1InternalWalletContext, N1WalletContext } from './context';\nimport {\n Balance,\n N1ModalViewMode,\n N1SessionMode,\n N1WalletProviderProps,\n} from './types';\n\nconst LazyWalletProvider = React.lazy(() =>\n import('./LazyWalletProvider').then((mod) => ({\n default: mod.LazyWalletProvider,\n }))\n);\n\n// Error boundary to catch WalletErrors\nclass WalletErrorBoundary extends React.Component<{\n children: React.ReactNode;\n onError: (error: WalletError) => void;\n}> {\n componentDidCatch(error: Error) {\n if (error instanceof WalletError) {\n this.props.onError(error);\n } else {\n // Convert unknown errors to WalletError\n this.props.onError(\n new WalletError(\n WalletErrorCode.UNKNOWN,\n error.message || 'An unexpected error occurred',\n { originalError: error }\n )\n );\n }\n }\n\n render() {\n return this.props.children;\n }\n}\n\nexport function N1WalletProvider({\n children,\n providedSessionMode,\n appId,\n darkMode = true,\n onError,\n faucetUrl,\n nord,\n}: N1WalletProviderProps) {\n const [isConnected, setIsConnected] = useState<boolean>(false);\n const [ntsInterface, setNtsInterface] = useState<any>(null);\n const [showLogin, setShowLogin] = useState<boolean>(false);\n const [sessionPubKey, setSessionPubKey] = useState<Uint8Array | null>(null);\n const [walletPubKey, setWalletPubKey] = useState<Uint8Array | null>(null);\n const [userChain, setUserChain] = useState<string | null>(null);\n const [username, setUsername] = useState<string>('');\n const [signMessageWithSessionKey, setSignMessageWithSessionKey] = useState<\n ((message: any) => Promise<any>) | null\n >(null);\n const [signMessageWithWalletKey, setSignMessageWithWalletKey] = useState<\n ((message: any) => Promise<any>) | null\n >(null);\n const [signTransactionWithWalletKey, setSignTransactionWithWalletKey] =\n useState<((transaction: any) => Promise<any>) | null>(null);\n const [showSidebar, setShowSidebar] = useState<boolean>(false);\n const [startClosingLogin, setStartClosingLogin] = useState<boolean>(false);\n const [loading, setLoading] = useState<boolean>(false);\n const [viewMode, setViewMode] = useState<N1ModalViewMode>(\n N1ModalViewMode.Connect\n );\n const [nordUser, setNordUser] = useState<any>(null);\n\n // dynamic\n const [address, setAddress] = useState<string>('');\n const [balances, setBalances] = useState<Balance[]>([]);\n const [chain, setChain] = useState<string>('');\n const [dynamicSdkHasLoaded, setDynamicSdkHasLoaded] = useState<any>(null);\n const [dynamicHandleLogOut, setDynamicHandleLogOut] = useState<any>(null);\n const [sessionMode, setSessionMode] = useState<N1SessionMode | null>(null);\n const [dynamicWallet, setDynamicWallet] = useState<any>(null);\n const [showDynamicWidget, setShowDynamicWidget] = useState<any>(null);\n\n\n // Combine SDK loading and initialization into a single effect\n useEffect(() => {\n let mounted = true;\n\n // Set the session mode from props\n setSessionMode(providedSessionMode);\n\n // Load the appropriate SDK\n const loadSDK = async () => {\n // eslint-disable-next-line no-console\n logger.debug('Loading NTS SDK');\n\n if (providedSessionMode === N1SessionMode.Nord) {\n return;\n }\n\n try {\n const { NTSInterface } = await import('@n1xyz/nts-sdk');\n if (mounted) {\n // eslint-disable-next-line no-console\n logger.debug('NTS SDK loaded successfully');\n setNtsInterface(new NTSInterface(process.env.NTS_URL!));\n }\n } catch (error) {\n if (mounted) {\n // eslint-disable-next-line no-console\n logger.error('Error loading NTS SDK:', error);\n }\n }\n };\n\n loadSDK();\n\n return () => {\n mounted = false;\n };\n }, [providedSessionMode, onError]);\n\n // Separate effect to handle loading state based on both SDKs\n useEffect(() => {\n const isDynamicReady =\n dynamicSdkHasLoaded || providedSessionMode === N1SessionMode.Nord;\n const isNtsReady =\n ntsInterface || providedSessionMode === N1SessionMode.Nord;\n\n setLoading(!isDynamicReady || !isNtsReady);\n }, [dynamicSdkHasLoaded, ntsInterface, providedSessionMode]);\n\n const handleError = useCallback(\n (error: WalletError) => {\n onError?.(error);\n },\n [onError]\n );\n\n // Simple function to test error handler\n const throwTestError = async () => {\n handleError(\n new WalletError(\n WalletErrorCode.WALLET_NOT_FOUND,\n 'Test error: No compatible wallet was found'\n )\n );\n };\n\n // Create the wallet context value\n const walletContextValue = {\n address,\n appId,\n balances,\n chain,\n isConnected,\n ntsInterface,\n sessionMode,\n sessionPubKey,\n setShowLogin,\n showLogin,\n signMessageWithSessionKey,\n signMessageWithWalletKey,\n signTransactionWithWalletKey,\n userChain,\n username,\n viewMode,\n walletPubKey,\n throwTestError,\n faucetUrl,\n nord,\n nordUser,\n };\n\n return (\n <WalletErrorBoundary onError={handleError}>\n <N1WalletContext.Provider value={walletContextValue}>\n <N1InternalWalletContext.Provider\n value={{\n dynamicHandleLogOut,\n dynamicWallet,\n loading,\n dynamicSdkHasLoaded,\n handleError,\n setDynamicSdkHasLoaded,\n setAddress,\n setBalances,\n setChain,\n setDynamicHandleLogOut,\n setDynamicWallet,\n setIsConnected,\n setLoading,\n setNtsInterface,\n setSessionMode,\n setSessionPubKey,\n setShowSidebar,\n setSignMessageWithSessionKey,\n setSignMessageWithWalletKey,\n setSignTransactionWithWalletKey,\n setStartClosingLogin,\n setUsername,\n setUserChain,\n setViewMode,\n setWalletPubKey,\n showSidebar,\n startClosingLogin,\n showDynamicWidget,\n setShowDynamicWidget,\n darkMode,\n sessionMode,\n faucetUrl,\n setNordUser,\n }}\n >\n {children}\n <N1WalletModal />\n <Suspense fallback={null}>\n <LazyWalletProvider />\n </Suspense>\n </N1InternalWalletContext.Provider>\n </N1WalletContext.Provider>\n </WalletErrorBoundary>\n );\n}\n"]}
@@ -2,3 +2,4 @@ import { createContext } from 'react';
2
2
  var N1WalletContext = createContext({});
3
3
  var N1InternalWalletContext = createContext({});
4
4
  export { N1WalletContext, N1InternalWalletContext };
5
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/Provider/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGtC,IAAM,eAAe,GAAG,aAAa,CAAgB,EAAmB,CAAC,CAAC;AAC1E,IAAM,uBAAuB,GAAG,aAAa,CAC3C,EAA2B,CAC5B,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,CAAC","sourcesContent":["import { N1WalletState } from './types';\n\nimport { createContext } from 'react';\nimport { N1InternalWalletState } from './types';\n\nconst N1WalletContext = createContext<N1WalletState>({} as N1WalletState);\nconst N1InternalWalletContext = createContext<N1InternalWalletState>(\n {} as N1InternalWalletState\n);\n\nexport { N1WalletContext, N1InternalWalletContext };\n"]}
@@ -14,3 +14,4 @@ export function useN1WalletInternalContext() {
14
14
  }
15
15
  return context;
16
16
  }
17
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/Provider/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAErE,MAAM,UAAU,kBAAkB;IAChC,IAAM,OAAO,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC;IAC5C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,0BAA0B;IACxC,IAAM,OAAO,GAAG,UAAU,CAAC,uBAAuB,CAAC,CAAC;IACpD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC","sourcesContent":["import { useContext } from 'react';\nimport { N1WalletContext, N1InternalWalletContext } from './context';\n\nexport function useN1WalletContext() {\n const context = useContext(N1WalletContext);\n if (context === undefined) {\n throw new Error(\n 'useN1WalletContext must be used within a N1WalletProvider'\n );\n }\n return context;\n}\n\nexport function useN1WalletInternalContext() {\n const context = useContext(N1InternalWalletContext);\n if (context === undefined) {\n throw new Error(\n 'useN1WalletInternalContext must be used within a N1WalletProvider'\n );\n }\n return context;\n}\n"]}
@@ -2,3 +2,4 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  export function CoinbaseWalletIcon() {
3
3
  return (_jsxs("svg", { width: "1.5em", height: "1.5em", xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink", version: "1.2", baseProfile: "tiny", id: "Layer_1", x: "0px", y: "0px", viewBox: "0 0 1024 1024", overflow: "visible", xmlSpace: "preserve", children: [_jsx("path", { fill: "#0052FF", d: "M512,0L512,0c282.8,0,512,229.2,512,512l0,0c0,282.8-229.2,512-512,512l0,0C229.2,1024,0,794.8,0,512l0,0 C0,229.2,229.2,0,512,0z" }), _jsx("path", { fill: "#FFFFFF", d: "M512.1,692c-99.4,0-180-80.5-180-180s80.6-180,180-180c89.1,0,163.1,65,177.3,150h181.3 c-15.3-184.8-170-330-358.7-330c-198.8,0-360,161.2-360,360s161.2,360,360,360c188.7,0,343.4-145.2,358.7-330H689.3 C675,627,601.2,692,512.1,692z" })] }));
4
4
  }
5
+ //# sourceMappingURL=CoinbaseWalletIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoinbaseWalletIcon.js","sourceRoot":"","sources":["../../../src/Provider/icons/CoinbaseWalletIcon.tsx"],"names":[],"mappings":";AAAA,MAAM,UAAU,kBAAkB;IAChC,OAAO,CACL,eACE,KAAK,EAAC,OAAO,EACb,MAAM,EAAC,OAAO,EACd,KAAK,EAAC,4BAA4B,EAClC,UAAU,EAAC,8BAA8B,EACzC,OAAO,EAAC,KAAK,EACb,WAAW,EAAC,MAAM,EAClB,EAAE,EAAC,SAAS,EACZ,CAAC,EAAC,KAAK,EACP,CAAC,EAAC,KAAK,EACP,OAAO,EAAC,eAAe,EACvB,QAAQ,EAAC,SAAS,EAClB,QAAQ,EAAC,UAAU,aAEnB,eACE,IAAI,EAAC,SAAS,EACd,CAAC,EAAC,gIAAgI,GAClI,EACF,eACE,IAAI,EAAC,SAAS,EACd,CAAC,EAAC,sOAAsO,GACxO,IACE,CACP,CAAC;AACJ,CAAC","sourcesContent":["export function CoinbaseWalletIcon() {\n return (\n <svg\n width=\"1.5em\"\n height=\"1.5em\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n version=\"1.2\"\n baseProfile=\"tiny\"\n id=\"Layer_1\"\n x=\"0px\"\n y=\"0px\"\n viewBox=\"0 0 1024 1024\"\n overflow=\"visible\"\n xmlSpace=\"preserve\"\n >\n <path\n fill=\"#0052FF\"\n d=\"M512,0L512,0c282.8,0,512,229.2,512,512l0,0c0,282.8-229.2,512-512,512l0,0C229.2,1024,0,794.8,0,512l0,0 C0,229.2,229.2,0,512,0z\"\n />\n <path\n fill=\"#FFFFFF\"\n d=\"M512.1,692c-99.4,0-180-80.5-180-180s80.6-180,180-180c89.1,0,163.1,65,177.3,150h181.3 c-15.3-184.8-170-330-358.7-330c-198.8,0-360,161.2-360,360s161.2,360,360,360c188.7,0,343.4-145.2,358.7-330H689.3 C675,627,601.2,692,512.1,692z\"\n />\n </svg>\n );\n}\n"]}
@@ -2,3 +2,4 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  export function ConnectionDotsSVG() {
3
3
  return (_jsxs("svg", { width: "56", height: "12", viewBox: "0 0 56 12", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("circle", { cx: "19.5", cy: "2.5", r: "2.5", fill: "#6e6e6e" }), _jsx("circle", { cx: "36.5", cy: "2.5", r: "2.5", fill: "#6e6e6e" }), _jsx("circle", { cx: "2.5", cy: "2.5", r: "2.5", fill: "#6e6e6e" }), _jsx("circle", { cx: "53.5", cy: "2.5", r: "2.5", fill: "#6e6e6e" }), _jsx("circle", { cx: "12.5", cy: "9.5", r: "2.5", fill: "#6e6e6e" }), _jsx("circle", { cx: "29.5", cy: "9.5", r: "2.5", fill: "#6e6e6e" }), _jsx("circle", { cx: "46.5", cy: "9.5", r: "2.5", fill: "#6e6e6e" })] }));
4
4
  }
5
+ //# sourceMappingURL=ConnectionDotsSVG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConnectionDotsSVG.js","sourceRoot":"","sources":["../../../src/Provider/icons/ConnectionDotsSVG.tsx"],"names":[],"mappings":";AAAA,MAAM,UAAU,iBAAiB;IAC/B,OAAO,CACL,eACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,aAElC,iBAAQ,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,SAAS,GAAU,EAC3D,iBAAQ,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,SAAS,GAAU,EAC3D,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,SAAS,GAAU,EAC1D,iBAAQ,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,SAAS,GAAU,EAC3D,iBAAQ,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,SAAS,GAAU,EAC3D,iBAAQ,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,SAAS,GAAU,EAC3D,iBAAQ,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,SAAS,GAAU,IACvD,CACP,CAAC;AACJ,CAAC","sourcesContent":["export function ConnectionDotsSVG() {\n return (\n <svg\n width=\"56\"\n height=\"12\"\n viewBox=\"0 0 56 12\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"19.5\" cy=\"2.5\" r=\"2.5\" fill=\"#6e6e6e\"></circle>\n <circle cx=\"36.5\" cy=\"2.5\" r=\"2.5\" fill=\"#6e6e6e\"></circle>\n <circle cx=\"2.5\" cy=\"2.5\" r=\"2.5\" fill=\"#6e6e6e\"></circle>\n <circle cx=\"53.5\" cy=\"2.5\" r=\"2.5\" fill=\"#6e6e6e\"></circle>\n <circle cx=\"12.5\" cy=\"9.5\" r=\"2.5\" fill=\"#6e6e6e\"></circle>\n <circle cx=\"29.5\" cy=\"9.5\" r=\"2.5\" fill=\"#6e6e6e\"></circle>\n <circle cx=\"46.5\" cy=\"9.5\" r=\"2.5\" fill=\"#6e6e6e\"></circle>\n </svg>\n );\n}\n"]}