@multiversx/sdk-dapp 5.0.0-alpha.3 → 5.0.0-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (451) hide show
  1. package/README.md +71 -6
  2. package/out/__chunks__/{chunk-L2JWXTGG.mjs → chunk-2FTDMH6Y.mjs} +2 -2
  3. package/out/__chunks__/chunk-2HY7DU3P.mjs +2 -0
  4. package/out/__chunks__/{chunk-PMPTCB44.mjs → chunk-2JBJKAGB.mjs} +2 -2
  5. package/out/__chunks__/chunk-2NQZJCCF.mjs +2 -0
  6. package/out/__chunks__/{chunk-XKTDOIMV.mjs → chunk-2UEEEYRT.mjs} +2 -2
  7. package/out/__chunks__/{chunk-XKTDOIMV.mjs.map → chunk-2UEEEYRT.mjs.map} +2 -2
  8. package/out/__chunks__/{chunk-AGI2ZR6R.mjs → chunk-2YTMWXHT.mjs} +2 -2
  9. package/out/__chunks__/chunk-4LFIRWUJ.mjs +2 -0
  10. package/out/__chunks__/chunk-4LFIRWUJ.mjs.map +7 -0
  11. package/out/__chunks__/chunk-4WXQHTVV.mjs +2 -0
  12. package/out/__chunks__/{chunk-PEDR76UT.mjs → chunk-53A5OCQC.mjs} +2 -2
  13. package/out/__chunks__/{chunk-ENTPR3MV.mjs → chunk-5F57CS73.mjs} +2 -2
  14. package/out/__chunks__/chunk-5IV2AU53.mjs +2 -0
  15. package/out/__chunks__/chunk-5XBGERHC.mjs +2 -0
  16. package/out/__chunks__/chunk-62PJZCUP.mjs +2 -0
  17. package/out/__chunks__/{chunk-SVNWQXWC.mjs → chunk-66Z36IEX.mjs} +2 -2
  18. package/out/__chunks__/{chunk-QI2QMNTG.mjs → chunk-6G4HQO6W.mjs} +2 -2
  19. package/out/__chunks__/{chunk-R7SGL2HW.mjs → chunk-6RUKE4FM.mjs} +2 -2
  20. package/out/__chunks__/chunk-7EEGO5S4.mjs +2 -0
  21. package/out/__chunks__/chunk-7VRG4RQO.mjs +2 -0
  22. package/out/__chunks__/{chunk-UFMHCVBL.mjs.map → chunk-7VRG4RQO.mjs.map} +2 -2
  23. package/out/__chunks__/chunk-AKDRHJVP.mjs +1 -0
  24. package/out/__chunks__/{chunk-M3C5NS6M.mjs → chunk-ASXWZ65B.mjs} +2 -2
  25. package/out/__chunks__/{chunk-3OKWBJFM.mjs → chunk-B2RDSGON.mjs} +2 -2
  26. package/out/__chunks__/{chunk-643LVXSN.mjs → chunk-BIVUIC53.mjs} +2 -2
  27. package/out/__chunks__/chunk-BMAAIEFF.mjs +2 -0
  28. package/out/__chunks__/{chunk-GUHNF5RM.mjs → chunk-D2PIXNOV.mjs} +2 -2
  29. package/out/__chunks__/{chunk-Y2GZNJKO.mjs → chunk-D7HA7LH7.mjs} +2 -2
  30. package/out/__chunks__/{chunk-67X3ORNS.mjs → chunk-DCKHP6C2.mjs} +2 -2
  31. package/out/__chunks__/{chunk-X7AQOVLN.mjs → chunk-DP7J3L4E.mjs} +2 -2
  32. package/out/__chunks__/chunk-DTI4TQ2I.mjs +2 -0
  33. package/out/__chunks__/chunk-DTI4TQ2I.mjs.map +7 -0
  34. package/out/__chunks__/{chunk-CN4RHVUE.mjs → chunk-E6LAZEWZ.mjs} +2 -2
  35. package/out/__chunks__/{chunk-YAXVLGG3.mjs → chunk-EGPVJE45.mjs} +2 -2
  36. package/out/__chunks__/{chunk-LRKA4F33.mjs → chunk-EJ2HUG54.mjs} +2 -2
  37. package/out/__chunks__/{chunk-I66YT2S2.mjs → chunk-FMUDQBZE.mjs} +2 -2
  38. package/out/__chunks__/{chunk-HC5QPKZT.mjs → chunk-G34E3TZH.mjs} +2 -2
  39. package/out/__chunks__/chunk-GZTIVASC.mjs +2 -0
  40. package/out/__chunks__/{chunk-WW4BBBLW.mjs → chunk-HO2VZQDC.mjs} +2 -2
  41. package/out/__chunks__/{chunk-OSYFYAJA.mjs → chunk-HORNVUEE.mjs} +2 -2
  42. package/out/__chunks__/{chunk-LD4NALNZ.mjs → chunk-HQO3R2IG.mjs} +2 -2
  43. package/out/__chunks__/{chunk-LEVR7744.mjs → chunk-I4Q4TPMA.mjs} +2 -2
  44. package/out/__chunks__/{chunk-DGXP3AZR.mjs → chunk-II6G5P3V.mjs} +2 -2
  45. package/out/__chunks__/{chunk-X2JK27T3.mjs → chunk-INU7LP3O.mjs} +2 -2
  46. package/out/__chunks__/chunk-IXJIAULR.mjs +2 -0
  47. package/out/__chunks__/{chunk-YPNKNMW5.mjs → chunk-L2DBVSAK.mjs} +2 -2
  48. package/out/__chunks__/{chunk-XCXU3BVP.mjs → chunk-LEVXXCB6.mjs} +2 -2
  49. package/out/__chunks__/{chunk-IJX53ZJI.mjs → chunk-LGILKY4G.mjs} +2 -2
  50. package/out/__chunks__/{chunk-DHSATBNM.mjs → chunk-LTUGEJO2.mjs} +2 -2
  51. package/out/__chunks__/{chunk-VLHG5NVE.mjs → chunk-LWWYE4ZP.mjs} +2 -2
  52. package/out/__chunks__/chunk-NERW4V4C.mjs +2 -0
  53. package/out/__chunks__/{chunk-243OAHYD.mjs → chunk-NIYYV54M.mjs} +2 -2
  54. package/out/__chunks__/chunk-NIYYV54M.mjs.map +7 -0
  55. package/out/__chunks__/{chunk-7OTTISMZ.mjs → chunk-O2ZW3AB7.mjs} +2 -2
  56. package/out/__chunks__/chunk-O4TATYJF.mjs +2 -0
  57. package/out/__chunks__/{chunk-ZIQFQWVJ.mjs → chunk-O65YGLZ6.mjs} +2 -2
  58. package/out/__chunks__/{chunk-TFQFZ5M2.mjs → chunk-OCQ5EFO2.mjs} +2 -2
  59. package/out/__chunks__/{chunk-TVBOE2RK.mjs → chunk-OEPTRJEB.mjs} +1 -1
  60. package/out/__chunks__/{chunk-TVBOE2RK.mjs.map → chunk-OEPTRJEB.mjs.map} +1 -1
  61. package/out/__chunks__/{chunk-UYUKTC4X.mjs → chunk-PHFBCDTP.mjs} +2 -2
  62. package/out/__chunks__/{chunk-BTDFQCSV.mjs → chunk-PP3YTLDC.mjs} +2 -2
  63. package/out/__chunks__/{chunk-OTBTZ3NI.mjs → chunk-Q6PSRPB2.mjs} +2 -2
  64. package/out/__chunks__/{chunk-OTBTZ3NI.mjs.map → chunk-Q6PSRPB2.mjs.map} +1 -1
  65. package/out/__chunks__/{chunk-JXO7XRIR.mjs → chunk-Q725VOSH.mjs} +2 -2
  66. package/out/__chunks__/{chunk-Y3YLDFXK.mjs → chunk-QATZVKKG.mjs} +2 -2
  67. package/out/__chunks__/{chunk-JGULQG2H.mjs → chunk-QE5C4A4D.mjs} +2 -2
  68. package/out/__chunks__/{chunk-RCBOU6TT.mjs → chunk-QF6MS77T.mjs} +2 -2
  69. package/out/__chunks__/{chunk-3IYQANTT.mjs → chunk-QOVOHGYN.mjs} +2 -2
  70. package/out/__chunks__/chunk-QXWM7T6G.mjs +2 -0
  71. package/out/__chunks__/chunk-QXWM7T6G.mjs.map +7 -0
  72. package/out/__chunks__/{chunk-D4MNCAND.mjs → chunk-R46LJPYC.mjs} +2 -2
  73. package/out/__chunks__/{chunk-672ZNZKR.mjs → chunk-SYI5Q5RY.mjs} +2 -2
  74. package/out/__chunks__/{chunk-G7ZMNJIE.mjs → chunk-T6YNIMPO.mjs} +2 -2
  75. package/out/__chunks__/chunk-TCGD3BK4.mjs +2 -0
  76. package/out/__chunks__/chunk-TDPJL2GR.mjs +2 -0
  77. package/out/__chunks__/chunk-TDPJL2GR.mjs.map +7 -0
  78. package/out/__chunks__/{chunk-ZLBHLHQ3.mjs → chunk-TF4RGU5H.mjs} +2 -2
  79. package/out/__chunks__/chunk-TR5U2CII.mjs +2 -0
  80. package/out/__chunks__/chunk-TR5U2CII.mjs.map +7 -0
  81. package/out/__chunks__/{chunk-NM3KJ3EA.mjs → chunk-V4YY4ZE7.mjs} +2 -2
  82. package/out/__chunks__/{chunk-WUAYFGWU.mjs → chunk-VDGMN7HP.mjs} +2 -2
  83. package/out/__chunks__/{chunk-5WVAF7RB.mjs → chunk-VZYCT6ZP.mjs} +2 -2
  84. package/out/__chunks__/{chunk-42KJRIAT.mjs → chunk-WCS37FJM.mjs} +2 -2
  85. package/out/__chunks__/{chunk-SBQJGS63.mjs → chunk-WXXLQ6H7.mjs} +2 -2
  86. package/out/__chunks__/{chunk-ZGNDECGJ.mjs → chunk-WZD36B2K.mjs} +2 -2
  87. package/out/__chunks__/{chunk-YRIDJGOK.mjs → chunk-XGUWU5IO.mjs} +2 -2
  88. package/out/__chunks__/chunk-XRPJSGL4.mjs +2 -0
  89. package/out/__chunks__/chunk-XWQ5GB5Q.mjs +2 -0
  90. package/out/__chunks__/{chunk-7RX2A4WD.mjs → chunk-YAO67FPP.mjs} +2 -2
  91. package/out/__chunks__/{chunk-ZK3OCDKZ.mjs → chunk-YMME53G7.mjs} +2 -2
  92. package/out/__chunks__/{chunk-BJRGP56G.mjs → chunk-YWJNYZVU.mjs} +2 -2
  93. package/out/__chunks__/{chunk-2HWIJ4CV.mjs → chunk-YZLY7QNI.mjs} +2 -2
  94. package/out/__chunks__/chunk-ZEUNADU7.mjs +2 -0
  95. package/out/__mocks__/accountConfig.mjs +1 -1
  96. package/out/__mocks__/data/index.mjs +1 -1
  97. package/out/__mocks__/index.mjs +1 -1
  98. package/out/__mocks__/server.mjs +1 -1
  99. package/out/apiCalls/account/getScamAddressData.mjs +1 -1
  100. package/out/apiCalls/configuration/getCleanApiAddress.mjs +1 -1
  101. package/out/apiCalls/configuration/getGasStationMetadata.mjs +1 -1
  102. package/out/apiCalls/index.mjs +1 -1
  103. package/out/apiCalls/tokens/getPersistedTokenDetails.mjs +1 -1
  104. package/out/apiCalls/tokens/getTokenDetails.mjs +1 -1
  105. package/out/apiCalls/tokens/index.mjs +1 -1
  106. package/out/apiCalls/transactions/getServerTransactionsByHashes.mjs +1 -1
  107. package/out/apiCalls/transactions/getTransactionByHash.mjs +1 -1
  108. package/out/apiCalls/transactions/getTransactionByHash.mjs.map +1 -1
  109. package/out/apiCalls/transactions/getTransactionsByHashes.mjs +1 -1
  110. package/out/constants/index.mjs +1 -1
  111. package/out/controllers/TransactionsHistoryController/TransactionsHistoryController.mjs +1 -1
  112. package/out/controllers/TransactionsHistoryController/index.mjs +1 -1
  113. package/out/controllers/TransactionsTableController/TransactionsTableController.d.ts +2 -2
  114. package/out/controllers/TransactionsTableController/TransactionsTableController.js +2 -2
  115. package/out/controllers/TransactionsTableController/TransactionsTableController.js.map +1 -1
  116. package/out/controllers/TransactionsTableController/TransactionsTableController.mjs +1 -1
  117. package/out/controllers/TransactionsTableController/index.mjs +1 -1
  118. package/out/controllers/TransactionsTableController/transactionsTableController.types.d.ts +8 -11
  119. package/out/index.mjs +1 -1
  120. package/out/managers/NotificationsFeedManager/NotificationsFeedManager.d.ts +6 -0
  121. package/out/managers/NotificationsFeedManager/NotificationsFeedManager.js +6 -2
  122. package/out/managers/NotificationsFeedManager/NotificationsFeedManager.js.map +1 -1
  123. package/out/managers/NotificationsFeedManager/NotificationsFeedManager.mjs +1 -1
  124. package/out/managers/NotificationsFeedManager/index.mjs +1 -1
  125. package/out/managers/TransactionManager/TransactionManager.mjs +1 -1
  126. package/out/managers/TransactionManager/helpers/getAreTransactionsCorssShards.mjs +1 -1
  127. package/out/managers/TransactionManager/helpers/getShardOfAddress.mjs +1 -1
  128. package/out/managers/TransactionManager/helpers/getToastDuration.mjs +1 -1
  129. package/out/managers/TransactionManager/helpers/getTransactionsStatus.mjs +1 -1
  130. package/out/managers/TransactionManager/helpers/isCrossShardTransaction.mjs +1 -1
  131. package/out/managers/TransactionManager/index.mjs +1 -1
  132. package/out/managers/UnlockPanelManager/UnlockPanelManager.mjs +1 -1
  133. package/out/managers/UnlockPanelManager/index.mjs +1 -1
  134. package/out/managers/index.mjs +1 -1
  135. package/out/managers/internal/LedgerConnectStateManager/LedgerConnectStateManager.mjs +1 -1
  136. package/out/managers/internal/LedgerConnectStateManager/index.mjs +1 -1
  137. package/out/managers/internal/LedgerIdleStateManager/LedgerIdleStateManager.mjs +1 -1
  138. package/out/managers/internal/PendingTransactionsStateManager/PendingTransactionsStateManager.mjs +1 -1
  139. package/out/managers/internal/PendingTransactionsStateManager/index.mjs +1 -1
  140. package/out/managers/internal/SidePanelBaseManager/SidePanelBaseManager.mjs +1 -1
  141. package/out/managers/internal/SidePanelBaseManager/index.mjs +1 -1
  142. package/out/managers/internal/SignTransactionsStateManager/SignTransactionsStateManager.mjs +1 -1
  143. package/out/managers/internal/SignTransactionsStateManager/index.mjs +1 -1
  144. package/out/managers/internal/ToastManager/ToastManager.mjs +1 -1
  145. package/out/managers/internal/ToastManager/helpers/LifetimeManager.mjs +1 -1
  146. package/out/managers/internal/ToastManager/helpers/createToastsFromTransactions.mjs +1 -1
  147. package/out/managers/internal/ToastManager/helpers/createTransactionToast.mjs +1 -1
  148. package/out/managers/internal/ToastManager/helpers/getToastDataStateByStatus.mjs +1 -1
  149. package/out/managers/internal/UIBaseManager/UIBaseManager.mjs +1 -1
  150. package/out/managers/internal/WalletConnectStateManager/WalletConnectStateManager.mjs +1 -1
  151. package/out/managers/internal/WalletConnectStateManager/index.mjs +1 -1
  152. package/out/managers/internal/index.mjs +1 -1
  153. package/out/methods/account/getAccount.mjs +1 -1
  154. package/out/methods/account/getAccountInfo.mjs +1 -1
  155. package/out/methods/account/getAddress.mjs +1 -1
  156. package/out/methods/account/getIsLoggedIn.mjs +1 -1
  157. package/out/methods/account/getLatestNonce.mjs +1 -1
  158. package/out/methods/initApp/gastStationMetadata/setGasStationMetadata.mjs +1 -1
  159. package/out/methods/initApp/initApp.mjs +1 -1
  160. package/out/methods/initApp/initApp.mjs.map +1 -1
  161. package/out/methods/initApp/initApp.types.d.ts +38 -0
  162. package/out/methods/initApp/websocket/initializeWebsocketConnection.mjs +1 -1
  163. package/out/methods/initApp/websocket/registerWebsocket.mjs +1 -1
  164. package/out/methods/loginInfo/getLoginInfo.mjs +1 -1
  165. package/out/methods/loginInfo/getLoginInfo.mjs.map +1 -1
  166. package/out/methods/network/getEgldLabel.mjs +1 -1
  167. package/out/methods/network/getExplorerAddress.mjs +1 -1
  168. package/out/methods/network/getNetworkConfig.d.ts +1 -1
  169. package/out/methods/network/getNetworkConfig.js +1 -1
  170. package/out/methods/network/getNetworkConfig.js.map +1 -1
  171. package/out/methods/network/getNetworkConfig.mjs +1 -1
  172. package/out/methods/trackTransactions/helpers/checkTransactionStatus/checkBatch.mjs +1 -1
  173. package/out/methods/trackTransactions/helpers/checkTransactionStatus/checkTransactionStatus.mjs +1 -1
  174. package/out/methods/trackTransactions/helpers/checkTransactionStatus/index.mjs +1 -1
  175. package/out/methods/trackTransactions/helpers/checkTransactionStatus/manageFailedTransactions.mjs +1 -1
  176. package/out/methods/trackTransactions/helpers/getPollingInterval.mjs +1 -1
  177. package/out/methods/trackTransactions/trackTransactions.mjs +1 -1
  178. package/out/methods/transactions/getPendingTransactions.mjs +1 -1
  179. package/out/methods/transactions/getPendingTransactions.mjs.map +1 -1
  180. package/out/methods/transactions/getPendingTransactionsSessions.mjs +1 -1
  181. package/out/methods/transactions/getPendingTransactionsSessions.mjs.map +1 -1
  182. package/out/methods/transactions/getTransactionSessions.mjs +1 -1
  183. package/out/methods/transactions/getTransactionSessions.mjs.map +1 -1
  184. package/out/providers/DappProvider/DappProvider.d.ts +9 -2
  185. package/out/providers/DappProvider/DappProvider.js +10 -2
  186. package/out/providers/DappProvider/DappProvider.js.map +1 -1
  187. package/out/providers/DappProvider/DappProvider.mjs +1 -1
  188. package/out/providers/DappProvider/helpers/login/helpers/accountLogin.mjs +1 -1
  189. package/out/providers/DappProvider/helpers/login/helpers/extractAddressFromToken.mjs +1 -1
  190. package/out/providers/DappProvider/helpers/login/helpers/getAccountFromToken.mjs +1 -1
  191. package/out/providers/DappProvider/helpers/login/helpers/getModifiedLoginToken.mjs +1 -1
  192. package/out/providers/DappProvider/helpers/login/login.js +4 -3
  193. package/out/providers/DappProvider/helpers/login/login.js.map +1 -1
  194. package/out/providers/DappProvider/helpers/login/login.mjs +1 -1
  195. package/out/providers/DappProvider/helpers/logout/logout.d.ts +1 -1
  196. package/out/providers/DappProvider/helpers/logout/logout.js +3 -1
  197. package/out/providers/DappProvider/helpers/logout/logout.js.map +1 -1
  198. package/out/providers/DappProvider/helpers/logout/logout.mjs +1 -1
  199. package/out/providers/DappProvider/helpers/signErrors/handleSignError.mjs +1 -1
  200. package/out/providers/DappProvider/helpers/signMessage/signMessageWithProvider.d.ts +1 -2
  201. package/out/providers/DappProvider/helpers/signMessage/signMessageWithProvider.js.map +1 -1
  202. package/out/providers/DappProvider/helpers/signMessage/signMessageWithProvider.mjs +1 -1
  203. package/out/providers/DappProvider/helpers/signMessage/verifyMessage.d.ts +1 -1
  204. package/out/providers/DappProvider/helpers/signMessage/verifyMessage.mjs +1 -1
  205. package/out/providers/DappProvider/helpers/signTransactions/signTransactionsWithProvider.mjs +1 -1
  206. package/out/providers/DappProvider/index.mjs +1 -1
  207. package/out/providers/ProviderFactory.mjs +1 -1
  208. package/out/providers/helpers/accountProvider.mjs +1 -1
  209. package/out/providers/helpers/cancelCrossWindowAction.mjs +1 -1
  210. package/out/providers/helpers/restoreProvider.mjs +1 -1
  211. package/out/providers/index.mjs +1 -1
  212. package/out/providers/strategies/BaseProviderStrategy/BaseProviderStrategy.mjs +1 -1
  213. package/out/providers/strategies/CrossWindowProviderStrategy/CrossWindowProviderStrategy.mjs +1 -1
  214. package/out/providers/strategies/CrossWindowProviderStrategy/index.mjs +1 -1
  215. package/out/providers/strategies/ExtensionProviderStrategy/ExtensionProviderStrategy.mjs +1 -1
  216. package/out/providers/strategies/ExtensionProviderStrategy/index.mjs +1 -1
  217. package/out/providers/strategies/IframeProviderStrategy/IframeProviderStrategy.mjs +1 -1
  218. package/out/providers/strategies/IframeProviderStrategy/index.mjs +1 -1
  219. package/out/providers/strategies/LedgerProviderStrategy/LedgerProviderStrategy.mjs +1 -1
  220. package/out/providers/strategies/LedgerProviderStrategy/helpers/authenticateLedgerAccount.mjs +1 -1
  221. package/out/providers/strategies/LedgerProviderStrategy/helpers/getAuthTokenText.mjs +1 -1
  222. package/out/providers/strategies/LedgerProviderStrategy/helpers/getLedgerConfiguration.mjs +1 -1
  223. package/out/providers/strategies/LedgerProviderStrategy/helpers/getLedgerProvider.mjs +1 -1
  224. package/out/providers/strategies/LedgerProviderStrategy/helpers/getLedgerVersionOptions.mjs +1 -1
  225. package/out/providers/strategies/LedgerProviderStrategy/helpers/index.mjs +1 -1
  226. package/out/providers/strategies/LedgerProviderStrategy/helpers/initializeLedgerProvider.mjs +1 -1
  227. package/out/providers/strategies/LedgerProviderStrategy/helpers/signLedgerMessage.mjs +1 -1
  228. package/out/providers/strategies/LedgerProviderStrategy/helpers/updateAccountsList/index.mjs +1 -1
  229. package/out/providers/strategies/LedgerProviderStrategy/helpers/updateAccountsList/updateAccountsList.js +1 -1
  230. package/out/providers/strategies/LedgerProviderStrategy/helpers/updateAccountsList/updateAccountsList.js.map +1 -1
  231. package/out/providers/strategies/LedgerProviderStrategy/helpers/updateAccountsList/updateAccountsList.mjs +1 -1
  232. package/out/providers/strategies/LedgerProviderStrategy/index.mjs +1 -1
  233. package/out/providers/strategies/WalletConnectProviderStrategy/WalletConnectProviderStrategy.mjs +1 -1
  234. package/out/providers/strategies/WalletConnectProviderStrategy/index.mjs +1 -1
  235. package/out/providers/strategies/WebviewProviderStrategy/WebviewProviderStrategy.mjs +1 -1
  236. package/out/providers/strategies/WebviewProviderStrategy/index.mjs +1 -1
  237. package/out/providers/strategies/helpers/getPendingTransactionsHandlers.mjs +1 -1
  238. package/out/providers/strategies/helpers/index.mjs +1 -1
  239. package/out/providers/strategies/helpers/signMessage/signMessage.mjs +1 -1
  240. package/out/providers/strategies/helpers/signTransactions/helpers/calculateFeeLimit.mjs +1 -1
  241. package/out/providers/strategies/helpers/signTransactions/helpers/getCommonData/getCommonData.mjs +1 -1
  242. package/out/providers/strategies/helpers/signTransactions/helpers/getCommonData/helpers/decodeDataField.mjs +1 -1
  243. package/out/providers/strategies/helpers/signTransactions/helpers/getCommonData/helpers/getExtractTransactionsInfo.mjs +1 -1
  244. package/out/providers/strategies/helpers/signTransactions/helpers/getFeeData.mjs +1 -1
  245. package/out/providers/strategies/helpers/signTransactions/helpers/guardTransactions/guardTransactions.mjs +1 -1
  246. package/out/providers/strategies/helpers/signTransactions/signTransactions.mjs +1 -1
  247. package/out/providers/strategies/index.mjs +1 -1
  248. package/out/react/account/useGetAccount.mjs +1 -1
  249. package/out/react/account/useGetAccount.mjs.map +1 -1
  250. package/out/react/account/useGetAccountInfo.mjs +1 -1
  251. package/out/react/account/useGetAccountInfo.mjs.map +1 -1
  252. package/out/react/account/useGetIsLoggedIn.mjs +1 -1
  253. package/out/react/account/useGetIsLoggedIn.mjs.map +1 -1
  254. package/out/react/account/useGetLatestNonce.mjs +1 -1
  255. package/out/react/account/useGetLatestNonce.mjs.map +1 -1
  256. package/out/react/index.mjs +1 -1
  257. package/out/react/loginInfo/useGetLoginInfo.mjs +1 -1
  258. package/out/react/loginInfo/useGetLoginInfo.mjs.map +1 -1
  259. package/out/react/network/useGetNetworkConfig.d.ts +1 -1
  260. package/out/react/network/useGetNetworkConfig.js +1 -1
  261. package/out/react/network/useGetNetworkConfig.js.map +1 -1
  262. package/out/react/network/useGetNetworkConfig.mjs +1 -1
  263. package/out/react/network/useGetNetworkConfig.mjs.map +3 -3
  264. package/out/react/store/getReactStore.mjs +1 -1
  265. package/out/react/store/useSelector.mjs +1 -1
  266. package/out/react/transactions/useGetPendingTransactions.mjs +1 -1
  267. package/out/react/transactions/useGetPendingTransactions.mjs.map +1 -1
  268. package/out/react/transactions/useGetPendingTransactionsSessions.mjs +1 -1
  269. package/out/react/transactions/useGetPendingTransactionsSessions.mjs.map +1 -1
  270. package/out/react/transactions/useGetTransactionSessions.mjs +1 -1
  271. package/out/react/transactions/useGetTransactionSessions.mjs.map +1 -1
  272. package/out/services/index.mjs +1 -1
  273. package/out/services/nativeAuth/index.mjs +1 -1
  274. package/out/services/nativeAuth/methods/index.mjs +1 -1
  275. package/out/services/nativeAuth/nativeAuth.mjs +1 -1
  276. package/out/store/actions/account/accountActions.mjs +1 -1
  277. package/out/store/actions/account/index.mjs +1 -1
  278. package/out/store/actions/cache/cacheActions.mjs +1 -1
  279. package/out/store/actions/cache/index.mjs +1 -1
  280. package/out/store/actions/config/configActions.mjs +1 -1
  281. package/out/store/actions/config/index.mjs +1 -1
  282. package/out/store/actions/index.mjs +1 -1
  283. package/out/store/actions/loginInfo/loginInfoActions.mjs +1 -1
  284. package/out/store/actions/network/index.mjs +1 -1
  285. package/out/store/actions/network/initializeNetwork.mjs +1 -1
  286. package/out/store/actions/network/networkActions.mjs +1 -1
  287. package/out/store/actions/sharedActions/index.mjs +1 -1
  288. package/out/store/actions/sharedActions/sharedActions.mjs +1 -1
  289. package/out/store/actions/toasts/index.mjs +1 -1
  290. package/out/store/actions/toasts/toastsActions.mjs +1 -1
  291. package/out/store/actions/transactions/transactionsActions.mjs +1 -1
  292. package/out/store/actions/ui/index.mjs +1 -1
  293. package/out/store/actions/ui/uiActions.mjs +1 -1
  294. package/out/store/middleware/applyMiddlewares.mjs +1 -1
  295. package/out/store/middleware/index.mjs +1 -1
  296. package/out/store/middleware/logoutMiddleware.mjs +1 -1
  297. package/out/store/slices/index.mjs +1 -1
  298. package/out/store/storage/index.mjs +1 -1
  299. package/out/store/storage/storageCallback.js +2 -1
  300. package/out/store/storage/storageCallback.js.map +1 -1
  301. package/out/store/storage/storageCallback.mjs +1 -1
  302. package/out/store/store.mjs +1 -1
  303. package/out/types/index.d.ts +0 -1
  304. package/out/types/index.js +0 -1
  305. package/out/types/index.js.map +1 -1
  306. package/out/types/index.mjs +1 -1
  307. package/out/types/serverTransactions.types.d.ts +6 -6
  308. package/out/types/serverTransactions.types.mjs +1 -1
  309. package/out/utils/account/index.mjs +1 -1
  310. package/out/utils/account/refreshAccount.js +1 -1
  311. package/out/utils/account/refreshAccount.js.map +1 -1
  312. package/out/utils/account/refreshAccount.mjs +1 -1
  313. package/out/utils/createUIElement.mjs +1 -1
  314. package/out/utils/index.mjs +1 -1
  315. package/out/utils/transactions/getActiveTransactionsStatus.mjs +1 -1
  316. package/out/utils/transactions/getInterpretedTransaction/getInterpretedTransaction.mjs +1 -1
  317. package/out/utils/transactions/getInterpretedTransaction/getTransactionValue/constants.mjs +1 -1
  318. package/out/utils/transactions/getInterpretedTransaction/getTransactionValue/getTransactionValue.mjs +1 -1
  319. package/out/utils/transactions/getInterpretedTransaction/getTransactionValue/helpers/getValueFromOperations.mjs +1 -1
  320. package/out/utils/transactions/getInterpretedTransaction/getTransactionValue/helpers/getVisibleOperations.mjs +1 -1
  321. package/out/utils/transactions/getInterpretedTransaction/getTransactionValue/helpers/index.mjs +1 -1
  322. package/out/utils/transactions/getInterpretedTransaction/getTransactionValue/index.mjs +1 -1
  323. package/out/utils/transactions/getInterpretedTransaction/helpers/getLockedAccountName.mjs +1 -1
  324. package/out/utils/transactions/getInterpretedTransaction/helpers/getReceiptMessage.mjs +1 -1
  325. package/out/utils/transactions/getInterpretedTransaction/helpers/getShardText.mjs +1 -1
  326. package/out/utils/transactions/getInterpretedTransaction/helpers/getTransactionIconInfo.mjs +1 -1
  327. package/out/utils/transactions/getInterpretedTransaction/helpers/getTransactionMessages.mjs +1 -1
  328. package/out/utils/transactions/getInterpretedTransaction/helpers/getTransactionMethod.mjs +1 -1
  329. package/out/utils/transactions/getInterpretedTransaction/helpers/getTransactionTransferType.mjs +1 -1
  330. package/out/utils/transactions/getInterpretedTransaction/helpers/index.mjs +1 -1
  331. package/out/utils/transactions/getInterpretedTransaction/index.mjs +1 -1
  332. package/out/utils/transactions/getTransactionsHistory/getTransactionsHistory.mjs +1 -1
  333. package/out/utils/transactions/getTransactionsHistory/helpers/getCachedTransactionListItem.mjs +1 -1
  334. package/out/utils/transactions/getTransactionsHistory/helpers/getTransactionAsset.mjs +1 -1
  335. package/out/utils/transactions/getTransactionsHistory/helpers/index.mjs +1 -1
  336. package/out/utils/transactions/getTransactionsHistory/helpers/mapServerTransactionsToListItems.mjs +1 -1
  337. package/out/utils/transactions/getTransactionsHistory/helpers/mapTransactionToListItem.mjs +1 -1
  338. package/out/utils/transactions/getTransactionsHistory/index.mjs +1 -1
  339. package/out/utils/transactions/index.mjs +1 -1
  340. package/out/utils/validation/index.mjs +1 -1
  341. package/out/utils/validation/isContract.mjs +1 -1
  342. package/package.json +3 -3
  343. package/out/__chunks__/chunk-243OAHYD.mjs.map +0 -7
  344. package/out/__chunks__/chunk-3PAMS4NB.mjs +0 -2
  345. package/out/__chunks__/chunk-3PAMS4NB.mjs.map +0 -7
  346. package/out/__chunks__/chunk-45H34XLJ.mjs +0 -2
  347. package/out/__chunks__/chunk-4LEA6EXQ.mjs +0 -2
  348. package/out/__chunks__/chunk-4OO7HE5Q.mjs +0 -2
  349. package/out/__chunks__/chunk-53TM7EG4.mjs +0 -2
  350. package/out/__chunks__/chunk-53TM7EG4.mjs.map +0 -7
  351. package/out/__chunks__/chunk-57KVKSEC.mjs +0 -2
  352. package/out/__chunks__/chunk-57KVKSEC.mjs.map +0 -7
  353. package/out/__chunks__/chunk-5KRDLFR5.mjs +0 -2
  354. package/out/__chunks__/chunk-6746F2FY.mjs +0 -2
  355. package/out/__chunks__/chunk-BQL3NILA.mjs +0 -2
  356. package/out/__chunks__/chunk-BXKFACG5.mjs +0 -2
  357. package/out/__chunks__/chunk-CBIH5QMT.mjs +0 -2
  358. package/out/__chunks__/chunk-CO3V5DOG.mjs +0 -1
  359. package/out/__chunks__/chunk-EOCZROR3.mjs +0 -2
  360. package/out/__chunks__/chunk-IOKDBFGH.mjs +0 -2
  361. package/out/__chunks__/chunk-JO3DZYEB.mjs +0 -2
  362. package/out/__chunks__/chunk-LLMOP5KI.mjs +0 -2
  363. package/out/__chunks__/chunk-OOJVPJOX.mjs +0 -1
  364. package/out/__chunks__/chunk-OOJVPJOX.mjs.map +0 -7
  365. package/out/__chunks__/chunk-PLFZHJOX.mjs +0 -2
  366. package/out/__chunks__/chunk-RZ4YTKD7.mjs +0 -2
  367. package/out/__chunks__/chunk-RZ4YTKD7.mjs.map +0 -7
  368. package/out/__chunks__/chunk-TYG6E3LZ.mjs +0 -2
  369. package/out/__chunks__/chunk-UFMHCVBL.mjs +0 -2
  370. package/out/__chunks__/chunk-WGOZYG4T.mjs +0 -2
  371. package/out/__chunks__/chunk-WVTCO3AV.mjs +0 -2
  372. package/out/__chunks__/chunk-WVTCO3AV.mjs.map +0 -7
  373. package/out/__chunks__/chunk-YQTGKHGB.mjs +0 -2
  374. package/out/types/misc.types.d.ts +0 -1
  375. package/out/types/misc.types.js +0 -3
  376. package/out/types/misc.types.js.map +0 -1
  377. package/out/types/misc.types.mjs +0 -2
  378. package/out/types/misc.types.mjs.map +0 -7
  379. /package/out/__chunks__/{chunk-L2JWXTGG.mjs.map → chunk-2FTDMH6Y.mjs.map} +0 -0
  380. /package/out/__chunks__/{chunk-YQTGKHGB.mjs.map → chunk-2HY7DU3P.mjs.map} +0 -0
  381. /package/out/__chunks__/{chunk-PMPTCB44.mjs.map → chunk-2JBJKAGB.mjs.map} +0 -0
  382. /package/out/__chunks__/{chunk-BXKFACG5.mjs.map → chunk-2NQZJCCF.mjs.map} +0 -0
  383. /package/out/__chunks__/{chunk-AGI2ZR6R.mjs.map → chunk-2YTMWXHT.mjs.map} +0 -0
  384. /package/out/__chunks__/{chunk-4OO7HE5Q.mjs.map → chunk-4WXQHTVV.mjs.map} +0 -0
  385. /package/out/__chunks__/{chunk-PEDR76UT.mjs.map → chunk-53A5OCQC.mjs.map} +0 -0
  386. /package/out/__chunks__/{chunk-ENTPR3MV.mjs.map → chunk-5F57CS73.mjs.map} +0 -0
  387. /package/out/__chunks__/{chunk-LLMOP5KI.mjs.map → chunk-5IV2AU53.mjs.map} +0 -0
  388. /package/out/__chunks__/{chunk-CBIH5QMT.mjs.map → chunk-5XBGERHC.mjs.map} +0 -0
  389. /package/out/__chunks__/{chunk-EOCZROR3.mjs.map → chunk-62PJZCUP.mjs.map} +0 -0
  390. /package/out/__chunks__/{chunk-SVNWQXWC.mjs.map → chunk-66Z36IEX.mjs.map} +0 -0
  391. /package/out/__chunks__/{chunk-QI2QMNTG.mjs.map → chunk-6G4HQO6W.mjs.map} +0 -0
  392. /package/out/__chunks__/{chunk-R7SGL2HW.mjs.map → chunk-6RUKE4FM.mjs.map} +0 -0
  393. /package/out/__chunks__/{chunk-TYG6E3LZ.mjs.map → chunk-7EEGO5S4.mjs.map} +0 -0
  394. /package/out/__chunks__/{chunk-CO3V5DOG.mjs.map → chunk-AKDRHJVP.mjs.map} +0 -0
  395. /package/out/__chunks__/{chunk-M3C5NS6M.mjs.map → chunk-ASXWZ65B.mjs.map} +0 -0
  396. /package/out/__chunks__/{chunk-3OKWBJFM.mjs.map → chunk-B2RDSGON.mjs.map} +0 -0
  397. /package/out/__chunks__/{chunk-643LVXSN.mjs.map → chunk-BIVUIC53.mjs.map} +0 -0
  398. /package/out/__chunks__/{chunk-5KRDLFR5.mjs.map → chunk-BMAAIEFF.mjs.map} +0 -0
  399. /package/out/__chunks__/{chunk-GUHNF5RM.mjs.map → chunk-D2PIXNOV.mjs.map} +0 -0
  400. /package/out/__chunks__/{chunk-Y2GZNJKO.mjs.map → chunk-D7HA7LH7.mjs.map} +0 -0
  401. /package/out/__chunks__/{chunk-67X3ORNS.mjs.map → chunk-DCKHP6C2.mjs.map} +0 -0
  402. /package/out/__chunks__/{chunk-X7AQOVLN.mjs.map → chunk-DP7J3L4E.mjs.map} +0 -0
  403. /package/out/__chunks__/{chunk-CN4RHVUE.mjs.map → chunk-E6LAZEWZ.mjs.map} +0 -0
  404. /package/out/__chunks__/{chunk-YAXVLGG3.mjs.map → chunk-EGPVJE45.mjs.map} +0 -0
  405. /package/out/__chunks__/{chunk-LRKA4F33.mjs.map → chunk-EJ2HUG54.mjs.map} +0 -0
  406. /package/out/__chunks__/{chunk-I66YT2S2.mjs.map → chunk-FMUDQBZE.mjs.map} +0 -0
  407. /package/out/__chunks__/{chunk-HC5QPKZT.mjs.map → chunk-G34E3TZH.mjs.map} +0 -0
  408. /package/out/__chunks__/{chunk-JO3DZYEB.mjs.map → chunk-GZTIVASC.mjs.map} +0 -0
  409. /package/out/__chunks__/{chunk-WW4BBBLW.mjs.map → chunk-HO2VZQDC.mjs.map} +0 -0
  410. /package/out/__chunks__/{chunk-OSYFYAJA.mjs.map → chunk-HORNVUEE.mjs.map} +0 -0
  411. /package/out/__chunks__/{chunk-LD4NALNZ.mjs.map → chunk-HQO3R2IG.mjs.map} +0 -0
  412. /package/out/__chunks__/{chunk-LEVR7744.mjs.map → chunk-I4Q4TPMA.mjs.map} +0 -0
  413. /package/out/__chunks__/{chunk-DGXP3AZR.mjs.map → chunk-II6G5P3V.mjs.map} +0 -0
  414. /package/out/__chunks__/{chunk-X2JK27T3.mjs.map → chunk-INU7LP3O.mjs.map} +0 -0
  415. /package/out/__chunks__/{chunk-BQL3NILA.mjs.map → chunk-IXJIAULR.mjs.map} +0 -0
  416. /package/out/__chunks__/{chunk-YPNKNMW5.mjs.map → chunk-L2DBVSAK.mjs.map} +0 -0
  417. /package/out/__chunks__/{chunk-XCXU3BVP.mjs.map → chunk-LEVXXCB6.mjs.map} +0 -0
  418. /package/out/__chunks__/{chunk-IJX53ZJI.mjs.map → chunk-LGILKY4G.mjs.map} +0 -0
  419. /package/out/__chunks__/{chunk-DHSATBNM.mjs.map → chunk-LTUGEJO2.mjs.map} +0 -0
  420. /package/out/__chunks__/{chunk-VLHG5NVE.mjs.map → chunk-LWWYE4ZP.mjs.map} +0 -0
  421. /package/out/__chunks__/{chunk-PLFZHJOX.mjs.map → chunk-NERW4V4C.mjs.map} +0 -0
  422. /package/out/__chunks__/{chunk-7OTTISMZ.mjs.map → chunk-O2ZW3AB7.mjs.map} +0 -0
  423. /package/out/__chunks__/{chunk-WGOZYG4T.mjs.map → chunk-O4TATYJF.mjs.map} +0 -0
  424. /package/out/__chunks__/{chunk-ZIQFQWVJ.mjs.map → chunk-O65YGLZ6.mjs.map} +0 -0
  425. /package/out/__chunks__/{chunk-TFQFZ5M2.mjs.map → chunk-OCQ5EFO2.mjs.map} +0 -0
  426. /package/out/__chunks__/{chunk-UYUKTC4X.mjs.map → chunk-PHFBCDTP.mjs.map} +0 -0
  427. /package/out/__chunks__/{chunk-BTDFQCSV.mjs.map → chunk-PP3YTLDC.mjs.map} +0 -0
  428. /package/out/__chunks__/{chunk-JXO7XRIR.mjs.map → chunk-Q725VOSH.mjs.map} +0 -0
  429. /package/out/__chunks__/{chunk-Y3YLDFXK.mjs.map → chunk-QATZVKKG.mjs.map} +0 -0
  430. /package/out/__chunks__/{chunk-JGULQG2H.mjs.map → chunk-QE5C4A4D.mjs.map} +0 -0
  431. /package/out/__chunks__/{chunk-RCBOU6TT.mjs.map → chunk-QF6MS77T.mjs.map} +0 -0
  432. /package/out/__chunks__/{chunk-3IYQANTT.mjs.map → chunk-QOVOHGYN.mjs.map} +0 -0
  433. /package/out/__chunks__/{chunk-D4MNCAND.mjs.map → chunk-R46LJPYC.mjs.map} +0 -0
  434. /package/out/__chunks__/{chunk-672ZNZKR.mjs.map → chunk-SYI5Q5RY.mjs.map} +0 -0
  435. /package/out/__chunks__/{chunk-G7ZMNJIE.mjs.map → chunk-T6YNIMPO.mjs.map} +0 -0
  436. /package/out/__chunks__/{chunk-IOKDBFGH.mjs.map → chunk-TCGD3BK4.mjs.map} +0 -0
  437. /package/out/__chunks__/{chunk-ZLBHLHQ3.mjs.map → chunk-TF4RGU5H.mjs.map} +0 -0
  438. /package/out/__chunks__/{chunk-NM3KJ3EA.mjs.map → chunk-V4YY4ZE7.mjs.map} +0 -0
  439. /package/out/__chunks__/{chunk-WUAYFGWU.mjs.map → chunk-VDGMN7HP.mjs.map} +0 -0
  440. /package/out/__chunks__/{chunk-5WVAF7RB.mjs.map → chunk-VZYCT6ZP.mjs.map} +0 -0
  441. /package/out/__chunks__/{chunk-42KJRIAT.mjs.map → chunk-WCS37FJM.mjs.map} +0 -0
  442. /package/out/__chunks__/{chunk-SBQJGS63.mjs.map → chunk-WXXLQ6H7.mjs.map} +0 -0
  443. /package/out/__chunks__/{chunk-ZGNDECGJ.mjs.map → chunk-WZD36B2K.mjs.map} +0 -0
  444. /package/out/__chunks__/{chunk-YRIDJGOK.mjs.map → chunk-XGUWU5IO.mjs.map} +0 -0
  445. /package/out/__chunks__/{chunk-6746F2FY.mjs.map → chunk-XRPJSGL4.mjs.map} +0 -0
  446. /package/out/__chunks__/{chunk-45H34XLJ.mjs.map → chunk-XWQ5GB5Q.mjs.map} +0 -0
  447. /package/out/__chunks__/{chunk-7RX2A4WD.mjs.map → chunk-YAO67FPP.mjs.map} +0 -0
  448. /package/out/__chunks__/{chunk-ZK3OCDKZ.mjs.map → chunk-YMME53G7.mjs.map} +0 -0
  449. /package/out/__chunks__/{chunk-BJRGP56G.mjs.map → chunk-YWJNYZVU.mjs.map} +0 -0
  450. /package/out/__chunks__/{chunk-2HWIJ4CV.mjs.map → chunk-YZLY7QNI.mjs.map} +0 -0
  451. /package/out/__chunks__/{chunk-4LEA6EXQ.mjs.map → chunk-ZEUNADU7.mjs.map} +0 -0
package/README.md CHANGED
@@ -102,7 +102,7 @@ const config: InitAppType = {
102
102
  // nativeAuth: true, // optional
103
103
  environment: EnvironmentsEnum.devnet,
104
104
  // network: { // optional
105
- // walletAddress: 'https://devnet-wallet.multiversx.com'
105
+ // walletAddress: 'https://devnet-wallet.multiversx.com' // or other props you want to override
106
106
  // },
107
107
  successfulToastLifetime: 5000
108
108
  }
@@ -302,7 +302,7 @@ Once the user logs out of the dApp, all transactions displayed by the Notificati
302
302
 
303
303
  ```typescript
304
304
  const notificationManager = NotificationManager.getInstance();
305
- notificationManager.openNotificationsFeed();
305
+ await notificationManager.openNotificationsFeed();
306
306
  ```
307
307
 
308
308
  #### 4.4 Inspecting transactions
@@ -616,13 +616,78 @@ Object.entries(state).forEach(([sessionKey, data]) => {
616
616
 
617
617
  #### 5.1 Public components
618
618
 
619
- The public components are the ones that are used in the dApp and are controlled by the dApp. They are defined in the `@multiversx/sdk-dapp-ui` package.
619
+ The business logic for these components is served by a controller. The components are:
620
620
 
621
- // TODO: add examples
621
+ - `MvxTransactionsTable` - used to display the user's transactions
622
622
 
623
- #### 5.2 Internal components
623
+ ```tsx
624
+ import { TransactionsTableController } from '@multiversx/sdk-dapp/out/controllers/TransactionsTableController';
625
+ import { MvxTransactionsTable } from '@multiversx/sdk-dapp-ui/react';
626
+
627
+ const processedTransactions = await TransactionsTableController.processTransactions({
628
+ address,
629
+ egldLabel: network.egldLabel,
630
+ explorerAddress: network.explorerAddress,
631
+ transactions
632
+ });
633
+
634
+ // and use like this:
635
+ <MvxTransactionsTable transactions={processedTransaction} />;
636
+
637
+ ```
638
+
639
+ - `MvxFormatAmount` - used to format the amount of the user's balance
640
+
641
+
642
+ ```tsx
643
+ import { MvxFormatAmount } from '@multiversx/sdk-dapp-ui/react';
644
+ import { MvxFormatAmountPropsType } from '@multiversx/sdk-dapp-ui/types';
645
+ export { DECIMALS, DIGITS } from '@multiversx/sdk-dapp-utils/out/constants';
646
+ import { FormatAmountController } from '@multiversx/sdk-dapp/out/controllers/FormatAmountController';
647
+ export { useGetNetworkConfig } from '@multiversx/sdk-dapp/out/react/network/useGetNetworkConfig';
648
+
649
+
650
+ interface IFormatAmountProps
651
+ extends Partial<MvxFormatAmountPropsType> {
652
+ value: string;
653
+ className?: string;
654
+ }
655
+
656
+ export const FormatAmount = (props: IFormatAmountProps) => {
657
+ const {
658
+ network: { egldLabel }
659
+ } = useGetNetworkConfig();
660
+
661
+ const { isValid, valueDecimal, valueInteger, label } =
662
+ FormatAmountController.getData({
663
+ digits: DIGITS,
664
+ decimals: DECIMALS,
665
+ egldLabel,
666
+ ...props,
667
+ input: props.value
668
+ });
669
+
670
+ return (
671
+ <MvxFormatAmount
672
+ class={props.className}
673
+ dataTestId={props['data-testid']}
674
+ isValid={isValid}
675
+ label={label}
676
+ showLabel={props.showLabel}
677
+ valueDecimal={valueDecimal}
678
+ valueInteger={valueInteger}
679
+ />
680
+ );
681
+ };
682
+
683
+
684
+
685
+ ```
686
+
687
+
688
+ #### 5.2 Internal components (advanced usage)
624
689
 
625
- The way internal components are controlled are trough a [pub-sub pattern](https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern) called EventBus. Each webcomponent has a method of exposing its EventBus, thus allowing `sdk-dapp` to get a reference to it and use it for communication.
690
+ The way internal components are controlled is through a [pub-sub pattern](https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern) called EventBus. Each webcomponent has a method of exposing its EventBus, thus allowing `sdk-dapp` to get a reference to it and use it for communication.
626
691
 
627
692
  ```mermaid
628
693
  flowchart LR
@@ -1,2 +1,2 @@
1
- import{a as e}from"./chunk-PEDR76UT.mjs";import o from"axios";var n="transactions/ppu";async function l(a,s){let r=`${e(s)}/${n}/${a}`;try{let{data:t}=await o.get(r);return t?{[a]:{lastBlock:t.lastBlock,fast:t.fast,faster:t.faster}}:null}catch(t){return console.error("Error fetching gas station metadata from:",r,t),null}}export{l as a};
2
- //# sourceMappingURL=chunk-L2JWXTGG.mjs.map
1
+ import{a as e}from"./chunk-53A5OCQC.mjs";import o from"axios";var n="transactions/ppu";async function l(a,s){let r=`${e(s)}/${n}/${a}`;try{let{data:t}=await o.get(r);return t?{[a]:{lastBlock:t.lastBlock,fast:t.fast,faster:t.faster}}:null}catch(t){return console.error("Error fetching gas station metadata from:",r,t),null}}export{l as a};
2
+ //# sourceMappingURL=chunk-2FTDMH6Y.mjs.map
@@ -0,0 +1,2 @@
1
+ import{u as o}from"./chunk-E6LAZEWZ.mjs";import{b as t}from"./chunk-LTF535HP.mjs";function c(r=o()){return t(r)}export{c as a};
2
+ //# sourceMappingURL=chunk-2HY7DU3P.mjs.map
@@ -1,2 +1,2 @@
1
- import{a as I}from"./chunk-5AR7YU5K.mjs";import{a as l}from"./chunk-IOKDBFGH.mjs";import{a as f}from"./chunk-4OO7HE5Q.mjs";import{j as T,k as m,l as d,n as p}from"./chunk-65L5EBBL.mjs";import{a as u}from"./chunk-Y3YLDFXK.mjs";var q=async({toastList:S,transactionsSessions:g,account:o,existingCompletedTransactions:y=[]})=>{let n=[],a=[...y],r=f(),F=l();for(let t of S.transactionToasts){let e=g[t.toastId];if(!e?.status)continue;let{status:s,transactions:C,transactionsDisplayInfo:P}=e,x=await u({transactions:C,address:o.address,explorerAddress:r,egldLabel:F}),A=p(s),E=d(s),L=m(s),i=A||E||L,v=T(s),{startTime:R,endTime:b}=t;if(i&&a.some(h=>h.toastId===t.toastId))continue;let c=I({toastId:t.toastId,address:o.address,status:s,transactions:x,transactionsDisplayInfo:P,explorerAddress:r,startTime:R,endTime:b});i&&a.push(c),v&&n.push(c)}return{pendingTransactionToasts:n,completedTransactionToasts:a}};export{q as a};
2
- //# sourceMappingURL=chunk-PMPTCB44.mjs.map
1
+ import{a as I}from"./chunk-5AR7YU5K.mjs";import{a as l}from"./chunk-TCGD3BK4.mjs";import{a as f}from"./chunk-4WXQHTVV.mjs";import{j as T,k as m,l as d,n as p}from"./chunk-65L5EBBL.mjs";import{a as u}from"./chunk-QATZVKKG.mjs";var q=async({toastList:S,transactionsSessions:g,account:o,existingCompletedTransactions:y=[]})=>{let n=[],a=[...y],r=f(),F=l();for(let t of S.transactionToasts){let e=g[t.toastId];if(!e?.status)continue;let{status:s,transactions:C,transactionsDisplayInfo:P}=e,x=await u({transactions:C,address:o.address,explorerAddress:r,egldLabel:F}),A=p(s),E=d(s),L=m(s),i=A||E||L,v=T(s),{startTime:R,endTime:b}=t;if(i&&a.some(h=>h.toastId===t.toastId))continue;let c=I({toastId:t.toastId,address:o.address,status:s,transactions:x,transactionsDisplayInfo:P,explorerAddress:r,startTime:R,endTime:b});i&&a.push(c),v&&n.push(c)}return{pendingTransactionToasts:n,completedTransactionToasts:a}};export{q as a};
2
+ //# sourceMappingURL=chunk-2JBJKAGB.mjs.map
@@ -0,0 +1,2 @@
1
+ import{s as n}from"./chunk-E6LAZEWZ.mjs";import{b as t}from"./chunk-UTWIKUIK.mjs";var c=a=>t(`transaction-${a}`)(n().getState())??null;export{c as a};
2
+ //# sourceMappingURL=chunk-2NQZJCCF.mjs.map
@@ -1,2 +1,2 @@
1
- import{a as M}from"./chunk-JO3DZYEB.mjs";import{a as T}from"./chunk-PMPTCB44.mjs";import{a as O}from"./chunk-XCXU3BVP.mjs";import{a as F}from"./chunk-SVNWQXWC.mjs";import{a as g,b as v,d as b,e as C,g as I,h as N}from"./chunk-57KVKSEC.mjs";import{d as E}from"./chunk-AGI2ZR6R.mjs";import{k as l,l as d,n as f}from"./chunk-65L5EBBL.mjs";import{s as c}from"./chunk-CN4RHVUE.mjs";import{a as S}from"./chunk-YMME2BFO.mjs";import p from"lodash.isequal";import A from"lodash.isequal";var L="NOTIFICATIONS_FEED_STORE_SUBSCRIBE",u=class n extends F{constructor(){super({uiDataUpdateEvent:"OPEN_NOTIFICATIONS_FEED",uiTag:"mvx-notifications-feed"});this.store=c();this.initialData={pendingTransactions:[],historicTransactions:[]};this.data={...this.initialData}}static getInstance(){return n.instance||(n.instance=new n),n.instance}isNotificationsFeedOpen(){return this.isOpen}async openNotificationsFeed(){r.getInstance().hideToasts(),await this.openUI(),await this.updateDataAndNotifications();let i=this.store.subscribe(async({toasts:a,transactions:e},{toasts:o,transactions:h})=>{(!A(o.transactionToasts,a.transactionToasts)||!A(h,e))&&await this.updateDataAndNotifications()});this.unsubscribeFunctions.set(L,[i]),this.eventBus?.publish("OPEN_NOTIFICATIONS_FEED"),await this.updateDataAndNotifications()}handleCloseUI(){let s=r.getInstance();this.closeUI(),s.showToasts()}async setupEventListeners(){this.eventBus&&(this.subscribeToEventBus("CLOSE_NOTIFICATIONS_FEED",this.handleCloseUI.bind(this)),this.subscribeToEventBus("CLEAR_NOTIFICATIONS_FEED_HISTORY",this.handleClearNotificationsFeedHistory.bind(this)))}async updateDataAndNotifications(){let{transactions:s,account:i,toasts:a,network:e}=this.store.getState(),{pendingTransactionToasts:o}=await T({toastList:a,transactionsSessions:s,account:i});this.data.pendingTransactions=o,this.data.historicTransactions=await M.getTransactionsHistory({transactionsSessions:s,address:i.address,explorerAddress:e.network.explorerAddress,egldLabel:e.network.egldLabel}),await this.updateNotificationsFeed()}handleClearNotificationsFeedHistory(){E(),this.resetData(),this.updateNotificationsFeed()}async updateNotificationsFeed(){this.eventBus&&(this.eventBus.publish("PENDING_TRANSACTIONS_UPDATE",this.data.pendingTransactions),this.eventBus.publish("TRANSACTIONS_HISTORY_UPDATE",this.data.historicTransactions))}};var r=class n{constructor(){this.isCreatingElement=!1;this.toastsElement=null;this.transactionToasts=[];this.customToasts=[];this.storeToastsSubscription=()=>null;this.eventBusUnsubscribeFunctions=[];this.eventBus=null;this.store=c();this.destroy(),this.lifetimeManager=new O,this.notificationsFeedManager=u.getInstance()}async init({successfulToastLifetime:t}={}){this.successfulToastLifetime=t,this.lifetimeManager.init({successfulToastLifetime:t}),this.updateTransactionToastsList(),this.updateCustomToastList(),await this.subscribeToEventBusNotifications(),this.storeToastsSubscription=this.store.subscribe(({toasts:s,transactions:i},{toasts:a,transactions:e})=>{(!p(a.transactionToasts,s.transactionToasts)||!p(e,i))&&this.updateTransactionToastsList(),p(a.customToasts,s.customToasts)||this.updateCustomToastList()})}static getInstance(){return n.instance||(n.instance=new n),n.instance}handleCompletedTransaction(t){let{transactions:s}=this.store.getState(),i=s[t];if(!i)return!1;let{status:a}=i,e=f(a),o=d(a),h=l(a),m=o||h||e;return m?(this.successfulToastLifetime&&this.lifetimeManager.start(t),m):(this.lifetimeManager.stop(t),m)}createTransactionToast(t,s){I({toastId:t,totalDuration:s}),this.handleCompletedTransaction(t),this.updateTransactionToastsList()}async updateTransactionToastsList(){let{toasts:t,transactions:s,account:i}=this.store.getState(),{pendingTransactionToasts:a,completedTransactionToasts:e}=await T({toastList:t,transactionsSessions:s,account:i});this.transactionToasts=[...a,...e];for(let o of t.transactionToasts)this.handleCompletedTransaction(o.toastId);await this.publishTransactionToasts()}async updateCustomToastList(){let{toasts:t}=this.store.getState();this.customToasts=[];for(let s of t.customToasts){let a="message"in s?{...s}:{...s,instantiateToastElement:g[s.toastId]};this.customToasts.push(a),s.duration&&this.lifetimeManager.startWithCustomDuration(s.toastId,s.duration)}this.eventBus?.publish("CUSTOM_TOAST_DATA_UPDATE",this.customToasts)}async createToastListElement(){return this.toastsElement?this.toastsElement:(this.isCreatingElement||(this.isCreatingElement=!0,this.toastsElement=await S({name:"mvx-toast-list"}),this.isCreatingElement=!1),this.toastsElement)}handleTransactionToastClose(t){this.handleCompletedTransaction(t)&&N(t)}async subscribeToEventBusNotifications(){let t=await this.createToastListElement();if(t){if(this.eventBus=await t.getEventBus(),!this.eventBus)throw new Error("eventBus is not initialized");this.eventBus.subscribe("CLOSE_TOAST",this.handleCloseToast.bind(this)),this.eventBusUnsubscribeFunctions.push(()=>{this.eventBus?.unsubscribe("CLOSE_TOAST",this.handleCloseToast.bind(this))}),this.eventBus.subscribe("OPEN_NOTIFICATIONS_FEED",this.handleOpenNotificationsFeed.bind(this)),this.eventBusUnsubscribeFunctions.push(()=>{this.eventBus?.unsubscribe("OPEN_NOTIFICATIONS_FEED",this.handleOpenNotificationsFeed.bind(this))})}}showToasts(){this.updateCustomToastList(),this.updateTransactionToastsList()}hideToasts(){this.transactionToasts=[],this.customToasts=[],this.eventBus?.publish("TRANSACTION_TOAST_DATA_UPDATE",this.transactionToasts),this.eventBus?.publish("CUSTOM_TOAST_DATA_UPDATE",this.customToasts)}async handleOpenNotificationsFeed(){this.notificationsFeedManager.openNotificationsFeed()}handleCloseToast(t){if(this.customToasts.find(i=>i.toastId===t)){this.lifetimeManager.stop(t);let i=v[t];i?.(),b(t);return}this.handleTransactionToastClose(t)}async publishTransactionToasts(){if(!this.notificationsFeedManager.isNotificationsFeedOpen()){if(!this.eventBus){let t=await this.createToastListElement();if(!t)return;this.eventBus=await t.getEventBus()}this.eventBus.publish("TRANSACTION_TOAST_DATA_UPDATE",this.transactionToasts)}}destroy(){this.storeToastsSubscription(),this.lifetimeManager?.destroy(),this.notificationsFeedManager?.destroy(),C(),this.eventBusUnsubscribeFunctions.forEach(t=>t()),this.eventBusUnsubscribeFunctions=[]}};export{u as a,r as b};
2
- //# sourceMappingURL=chunk-XKTDOIMV.mjs.map
1
+ import{a as M}from"./chunk-GZTIVASC.mjs";import{a as T}from"./chunk-2JBJKAGB.mjs";import{a as O}from"./chunk-LEVXXCB6.mjs";import{a as F}from"./chunk-66Z36IEX.mjs";import{a as g,b as v,d as b,e as C,g as I,h as N}from"./chunk-4LFIRWUJ.mjs";import{d as E}from"./chunk-2YTMWXHT.mjs";import{k as l,l as d,n as f}from"./chunk-65L5EBBL.mjs";import{s as c}from"./chunk-E6LAZEWZ.mjs";import{a as S}from"./chunk-YMME2BFO.mjs";import p from"lodash.isequal";import A from"lodash.isequal";var L="NOTIFICATIONS_FEED_STORE_SUBSCRIBE",u=class n extends F{constructor(){super({uiDataUpdateEvent:"OPEN_NOTIFICATIONS_FEED",uiTag:"mvx-notifications-feed"});this.store=c();this.initialData={pendingTransactions:[],historicTransactions:[]};this.data={...this.initialData}}static getInstance(){return n.instance||(n.instance=new n),n.instance}isNotificationsFeedOpen(){return this.isOpen}async openNotificationsFeed(){r.getInstance().hideToasts(),await this.openUI(),await this.updateDataAndNotifications();let i=this.store.subscribe(async({toasts:a,transactions:e},{toasts:o,transactions:h})=>{(!A(o.transactionToasts,a.transactionToasts)||!A(h,e))&&await this.updateDataAndNotifications()});this.unsubscribeFunctions.set(L,[i]),this.eventBus?.publish("OPEN_NOTIFICATIONS_FEED"),await this.updateDataAndNotifications()}handleCloseUI(){let s=r.getInstance();this.closeUI(),s.showToasts()}async setupEventListeners(){this.eventBus&&(this.subscribeToEventBus("CLOSE_NOTIFICATIONS_FEED",this.handleCloseUI.bind(this)),this.subscribeToEventBus("CLEAR_NOTIFICATIONS_FEED_HISTORY",this.handleClearNotificationsFeedHistory.bind(this)))}async updateDataAndNotifications(){let{transactions:s,account:i,toasts:a,network:e}=this.store.getState(),{pendingTransactionToasts:o}=await T({toastList:a,transactionsSessions:s,account:i});this.data.pendingTransactions=o,this.data.historicTransactions=await M.getTransactionsHistory({transactionsSessions:s,address:i.address,explorerAddress:e.network.explorerAddress,egldLabel:e.network.egldLabel}),await this.updateNotificationsFeed()}handleClearNotificationsFeedHistory(){E(),this.resetData(),this.updateNotificationsFeed()}async updateNotificationsFeed(){this.eventBus&&(this.eventBus.publish("PENDING_TRANSACTIONS_UPDATE",this.data.pendingTransactions),this.eventBus.publish("TRANSACTIONS_HISTORY_UPDATE",this.data.historicTransactions))}};var r=class n{constructor(){this.isCreatingElement=!1;this.toastsElement=null;this.transactionToasts=[];this.customToasts=[];this.storeToastsSubscription=()=>null;this.eventBusUnsubscribeFunctions=[];this.eventBus=null;this.store=c();this.destroy(),this.lifetimeManager=new O,this.notificationsFeedManager=u.getInstance()}async init({successfulToastLifetime:t}={}){this.successfulToastLifetime=t,this.lifetimeManager.init({successfulToastLifetime:t}),this.updateTransactionToastsList(),this.updateCustomToastList(),await this.subscribeToEventBusNotifications(),this.storeToastsSubscription=this.store.subscribe(({toasts:s,transactions:i},{toasts:a,transactions:e})=>{(!p(a.transactionToasts,s.transactionToasts)||!p(e,i))&&this.updateTransactionToastsList(),p(a.customToasts,s.customToasts)||this.updateCustomToastList()})}static getInstance(){return n.instance||(n.instance=new n),n.instance}handleCompletedTransaction(t){let{transactions:s}=this.store.getState(),i=s[t];if(!i)return!1;let{status:a}=i,e=f(a),o=d(a),h=l(a),m=o||h||e;return m?(this.successfulToastLifetime&&this.lifetimeManager.start(t),m):(this.lifetimeManager.stop(t),m)}createTransactionToast(t,s){I({toastId:t,totalDuration:s}),this.handleCompletedTransaction(t),this.updateTransactionToastsList()}async updateTransactionToastsList(){let{toasts:t,transactions:s,account:i}=this.store.getState(),{pendingTransactionToasts:a,completedTransactionToasts:e}=await T({toastList:t,transactionsSessions:s,account:i});this.transactionToasts=[...a,...e];for(let o of t.transactionToasts)this.handleCompletedTransaction(o.toastId);await this.publishTransactionToasts()}async updateCustomToastList(){let{toasts:t}=this.store.getState();this.customToasts=[];for(let s of t.customToasts){let a="message"in s?{...s}:{...s,instantiateToastElement:g[s.toastId]};this.customToasts.push(a),s.duration&&this.lifetimeManager.startWithCustomDuration(s.toastId,s.duration)}this.eventBus?.publish("CUSTOM_TOAST_DATA_UPDATE",this.customToasts)}async createToastListElement(){return this.toastsElement?this.toastsElement:(this.isCreatingElement||(this.isCreatingElement=!0,this.toastsElement=await S({name:"mvx-toast-list"}),this.isCreatingElement=!1),this.toastsElement)}handleTransactionToastClose(t){this.handleCompletedTransaction(t)&&N(t)}async subscribeToEventBusNotifications(){let t=await this.createToastListElement();if(t){if(this.eventBus=await t.getEventBus(),!this.eventBus)throw new Error("eventBus is not initialized");this.eventBus.subscribe("CLOSE_TOAST",this.handleCloseToast.bind(this)),this.eventBusUnsubscribeFunctions.push(()=>{this.eventBus?.unsubscribe("CLOSE_TOAST",this.handleCloseToast.bind(this))}),this.eventBus.subscribe("OPEN_NOTIFICATIONS_FEED",this.handleOpenNotificationsFeed.bind(this)),this.eventBusUnsubscribeFunctions.push(()=>{this.eventBus?.unsubscribe("OPEN_NOTIFICATIONS_FEED",this.handleOpenNotificationsFeed.bind(this))})}}showToasts(){this.updateCustomToastList(),this.updateTransactionToastsList()}hideToasts(){this.transactionToasts=[],this.customToasts=[],this.eventBus?.publish("TRANSACTION_TOAST_DATA_UPDATE",this.transactionToasts),this.eventBus?.publish("CUSTOM_TOAST_DATA_UPDATE",this.customToasts)}async handleOpenNotificationsFeed(){this.notificationsFeedManager.openNotificationsFeed()}handleCloseToast(t){if(this.customToasts.find(i=>i.toastId===t)){this.lifetimeManager.stop(t);let i=v[t];i?.(),b(t);return}this.handleTransactionToastClose(t)}async publishTransactionToasts(){if(!this.notificationsFeedManager.isNotificationsFeedOpen()){if(!this.eventBus){let t=await this.createToastListElement();if(!t)return;this.eventBus=await t.getEventBus()}this.eventBus.publish("TRANSACTION_TOAST_DATA_UPDATE",this.transactionToasts)}}destroy(){this.storeToastsSubscription(),this.lifetimeManager?.destroy(),this.notificationsFeedManager?.destroy(),C(),this.eventBusUnsubscribeFunctions.forEach(t=>t()),this.eventBusUnsubscribeFunctions=[]}};export{u as a,r as b};
2
+ //# sourceMappingURL=chunk-2UEEEYRT.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/managers/internal/ToastManager/ToastManager.ts", "../../src/managers/NotificationsFeedManager/NotificationsFeedManager.ts"],
4
- "sourcesContent": ["import isEqual from 'lodash.isequal';\nimport { UITagsEnum } from 'constants/UITags.enum';\nimport { MvxToastList } from 'lib/sdkDappUi';\nimport { NotificationsFeedManager } from 'managers/NotificationsFeedManager/NotificationsFeedManager';\nimport {\n customToastCloseHandlersDictionary,\n customToastComponentDictionary,\n removeAllCustomToasts,\n removeCustomToast,\n removeTransactionToast,\n addTransactionToast\n} from 'store/actions/toasts/toastsActions';\nimport {\n getIsTransactionFailed,\n getIsTransactionSuccessful,\n getIsTransactionTimedOut\n} from 'store/actions/transactions/transactionStateByStatus';\n\nimport { CustomToastType } from 'store/slices/toast/toastSlice.types';\nimport { getStore } from 'store/store';\nimport { IEventBus } from 'types/manager.types';\nimport { ProviderErrorsEnum } from 'types/provider.types';\nimport { createUIElement } from 'utils/createUIElement';\nimport { createToastsFromTransactions } from './helpers/createToastsFromTransactions';\nimport { LifetimeManager } from './helpers/LifetimeManager';\nimport { ITransactionToast, ToastEventsEnum } from './types';\n\ninterface IToastManager {\n successfulToastLifetime?: number;\n}\n\nexport class ToastManager {\n private lifetimeManager: LifetimeManager;\n private isCreatingElement = false;\n private static instance: ToastManager;\n private toastsElement: MvxToastList | null = null;\n private transactionToasts: ITransactionToast[] = [];\n private customToasts: CustomToastType[] = [];\n private successfulToastLifetime?: number;\n private storeToastsSubscription: () => void = () => null;\n private notificationsFeedManager: NotificationsFeedManager;\n private eventBusUnsubscribeFunctions: (() => void)[] = [];\n private eventBus: IEventBus<ITransactionToast[] | CustomToastType[]> | null =\n null;\n\n store = getStore();\n\n constructor() {\n this.destroy();\n this.lifetimeManager = new LifetimeManager();\n\n this.notificationsFeedManager = NotificationsFeedManager.getInstance();\n }\n\n public async init({ successfulToastLifetime }: IToastManager = {}) {\n this.successfulToastLifetime = successfulToastLifetime;\n\n this.lifetimeManager.init({ successfulToastLifetime });\n\n this.updateTransactionToastsList();\n this.updateCustomToastList();\n await this.subscribeToEventBusNotifications();\n\n this.storeToastsSubscription = this.store.subscribe(\n (\n { toasts, transactions },\n { toasts: prevToasts, transactions: prevTransactions }\n ) => {\n if (\n !isEqual(prevToasts.transactionToasts, toasts.transactionToasts) ||\n !isEqual(prevTransactions, transactions)\n ) {\n this.updateTransactionToastsList();\n }\n\n if (!isEqual(prevToasts.customToasts, toasts.customToasts)) {\n this.updateCustomToastList();\n }\n }\n );\n }\n\n public static getInstance(): ToastManager {\n if (!ToastManager.instance) {\n ToastManager.instance = new ToastManager();\n }\n return ToastManager.instance;\n }\n\n private handleCompletedTransaction(toastId: string): boolean {\n const { transactions } = this.store.getState();\n const transaction = transactions[toastId];\n\n if (!transaction) {\n return false;\n }\n\n const { status } = transaction;\n const isTimedOut = getIsTransactionTimedOut(status);\n const isFailed = getIsTransactionFailed(status);\n const isSuccessful = getIsTransactionSuccessful(status);\n const isCompleted = isFailed || isSuccessful || isTimedOut;\n\n if (isCompleted) {\n if (this.successfulToastLifetime) {\n this.lifetimeManager.start(toastId);\n }\n return isCompleted;\n }\n\n this.lifetimeManager.stop(toastId);\n return isCompleted;\n }\n\n public createTransactionToast(toastId: string, totalDuration: number) {\n addTransactionToast({\n toastId,\n totalDuration\n });\n\n this.handleCompletedTransaction(toastId);\n this.updateTransactionToastsList();\n }\n\n private async updateTransactionToastsList() {\n const {\n toasts: toastList,\n transactions: transactionsSessions,\n account\n } = this.store.getState();\n\n const { pendingTransactionToasts, completedTransactionToasts } =\n await createToastsFromTransactions({\n toastList,\n transactionsSessions,\n account\n });\n\n this.transactionToasts = [\n ...pendingTransactionToasts,\n ...completedTransactionToasts\n ];\n\n for (const toast of toastList.transactionToasts) {\n this.handleCompletedTransaction(toast.toastId);\n }\n\n await this.publishTransactionToasts();\n }\n\n private async updateCustomToastList() {\n const { toasts: toastList } = this.store.getState();\n this.customToasts = [];\n\n for (const toast of toastList.customToasts) {\n const isSimpleToast = 'message' in toast;\n\n const newToast: CustomToastType = isSimpleToast\n ? { ...toast }\n : {\n ...toast,\n instantiateToastElement:\n customToastComponentDictionary[toast.toastId]\n };\n this.customToasts.push(newToast);\n\n if (toast.duration) {\n this.lifetimeManager.startWithCustomDuration(\n toast.toastId,\n toast.duration\n );\n }\n }\n this.eventBus?.publish(\n ToastEventsEnum.CUSTOM_TOAST_DATA_UPDATE,\n this.customToasts\n );\n }\n\n private async createToastListElement(): Promise<MvxToastList | null> {\n if (this.toastsElement) {\n return this.toastsElement;\n }\n\n if (!this.isCreatingElement) {\n this.isCreatingElement = true;\n\n this.toastsElement = await createUIElement<MvxToastList>({\n name: UITagsEnum.TOAST_LIST\n });\n\n this.isCreatingElement = false;\n }\n\n return this.toastsElement;\n }\n\n private handleTransactionToastClose(toastId: string) {\n const isCompleted = this.handleCompletedTransaction(toastId);\n\n if (isCompleted) {\n removeTransactionToast(toastId);\n }\n }\n\n private async subscribeToEventBusNotifications() {\n const toastsElement = await this.createToastListElement();\n if (!toastsElement) {\n return;\n }\n\n this.eventBus = await toastsElement.getEventBus();\n if (!this.eventBus) {\n throw new Error(ProviderErrorsEnum.eventBusError);\n }\n\n this.eventBus.subscribe(\n ToastEventsEnum.CLOSE,\n this.handleCloseToast.bind(this)\n );\n\n this.eventBusUnsubscribeFunctions.push(() => {\n this.eventBus?.unsubscribe(\n ToastEventsEnum.CLOSE,\n this.handleCloseToast.bind(this)\n );\n });\n\n this.eventBus.subscribe(\n ToastEventsEnum.OPEN_NOTIFICATIONS_FEED,\n this.handleOpenNotificationsFeed.bind(this)\n );\n\n this.eventBusUnsubscribeFunctions.push(() => {\n this.eventBus?.unsubscribe(\n ToastEventsEnum.OPEN_NOTIFICATIONS_FEED,\n this.handleOpenNotificationsFeed.bind(this)\n );\n });\n }\n\n public showToasts() {\n this.updateCustomToastList();\n this.updateTransactionToastsList();\n }\n\n public hideToasts() {\n this.transactionToasts = [];\n this.customToasts = [];\n this.eventBus?.publish(\n ToastEventsEnum.TRANSACTION_TOAST_DATA_UPDATE,\n this.transactionToasts\n );\n this.eventBus?.publish(\n ToastEventsEnum.CUSTOM_TOAST_DATA_UPDATE,\n this.customToasts\n );\n }\n\n private async handleOpenNotificationsFeed() {\n this.notificationsFeedManager.openNotificationsFeed();\n }\n\n private handleCloseToast(toastId: string) {\n const customToast = this.customToasts.find(\n (toast) => toast.toastId === toastId\n );\n\n if (customToast) {\n this.lifetimeManager.stop(toastId);\n const handleClose = customToastCloseHandlersDictionary[toastId];\n handleClose?.();\n removeCustomToast(toastId);\n return;\n }\n\n this.handleTransactionToastClose(toastId);\n }\n\n private async publishTransactionToasts() {\n if (this.notificationsFeedManager.isNotificationsFeedOpen()) {\n return;\n }\n\n if (!this.eventBus) {\n const toastsElement = await this.createToastListElement();\n\n if (!toastsElement) {\n return;\n }\n\n this.eventBus = await toastsElement.getEventBus();\n }\n\n this.eventBus.publish(\n ToastEventsEnum.TRANSACTION_TOAST_DATA_UPDATE,\n this.transactionToasts\n );\n }\n\n public destroy() {\n this.storeToastsSubscription();\n this.lifetimeManager?.destroy();\n this.notificationsFeedManager?.destroy();\n removeAllCustomToasts();\n this.eventBusUnsubscribeFunctions.forEach((unsubscribe) => unsubscribe());\n this.eventBusUnsubscribeFunctions = [];\n }\n}\n", "import isEqual from 'lodash.isequal';\nimport { UITagsEnum } from 'constants/UITags.enum';\nimport { TransactionsHistoryController } from 'controllers/TransactionsHistoryController';\nimport { ITransactionListItem, MvxNotificationsFeed } from 'lib/sdkDappUi';\nimport { clearCompletedTransactions } from 'store/actions/transactions/transactionsActions';\nimport { getStore } from 'store/store';\nimport { NotificationsFeedEventsEnum } from './types';\nimport { ToastManager } from '../internal';\nimport { SidePanelBaseManager } from '../internal/SidePanelBaseManager/SidePanelBaseManager';\nimport { createToastsFromTransactions } from '../internal/ToastManager/helpers/createToastsFromTransactions';\nimport { ITransactionToast } from '../internal/ToastManager/types';\n\ninterface INotificationsFeedManagerData {\n pendingTransactions: ITransactionToast[];\n historicTransactions: ITransactionListItem[];\n}\n\nconst NOTIFICATIONS_FEED_STORE_SUBSCRIBE = 'NOTIFICATIONS_FEED_STORE_SUBSCRIBE';\n\nexport class NotificationsFeedManager extends SidePanelBaseManager<\n MvxNotificationsFeed,\n INotificationsFeedManagerData,\n NotificationsFeedEventsEnum | typeof NOTIFICATIONS_FEED_STORE_SUBSCRIBE\n> {\n private static instance: NotificationsFeedManager;\n private readonly store = getStore();\n\n protected initialData: INotificationsFeedManagerData = {\n pendingTransactions: [],\n historicTransactions: []\n };\n\n public static getInstance(): NotificationsFeedManager {\n if (!NotificationsFeedManager.instance) {\n NotificationsFeedManager.instance = new NotificationsFeedManager();\n }\n return NotificationsFeedManager.instance;\n }\n\n constructor() {\n super({\n uiDataUpdateEvent: NotificationsFeedEventsEnum.OPEN,\n uiTag: UITagsEnum.NOTIFICATIONS_FEED\n });\n this.data = { ...this.initialData };\n }\n\n public isNotificationsFeedOpen(): boolean {\n return this.isOpen;\n }\n\n // open Notifications feed and toggeling ToastManager\n public async openNotificationsFeed() {\n const toastManager = ToastManager.getInstance();\n toastManager.hideToasts();\n await this.openUI();\n await this.updateDataAndNotifications();\n\n const storeToastsUnsubscribe = this.store.subscribe(\n async (\n { toasts, transactions },\n { toasts: prevToasts, transactions: prevTransactions }\n ) => {\n if (\n !isEqual(prevToasts.transactionToasts, toasts.transactionToasts) ||\n !isEqual(prevTransactions, transactions)\n ) {\n await this.updateDataAndNotifications();\n }\n }\n );\n this.unsubscribeFunctions.set(NOTIFICATIONS_FEED_STORE_SUBSCRIBE, [\n storeToastsUnsubscribe\n ]);\n\n this.eventBus?.publish(NotificationsFeedEventsEnum.OPEN);\n await this.updateDataAndNotifications();\n }\n\n // closing Notifications feed and toggeling ToastManager\n protected handleCloseUI() {\n const toastManager = ToastManager.getInstance();\n this.closeUI();\n toastManager.showToasts();\n }\n\n protected async setupEventListeners() {\n if (!this.eventBus) {\n return;\n }\n\n this.subscribeToEventBus(\n NotificationsFeedEventsEnum.CLOSE,\n this.handleCloseUI.bind(this)\n );\n\n this.subscribeToEventBus(\n NotificationsFeedEventsEnum.CLEAR,\n this.handleClearNotificationsFeedHistory.bind(this)\n );\n }\n\n protected async updateDataAndNotifications() {\n const { transactions, account, toasts, network } = this.store.getState();\n\n const { pendingTransactionToasts } = await createToastsFromTransactions({\n toastList: toasts,\n transactionsSessions: transactions,\n account\n });\n\n this.data.pendingTransactions = pendingTransactionToasts;\n\n this.data.historicTransactions =\n await TransactionsHistoryController.getTransactionsHistory({\n transactionsSessions: transactions,\n address: account.address,\n explorerAddress: network.network.explorerAddress,\n egldLabel: network.network.egldLabel\n });\n\n await this.updateNotificationsFeed();\n }\n\n private handleClearNotificationsFeedHistory() {\n clearCompletedTransactions();\n this.resetData();\n this.updateNotificationsFeed();\n }\n\n private async updateNotificationsFeed() {\n if (!this.eventBus) {\n return;\n }\n\n this.eventBus.publish(\n NotificationsFeedEventsEnum.PENDING_TRANSACTIONS_UPDATE,\n this.data.pendingTransactions\n );\n\n this.eventBus.publish(\n NotificationsFeedEventsEnum.TRANSACTIONS_HISTORY_UPDATE,\n this.data.historicTransactions\n );\n }\n}\n"],
5
- "mappings": "kaAAA,OAAOA,MAAa,iBCApB,OAAOC,MAAa,iBAiBpB,IAAMC,EAAqC,qCAE9BC,EAAN,MAAMC,UAAiCC,CAI5C,CAgBA,aAAc,CACZ,MAAM,CACJ,4CACA,8BACF,CAAC,EAlBH,KAAiB,MAAQC,EAAS,EAElC,KAAU,YAA6C,CACrD,oBAAqB,CAAC,EACtB,qBAAsB,CAAC,CACzB,EAcE,KAAK,KAAO,CAAE,GAAG,KAAK,WAAY,CACpC,CAbA,OAAc,aAAwC,CACpD,OAAKF,EAAyB,WAC5BA,EAAyB,SAAW,IAAIA,GAEnCA,EAAyB,QAClC,CAUO,yBAAmC,CACxC,OAAO,KAAK,MACd,CAGA,MAAa,uBAAwB,CACdG,EAAa,YAAY,EACjC,WAAW,EACxB,MAAM,KAAK,OAAO,EAClB,MAAM,KAAK,2BAA2B,EAEtC,IAAMC,EAAyB,KAAK,MAAM,UACxC,MACE,CAAE,OAAAC,EAAQ,aAAAC,CAAa,EACvB,CAAE,OAAQC,EAAY,aAAcC,CAAiB,IAClD,EAED,CAACC,EAAQF,EAAW,kBAAmBF,EAAO,iBAAiB,GAC/D,CAACI,EAAQD,EAAkBF,CAAY,IAEvC,MAAM,KAAK,2BAA2B,CAE1C,CACF,EACA,KAAK,qBAAqB,IAAIR,EAAoC,CAChEM,CACF,CAAC,EAED,KAAK,UAAU,iCAAwC,EACvD,MAAM,KAAK,2BAA2B,CACxC,CAGU,eAAgB,CACxB,IAAMM,EAAeP,EAAa,YAAY,EAC9C,KAAK,QAAQ,EACbO,EAAa,WAAW,CAC1B,CAEA,MAAgB,qBAAsB,CAC/B,KAAK,WAIV,KAAK,+CAEH,KAAK,cAAc,KAAK,IAAI,CAC9B,EAEA,KAAK,uDAEH,KAAK,oCAAoC,KAAK,IAAI,CACpD,EACF,CAEA,MAAgB,4BAA6B,CAC3C,GAAM,CAAE,aAAAJ,EAAc,QAAAK,EAAS,OAAAN,EAAQ,QAAAO,CAAQ,EAAI,KAAK,MAAM,SAAS,EAEjE,CAAE,yBAAAC,CAAyB,EAAI,MAAMC,EAA6B,CACtE,UAAWT,EACX,qBAAsBC,EACtB,QAAAK,CACF,CAAC,EAED,KAAK,KAAK,oBAAsBE,EAEhC,KAAK,KAAK,qBACR,MAAME,EAA8B,uBAAuB,CACzD,qBAAsBT,EACtB,QAASK,EAAQ,QACjB,gBAAiBC,EAAQ,QAAQ,gBACjC,UAAWA,EAAQ,QAAQ,SAC7B,CAAC,EAEH,MAAM,KAAK,wBAAwB,CACrC,CAEQ,qCAAsC,CAC5CI,EAA2B,EAC3B,KAAK,UAAU,EACf,KAAK,wBAAwB,CAC/B,CAEA,MAAc,yBAA0B,CACjC,KAAK,WAIV,KAAK,SAAS,sCAEZ,KAAK,KAAK,mBACZ,EAEA,KAAK,SAAS,sCAEZ,KAAK,KAAK,oBACZ,EACF,CACF,EDlHO,IAAMC,EAAN,MAAMC,CAAa,CAgBxB,aAAc,CAdd,KAAQ,kBAAoB,GAE5B,KAAQ,cAAqC,KAC7C,KAAQ,kBAAyC,CAAC,EAClD,KAAQ,aAAkC,CAAC,EAE3C,KAAQ,wBAAsC,IAAM,KAEpD,KAAQ,6BAA+C,CAAC,EACxD,KAAQ,SACN,KAEF,WAAQC,EAAS,EAGf,KAAK,QAAQ,EACb,KAAK,gBAAkB,IAAIC,EAE3B,KAAK,yBAA2BC,EAAyB,YAAY,CACvE,CAEA,MAAa,KAAK,CAAE,wBAAAC,CAAwB,EAAmB,CAAC,EAAG,CACjE,KAAK,wBAA0BA,EAE/B,KAAK,gBAAgB,KAAK,CAAE,wBAAAA,CAAwB,CAAC,EAErD,KAAK,4BAA4B,EACjC,KAAK,sBAAsB,EAC3B,MAAM,KAAK,iCAAiC,EAE5C,KAAK,wBAA0B,KAAK,MAAM,UACxC,CACE,CAAE,OAAAC,EAAQ,aAAAC,CAAa,EACvB,CAAE,OAAQC,EAAY,aAAcC,CAAiB,IAClD,EAED,CAACC,EAAQF,EAAW,kBAAmBF,EAAO,iBAAiB,GAC/D,CAACI,EAAQD,EAAkBF,CAAY,IAEvC,KAAK,4BAA4B,EAG9BG,EAAQF,EAAW,aAAcF,EAAO,YAAY,GACvD,KAAK,sBAAsB,CAE/B,CACF,CACF,CAEA,OAAc,aAA4B,CACxC,OAAKL,EAAa,WAChBA,EAAa,SAAW,IAAIA,GAEvBA,EAAa,QACtB,CAEQ,2BAA2BU,EAA0B,CAC3D,GAAM,CAAE,aAAAJ,CAAa,EAAI,KAAK,MAAM,SAAS,EACvCK,EAAcL,EAAaI,CAAO,EAExC,GAAI,CAACC,EACH,MAAO,GAGT,GAAM,CAAE,OAAAC,CAAO,EAAID,EACbE,EAAaC,EAAyBF,CAAM,EAC5CG,EAAWC,EAAuBJ,CAAM,EACxCK,EAAeC,EAA2BN,CAAM,EAChDO,EAAcJ,GAAYE,GAAgBJ,EAEhD,OAAIM,GACE,KAAK,yBACP,KAAK,gBAAgB,MAAMT,CAAO,EAE7BS,IAGT,KAAK,gBAAgB,KAAKT,CAAO,EAC1BS,EACT,CAEO,uBAAuBT,EAAiBU,EAAuB,CACpEC,EAAoB,CAClB,QAAAX,EACA,cAAAU,CACF,CAAC,EAED,KAAK,2BAA2BV,CAAO,EACvC,KAAK,4BAA4B,CACnC,CAEA,MAAc,6BAA8B,CAC1C,GAAM,CACJ,OAAQY,EACR,aAAcC,EACd,QAAAC,CACF,EAAI,KAAK,MAAM,SAAS,EAElB,CAAE,yBAAAC,EAA0B,2BAAAC,CAA2B,EAC3D,MAAMC,EAA6B,CACjC,UAAAL,EACA,qBAAAC,EACA,QAAAC,CACF,CAAC,EAEH,KAAK,kBAAoB,CACvB,GAAGC,EACH,GAAGC,CACL,EAEA,QAAWE,KAASN,EAAU,kBAC5B,KAAK,2BAA2BM,EAAM,OAAO,EAG/C,MAAM,KAAK,yBAAyB,CACtC,CAEA,MAAc,uBAAwB,CACpC,GAAM,CAAE,OAAQN,CAAU,EAAI,KAAK,MAAM,SAAS,EAClD,KAAK,aAAe,CAAC,EAErB,QAAWM,KAASN,EAAU,aAAc,CAG1C,IAAMO,EAFgB,YAAaD,EAG/B,CAAE,GAAGA,CAAM,EACX,CACE,GAAGA,EACH,wBACEE,EAA+BF,EAAM,OAAO,CAChD,EACJ,KAAK,aAAa,KAAKC,CAAQ,EAE3BD,EAAM,UACR,KAAK,gBAAgB,wBACnBA,EAAM,QACNA,EAAM,QACR,CAEJ,CACA,KAAK,UAAU,mCAEb,KAAK,YACP,CACF,CAEA,MAAc,wBAAuD,CACnE,OAAI,KAAK,cACA,KAAK,eAGT,KAAK,oBACR,KAAK,kBAAoB,GAEzB,KAAK,cAAgB,MAAMG,EAA8B,CACvD,qBACF,CAAC,EAED,KAAK,kBAAoB,IAGpB,KAAK,cACd,CAEQ,4BAA4BrB,EAAiB,CAC/B,KAAK,2BAA2BA,CAAO,GAGzDsB,EAAuBtB,CAAO,CAElC,CAEA,MAAc,kCAAmC,CAC/C,IAAMuB,EAAgB,MAAM,KAAK,uBAAuB,EACxD,GAAKA,EAKL,IADA,KAAK,SAAW,MAAMA,EAAc,YAAY,EAC5C,CAAC,KAAK,SACR,MAAM,IAAI,mCAAsC,EAGlD,KAAK,SAAS,wBAEZ,KAAK,iBAAiB,KAAK,IAAI,CACjC,EAEA,KAAK,6BAA6B,KAAK,IAAM,CAC3C,KAAK,UAAU,0BAEb,KAAK,iBAAiB,KAAK,IAAI,CACjC,CACF,CAAC,EAED,KAAK,SAAS,oCAEZ,KAAK,4BAA4B,KAAK,IAAI,CAC5C,EAEA,KAAK,6BAA6B,KAAK,IAAM,CAC3C,KAAK,UAAU,sCAEb,KAAK,4BAA4B,KAAK,IAAI,CAC5C,CACF,CAAC,EACH,CAEO,YAAa,CAClB,KAAK,sBAAsB,EAC3B,KAAK,4BAA4B,CACnC,CAEO,YAAa,CAClB,KAAK,kBAAoB,CAAC,EAC1B,KAAK,aAAe,CAAC,EACrB,KAAK,UAAU,wCAEb,KAAK,iBACP,EACA,KAAK,UAAU,mCAEb,KAAK,YACP,CACF,CAEA,MAAc,6BAA8B,CAC1C,KAAK,yBAAyB,sBAAsB,CACtD,CAEQ,iBAAiBvB,EAAiB,CAKxC,GAJoB,KAAK,aAAa,KACnCkB,GAAUA,EAAM,UAAYlB,CAC/B,EAEiB,CACf,KAAK,gBAAgB,KAAKA,CAAO,EACjC,IAAMwB,EAAcC,EAAmCzB,CAAO,EAC9DwB,IAAc,EACdE,EAAkB1B,CAAO,EACzB,MACF,CAEA,KAAK,4BAA4BA,CAAO,CAC1C,CAEA,MAAc,0BAA2B,CACvC,GAAI,MAAK,yBAAyB,wBAAwB,EAI1D,IAAI,CAAC,KAAK,SAAU,CAClB,IAAMuB,EAAgB,MAAM,KAAK,uBAAuB,EAExD,GAAI,CAACA,EACH,OAGF,KAAK,SAAW,MAAMA,EAAc,YAAY,CAClD,CAEA,KAAK,SAAS,wCAEZ,KAAK,iBACP,EACF,CAEO,SAAU,CACf,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,QAAQ,EAC9B,KAAK,0BAA0B,QAAQ,EACvCI,EAAsB,EACtB,KAAK,6BAA6B,QAASC,GAAgBA,EAAY,CAAC,EACxE,KAAK,6BAA+B,CAAC,CACvC,CACF",
4
+ "sourcesContent": ["import isEqual from 'lodash.isequal';\nimport { UITagsEnum } from 'constants/UITags.enum';\nimport { MvxToastList } from 'lib/sdkDappUi';\nimport { NotificationsFeedManager } from 'managers/NotificationsFeedManager/NotificationsFeedManager';\nimport {\n customToastCloseHandlersDictionary,\n customToastComponentDictionary,\n removeAllCustomToasts,\n removeCustomToast,\n removeTransactionToast,\n addTransactionToast\n} from 'store/actions/toasts/toastsActions';\nimport {\n getIsTransactionFailed,\n getIsTransactionSuccessful,\n getIsTransactionTimedOut\n} from 'store/actions/transactions/transactionStateByStatus';\n\nimport { CustomToastType } from 'store/slices/toast/toastSlice.types';\nimport { getStore } from 'store/store';\nimport { IEventBus } from 'types/manager.types';\nimport { ProviderErrorsEnum } from 'types/provider.types';\nimport { createUIElement } from 'utils/createUIElement';\nimport { createToastsFromTransactions } from './helpers/createToastsFromTransactions';\nimport { LifetimeManager } from './helpers/LifetimeManager';\nimport { ITransactionToast, ToastEventsEnum } from './types';\n\ninterface IToastManager {\n successfulToastLifetime?: number;\n}\n\nexport class ToastManager {\n private lifetimeManager: LifetimeManager;\n private isCreatingElement = false;\n private static instance: ToastManager;\n private toastsElement: MvxToastList | null = null;\n private transactionToasts: ITransactionToast[] = [];\n private customToasts: CustomToastType[] = [];\n private successfulToastLifetime?: number;\n private storeToastsSubscription: () => void = () => null;\n private notificationsFeedManager: NotificationsFeedManager;\n private eventBusUnsubscribeFunctions: (() => void)[] = [];\n private eventBus: IEventBus<ITransactionToast[] | CustomToastType[]> | null =\n null;\n\n store = getStore();\n\n constructor() {\n this.destroy();\n this.lifetimeManager = new LifetimeManager();\n\n this.notificationsFeedManager = NotificationsFeedManager.getInstance();\n }\n\n public async init({ successfulToastLifetime }: IToastManager = {}) {\n this.successfulToastLifetime = successfulToastLifetime;\n\n this.lifetimeManager.init({ successfulToastLifetime });\n\n this.updateTransactionToastsList();\n this.updateCustomToastList();\n await this.subscribeToEventBusNotifications();\n\n this.storeToastsSubscription = this.store.subscribe(\n (\n { toasts, transactions },\n { toasts: prevToasts, transactions: prevTransactions }\n ) => {\n if (\n !isEqual(prevToasts.transactionToasts, toasts.transactionToasts) ||\n !isEqual(prevTransactions, transactions)\n ) {\n this.updateTransactionToastsList();\n }\n\n if (!isEqual(prevToasts.customToasts, toasts.customToasts)) {\n this.updateCustomToastList();\n }\n }\n );\n }\n\n public static getInstance(): ToastManager {\n if (!ToastManager.instance) {\n ToastManager.instance = new ToastManager();\n }\n return ToastManager.instance;\n }\n\n private handleCompletedTransaction(toastId: string): boolean {\n const { transactions } = this.store.getState();\n const transaction = transactions[toastId];\n\n if (!transaction) {\n return false;\n }\n\n const { status } = transaction;\n const isTimedOut = getIsTransactionTimedOut(status);\n const isFailed = getIsTransactionFailed(status);\n const isSuccessful = getIsTransactionSuccessful(status);\n const isCompleted = isFailed || isSuccessful || isTimedOut;\n\n if (isCompleted) {\n if (this.successfulToastLifetime) {\n this.lifetimeManager.start(toastId);\n }\n return isCompleted;\n }\n\n this.lifetimeManager.stop(toastId);\n return isCompleted;\n }\n\n public createTransactionToast(toastId: string, totalDuration: number) {\n addTransactionToast({\n toastId,\n totalDuration\n });\n\n this.handleCompletedTransaction(toastId);\n this.updateTransactionToastsList();\n }\n\n private async updateTransactionToastsList() {\n const {\n toasts: toastList,\n transactions: transactionsSessions,\n account\n } = this.store.getState();\n\n const { pendingTransactionToasts, completedTransactionToasts } =\n await createToastsFromTransactions({\n toastList,\n transactionsSessions,\n account\n });\n\n this.transactionToasts = [\n ...pendingTransactionToasts,\n ...completedTransactionToasts\n ];\n\n for (const toast of toastList.transactionToasts) {\n this.handleCompletedTransaction(toast.toastId);\n }\n\n await this.publishTransactionToasts();\n }\n\n private async updateCustomToastList() {\n const { toasts: toastList } = this.store.getState();\n this.customToasts = [];\n\n for (const toast of toastList.customToasts) {\n const isSimpleToast = 'message' in toast;\n\n const newToast: CustomToastType = isSimpleToast\n ? { ...toast }\n : {\n ...toast,\n instantiateToastElement:\n customToastComponentDictionary[toast.toastId]\n };\n this.customToasts.push(newToast);\n\n if (toast.duration) {\n this.lifetimeManager.startWithCustomDuration(\n toast.toastId,\n toast.duration\n );\n }\n }\n this.eventBus?.publish(\n ToastEventsEnum.CUSTOM_TOAST_DATA_UPDATE,\n this.customToasts\n );\n }\n\n private async createToastListElement(): Promise<MvxToastList | null> {\n if (this.toastsElement) {\n return this.toastsElement;\n }\n\n if (!this.isCreatingElement) {\n this.isCreatingElement = true;\n\n this.toastsElement = await createUIElement<MvxToastList>({\n name: UITagsEnum.TOAST_LIST\n });\n\n this.isCreatingElement = false;\n }\n\n return this.toastsElement;\n }\n\n private handleTransactionToastClose(toastId: string) {\n const isCompleted = this.handleCompletedTransaction(toastId);\n\n if (isCompleted) {\n removeTransactionToast(toastId);\n }\n }\n\n private async subscribeToEventBusNotifications() {\n const toastsElement = await this.createToastListElement();\n if (!toastsElement) {\n return;\n }\n\n this.eventBus = await toastsElement.getEventBus();\n if (!this.eventBus) {\n throw new Error(ProviderErrorsEnum.eventBusError);\n }\n\n this.eventBus.subscribe(\n ToastEventsEnum.CLOSE,\n this.handleCloseToast.bind(this)\n );\n\n this.eventBusUnsubscribeFunctions.push(() => {\n this.eventBus?.unsubscribe(\n ToastEventsEnum.CLOSE,\n this.handleCloseToast.bind(this)\n );\n });\n\n this.eventBus.subscribe(\n ToastEventsEnum.OPEN_NOTIFICATIONS_FEED,\n this.handleOpenNotificationsFeed.bind(this)\n );\n\n this.eventBusUnsubscribeFunctions.push(() => {\n this.eventBus?.unsubscribe(\n ToastEventsEnum.OPEN_NOTIFICATIONS_FEED,\n this.handleOpenNotificationsFeed.bind(this)\n );\n });\n }\n\n public showToasts() {\n this.updateCustomToastList();\n this.updateTransactionToastsList();\n }\n\n public hideToasts() {\n this.transactionToasts = [];\n this.customToasts = [];\n this.eventBus?.publish(\n ToastEventsEnum.TRANSACTION_TOAST_DATA_UPDATE,\n this.transactionToasts\n );\n this.eventBus?.publish(\n ToastEventsEnum.CUSTOM_TOAST_DATA_UPDATE,\n this.customToasts\n );\n }\n\n private async handleOpenNotificationsFeed() {\n this.notificationsFeedManager.openNotificationsFeed();\n }\n\n private handleCloseToast(toastId: string) {\n const customToast = this.customToasts.find(\n (toast) => toast.toastId === toastId\n );\n\n if (customToast) {\n this.lifetimeManager.stop(toastId);\n const handleClose = customToastCloseHandlersDictionary[toastId];\n handleClose?.();\n removeCustomToast(toastId);\n return;\n }\n\n this.handleTransactionToastClose(toastId);\n }\n\n private async publishTransactionToasts() {\n if (this.notificationsFeedManager.isNotificationsFeedOpen()) {\n return;\n }\n\n if (!this.eventBus) {\n const toastsElement = await this.createToastListElement();\n\n if (!toastsElement) {\n return;\n }\n\n this.eventBus = await toastsElement.getEventBus();\n }\n\n this.eventBus.publish(\n ToastEventsEnum.TRANSACTION_TOAST_DATA_UPDATE,\n this.transactionToasts\n );\n }\n\n public destroy() {\n this.storeToastsSubscription();\n this.lifetimeManager?.destroy();\n this.notificationsFeedManager?.destroy();\n removeAllCustomToasts();\n this.eventBusUnsubscribeFunctions.forEach((unsubscribe) => unsubscribe());\n this.eventBusUnsubscribeFunctions = [];\n }\n}\n", "import isEqual from 'lodash.isequal';\nimport { UITagsEnum } from 'constants/UITags.enum';\nimport { TransactionsHistoryController } from 'controllers/TransactionsHistoryController';\nimport { ITransactionListItem, MvxNotificationsFeed } from 'lib/sdkDappUi';\nimport { clearCompletedTransactions } from 'store/actions/transactions/transactionsActions';\nimport { getStore } from 'store/store';\nimport { NotificationsFeedEventsEnum } from './types';\nimport { ToastManager } from '../internal';\nimport { SidePanelBaseManager } from '../internal/SidePanelBaseManager/SidePanelBaseManager';\nimport { createToastsFromTransactions } from '../internal/ToastManager/helpers/createToastsFromTransactions';\nimport { ITransactionToast } from '../internal/ToastManager/types';\n\ninterface INotificationsFeedManagerData {\n pendingTransactions: ITransactionToast[];\n historicTransactions: ITransactionListItem[];\n}\n\nconst NOTIFICATIONS_FEED_STORE_SUBSCRIBE = 'NOTIFICATIONS_FEED_STORE_SUBSCRIBE';\n\nexport class NotificationsFeedManager extends SidePanelBaseManager<\n MvxNotificationsFeed,\n INotificationsFeedManagerData,\n NotificationsFeedEventsEnum | typeof NOTIFICATIONS_FEED_STORE_SUBSCRIBE\n> {\n private static instance: NotificationsFeedManager;\n private readonly store = getStore();\n\n protected initialData: INotificationsFeedManagerData = {\n pendingTransactions: [],\n historicTransactions: []\n };\n\n public static getInstance(): NotificationsFeedManager {\n if (!NotificationsFeedManager.instance) {\n NotificationsFeedManager.instance = new NotificationsFeedManager();\n }\n return NotificationsFeedManager.instance;\n }\n\n constructor() {\n super({\n uiDataUpdateEvent: NotificationsFeedEventsEnum.OPEN,\n uiTag: UITagsEnum.NOTIFICATIONS_FEED\n });\n this.data = { ...this.initialData };\n }\n\n public isNotificationsFeedOpen(): boolean {\n return this.isOpen;\n }\n\n /**\n * Open the notifications feed and toggle off the toast manager.\n */\n public async openNotificationsFeed(): Promise<void> {\n const toastManager = ToastManager.getInstance();\n toastManager.hideToasts();\n await this.openUI();\n await this.updateDataAndNotifications();\n\n const storeToastsUnsubscribe = this.store.subscribe(\n async (\n { toasts, transactions },\n { toasts: prevToasts, transactions: prevTransactions }\n ) => {\n if (\n !isEqual(prevToasts.transactionToasts, toasts.transactionToasts) ||\n !isEqual(prevTransactions, transactions)\n ) {\n await this.updateDataAndNotifications();\n }\n }\n );\n this.unsubscribeFunctions.set(NOTIFICATIONS_FEED_STORE_SUBSCRIBE, [\n storeToastsUnsubscribe\n ]);\n\n this.eventBus?.publish(NotificationsFeedEventsEnum.OPEN);\n await this.updateDataAndNotifications();\n }\n\n /**\n * Close the notifications feed and toggle on the toast manager.\n */\n protected handleCloseUI() {\n const toastManager = ToastManager.getInstance();\n this.closeUI();\n toastManager.showToasts();\n }\n\n protected async setupEventListeners() {\n if (!this.eventBus) {\n return;\n }\n\n this.subscribeToEventBus(\n NotificationsFeedEventsEnum.CLOSE,\n this.handleCloseUI.bind(this)\n );\n\n this.subscribeToEventBus(\n NotificationsFeedEventsEnum.CLEAR,\n this.handleClearNotificationsFeedHistory.bind(this)\n );\n }\n\n protected async updateDataAndNotifications() {\n const { transactions, account, toasts, network } = this.store.getState();\n\n const { pendingTransactionToasts } = await createToastsFromTransactions({\n toastList: toasts,\n transactionsSessions: transactions,\n account\n });\n\n this.data.pendingTransactions = pendingTransactionToasts;\n\n this.data.historicTransactions =\n await TransactionsHistoryController.getTransactionsHistory({\n transactionsSessions: transactions,\n address: account.address,\n explorerAddress: network.network.explorerAddress,\n egldLabel: network.network.egldLabel\n });\n\n await this.updateNotificationsFeed();\n }\n\n private handleClearNotificationsFeedHistory() {\n clearCompletedTransactions();\n this.resetData();\n this.updateNotificationsFeed();\n }\n\n private async updateNotificationsFeed() {\n if (!this.eventBus) {\n return;\n }\n\n this.eventBus.publish(\n NotificationsFeedEventsEnum.PENDING_TRANSACTIONS_UPDATE,\n this.data.pendingTransactions\n );\n\n this.eventBus.publish(\n NotificationsFeedEventsEnum.TRANSACTIONS_HISTORY_UPDATE,\n this.data.historicTransactions\n );\n }\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["isEqual", "isEqual", "NOTIFICATIONS_FEED_STORE_SUBSCRIBE", "NotificationsFeedManager", "_NotificationsFeedManager", "SidePanelBaseManager", "getStore", "ToastManager", "storeToastsUnsubscribe", "toasts", "transactions", "prevToasts", "prevTransactions", "isEqual", "toastManager", "account", "network", "pendingTransactionToasts", "createToastsFromTransactions", "TransactionsHistoryController", "clearCompletedTransactions", "ToastManager", "_ToastManager", "getStore", "LifetimeManager", "NotificationsFeedManager", "successfulToastLifetime", "toasts", "transactions", "prevToasts", "prevTransactions", "isEqual", "toastId", "transaction", "status", "isTimedOut", "getIsTransactionTimedOut", "isFailed", "getIsTransactionFailed", "isSuccessful", "getIsTransactionSuccessful", "isCompleted", "totalDuration", "addTransactionToast", "toastList", "transactionsSessions", "account", "pendingTransactionToasts", "completedTransactionToasts", "createToastsFromTransactions", "toast", "newToast", "customToastComponentDictionary", "createUIElement", "removeTransactionToast", "toastsElement", "handleClose", "customToastCloseHandlersDictionary", "removeCustomToast", "removeAllCustomToasts", "unsubscribe"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{a as u}from"./chunk-L3MWDI6J.mjs";import{s as r}from"./chunk-CN4RHVUE.mjs";var m=({transactions:s,transactionsDisplayInfo:n,status:e})=>{let t=Date.now().toString();return r().setState(({transactions:o})=>{o[t]={transactions:s,status:e,transactionsDisplayInfo:n,interpretedTransactions:{}}},!1,"createTransactionsSession"),t},g=({sessionId:s,status:n,errorMessage:e})=>{r().setState(({transactions:t})=>{t[s].status=n,t[s].errorMessage=e},!1,"updateTransactionsSession")},y=({sessionId:s,transaction:n})=>{r().setState(({transactions:e})=>{let t=e[s]?.transactions;if(t!=null){e[s].transactions=t.map(a=>a.hash===n.hash?{...a,...n??{}}:a);let o=u(t);o&&(e[s].status=o)}},!1,"updateTransactionStatus")},h=()=>{r().setState(({transactions:s,toasts:n})=>{let t=Object.keys(s).filter(a=>{let c=s[a];if(!c)return!1;let{status:i}=c;return!(i==="pending"||i==="signed"||i==="sent")});t.forEach(a=>{delete s[a]});let o=n.transactionToasts.filter(a=>!t.includes(a.toastId));n.transactionToasts=o},!1,"clearCompletedTransactions")};export{m as a,g as b,y as c,h as d};
2
- //# sourceMappingURL=chunk-AGI2ZR6R.mjs.map
1
+ import{a as u}from"./chunk-L3MWDI6J.mjs";import{s as r}from"./chunk-E6LAZEWZ.mjs";var m=({transactions:s,transactionsDisplayInfo:n,status:e})=>{let t=Date.now().toString();return r().setState(({transactions:o})=>{o[t]={transactions:s,status:e,transactionsDisplayInfo:n,interpretedTransactions:{}}},!1,"createTransactionsSession"),t},g=({sessionId:s,status:n,errorMessage:e})=>{r().setState(({transactions:t})=>{t[s].status=n,t[s].errorMessage=e},!1,"updateTransactionsSession")},y=({sessionId:s,transaction:n})=>{r().setState(({transactions:e})=>{let t=e[s]?.transactions;if(t!=null){e[s].transactions=t.map(a=>a.hash===n.hash?{...a,...n??{}}:a);let o=u(t);o&&(e[s].status=o)}},!1,"updateTransactionStatus")},h=()=>{r().setState(({transactions:s,toasts:n})=>{let t=Object.keys(s).filter(a=>{let c=s[a];if(!c)return!1;let{status:i}=c;return!(i==="pending"||i==="signed"||i==="sent")});t.forEach(a=>{delete s[a]});let o=n.transactionToasts.filter(a=>!t.includes(a.toastId));n.transactionToasts=o},!1,"clearCompletedTransactions")};export{m as a,g as b,y as c,h as d};
2
+ //# sourceMappingURL=chunk-2YTMWXHT.mjs.map
@@ -0,0 +1,2 @@
1
+ import{a as F}from"./chunk-L2DBVSAK.mjs";import{a as v}from"./chunk-ASXWZ65B.mjs";import{a as O,b as D,g as R}from"./chunk-QD3CFFVT.mjs";import{a as W}from"./chunk-SYI5Q5RY.mjs";import{a as V}from"./chunk-4ODPAHHA.mjs";import{a as G}from"./chunk-Q6PSRPB2.mjs";import{a as z}from"./chunk-TDPJL2GR.mjs";import{a as _}from"./chunk-7VRG4RQO.mjs";import{b as f}from"./chunk-WXXLQ6H7.mjs";import{a as p}from"./chunk-QXWM7T6G.mjs";import{a as M}from"./chunk-XRPJSGL4.mjs";import{a as $}from"./chunk-5XBGERHC.mjs";import{a as g}from"./chunk-6RUKE4FM.mjs";import{a as b}from"./chunk-TLKMUVQJ.mjs";import{a as l,f as L}from"./chunk-EGPVJE45.mjs";import{b as U}from"./chunk-6G4HQO6W.mjs";import{a as T}from"./chunk-6FXEHNGW.mjs";import{a as B}from"./chunk-NJN53MJV.mjs";import{a as E}from"./chunk-YSCND2MX.mjs";import{a as h}from"./chunk-HORSXVIV.mjs";import{b as N,s as m,u as k}from"./chunk-E6LAZEWZ.mjs";import{b as I}from"./chunk-IEJTMYFW.mjs";import{b as C,c as P,e as S}from"./chunk-2CNSQULM.mjs";import{b as j}from"./chunk-THQWNWSE.mjs";async function w({address:t,provider:o,apiAddress:r}){let e=await T({address:t,baseURL:r});if(!e)throw new Error("Account not found");U({address:t,providerType:o.getType()});let n={...e,username:h(e.username),nonce:g(e)};l(n),await f(t),v(),e.shard!=null&&await F({shard:Number(e.shard),apiAddress:r})}async function tt(t){let{network:{apiAddress:o}}=p();await t.login();let r=await t.getAddress();if(!r)throw new Error("Address not found");return await w({address:r,provider:t,apiAddress:o}),{address:r}}async function ot(t,o){let{network:{apiAddress:r}}=p(),e=b(o),n=await e.initialize({noCache:!0}),{address:s,signature:i,...c}=await t.login({token:n});if(!s)return console.warn("Login cancelled."),null;if(!i)return console.error("Failed to sign login token"),null;let a=e.getToken({address:s,token:n,signature:i});N({loginToken:n,signature:i,nativeAuthToken:a});let d=await W({loginToken:n,extraInfoData:{multisig:c?.multisig,impersonate:c?.impersonate},address:s});return await w({address:d,provider:t,apiAddress:r}),{address:d,signature:i}}async function K(t){let o=I(k());if(o)return await ot(t,o);let{address:r}=await tt(t);return await f(r),v(),{address:r}}var y={error:{title:"Error when signing".toString(),iconClassName:"danger",toastId:`${D}-${Date.now()}`},warning:{title:"Signing canceled".toString(),iconClassName:"warning",toastId:`${O}-${Date.now()}`}},rt={extensionResponse:"Unable to sign transactions","Transaction canceled":"Transaction canceled","cancelled by user":"Transaction signing cancelled by user","denied by the user":"Transaction signing denied by the user"},et=t=>{for(let[o,r]of Object.entries(rt))if(t.includes(o))return r;return"Error when signing"};function A(t,o="error"){let r=t?.message,e=et(r),s=e!=="Error when signing"?"warning":o,i=Object.keys(y).includes(s)?y[s]:y.error,{toastId:c,iconClassName:a,title:d}=i;return H({toastId:c,duration:1e4,icon:"times",iconClassName:a,message:e,title:d}),e}async function q({provider:t,transactions:o,options:r={}}){await J();let{isGuarded:e,activeGuardianAddress:n,nonce:s}=$(),i=t.getType()==="ledger",c=V({latestNonce:s,transactions:o}),a=n&&e&&!r.skipGuardian?c?.map(u=>(u.version=C.withTxOptions().valueOf(),u.options=S.withOptions({guarded:!0,...i?{hashSign:!0}:{}}).valueOf(),u.guardian=P.newFromBech32(n),u)):c,d=await t.signTransactions(a)??[];return L(s+d.length),d}var x=class{constructor(o){this.provider=o}init(){return this.provider.init()}async login(){return await K(this.provider)}isInitialized(){return this.provider.isInitialized()}async logout(o={shouldBroadcastLogoutAcrossTabs:!0,hasConsentPopup:!1}){return await _({provider:this.provider,options:o})}setShouldShowConsentPopup(o){this.provider.setShouldShowConsentPopup?.(o)}getType(){return this.provider.getType()}getProvider(){return this.provider}async signTransactions(o,r){try{return await q({provider:this.provider,transactions:o,options:r})}catch(e){let n=A(e);throw new Error(n)}}async signMessage(o,r){try{return await z({provider:this.provider,message:o,options:r})}catch(e){let n=A(e,"warning");throw new Error(n)}}async verifyMessage(o){return await G(o)}cancelLogin(){this.provider.cancelLogin?.()}};var Q=null;function To(t){Q=t}function X(){return Q||new x(j)}var nt=async()=>{try{let t=M(),{network:o}=p();try{let r=await T({address:t,baseURL:o.apiAddress});if(r!=null){let e={...r,username:h(r.username),nonce:g(r)};return l(e),e}}catch(r){console.error("Failed getting account ",r)}}catch(t){console.error("Failed getting address ",t)}return null};async function J(){let t=X();if(t==null)throw"Provider not initialized";try{if(!t.init)throw"Current provider does not have init() function";return await t.init()?nt():void 0}catch(o){console.error("Failed initializing provider ",o)}}var Y={},Z={},st=(t,o)=>{m().setState(({toasts:r})=>{let e=r.customToasts.length>0?Math.max(...r.customToasts.map(a=>parseInt(a.toastId.split("-").pop()??"0"))):0,n=o??`custom-toast-${e+1}`,s=r.customToasts.findIndex(a=>a.toastId===n),i={...t,toastId:n};if(s!==-1){r.customToasts[s]=i;return}r.customToasts.push({...i,toastId:n})},!1,"addCustomToast")},_o=t=>{m().setState(({toasts:o})=>{o.customToasts=o.customToasts.filter(r=>r.toastId!==t)},!1,"removeCustomToast")},zo=()=>{m().setState(({toasts:t})=>{t.customToasts=[]},!1,"removeAllCustomToasts")},Go=()=>{m().setState(({toasts:t})=>{t.transactionToasts=[]})},$o=({toastId:t,totalDuration:o})=>{m().setState(({toasts:r})=>{let e=r.transactionToasts.length>0?Math.max(...r.transactionToasts.map(s=>parseInt(s.toastId.split("-").pop()??"0"))):0,n=t||`transaction-toast-${e+1}`;r.transactionToasts.push({startTime:E(),endTime:B(o),toastId:n})},!1,"addTransactionToast")},Vo=t=>{m().setState(({toasts:o})=>{o.transactionToasts=o.transactionToasts.filter(r=>r.toastId!==t)},!1,"removeTransactionToast"),delete Z[t],delete Y[t]},H=t=>{let{toasts:o}=m().getState(),r=o.customToasts.length>0?Math.max(...o.customToasts.map(n=>parseInt(n.toastId.split("-").pop()??"0"))):0,e=t.toastId||`custom-toast-${r+1}`;return t.onClose&&(Z[e]=t.onClose),t.instantiateToastElement?(Y[e]=t.instantiateToastElement,m().setState(({toasts:n})=>{let s=n.customToasts.findIndex(a=>a.toastId===e),i={...t,instantiateToastElement:null,toastId:e};s!==-1?n.customToasts[s]=i:n.customToasts.push(i)},!1,"createCustomToast"),e):(st(t,e),e)};export{Y as a,Z as b,st as c,_o as d,zo as e,Go as f,$o as g,Vo as h,H as i,w as j,K as k,A as l,q as m,x as n,To as o,X as p,J as q};
2
+ //# sourceMappingURL=chunk-4LFIRWUJ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/providers/DappProvider/helpers/login/helpers/accountLogin.ts", "../../src/providers/DappProvider/helpers/login/login.ts", "../../src/providers/DappProvider/helpers/signErrors/handleSignError.ts", "../../src/providers/DappProvider/helpers/signTransactions/signTransactionsWithProvider.ts", "../../src/providers/DappProvider/DappProvider.ts", "../../src/providers/helpers/accountProvider.ts", "../../src/utils/account/refreshAccount.ts", "../../src/store/actions/toasts/toastsActions.ts"],
4
+ "sourcesContent": ["import { getLatestNonce } from 'methods/account/getLatestNonce';\nimport { setGasStationMetadata } from 'methods/initApp/gastStationMetadata/setGasStationMetadata';\nimport { registerWebsocketListener } from 'methods/initApp/websocket/registerWebsocket';\nimport { trackTransactions } from 'methods/trackTransactions/trackTransactions';\nimport { IProvider } from 'providers/types/providerFactory.types';\nimport { loginAction } from 'store/actions';\nimport { setAccount } from 'store/actions/account';\nimport { AccountType } from 'types/account.types';\nimport { fetchAccount } from 'utils/account/fetchAccount';\nimport { trimUsernameDomain } from 'utils/account/trimUsernameDomain';\n\ninterface IAccountLoginProps {\n address: string;\n provider: IProvider;\n apiAddress: string;\n}\n\nexport async function accountLogin({\n address,\n provider,\n apiAddress\n}: IAccountLoginProps) {\n const account = await fetchAccount({\n address,\n baseURL: apiAddress\n });\n\n if (!account) {\n throw new Error('Account not found');\n }\n\n loginAction({\n address,\n providerType: provider.getType()\n });\n\n const newAccount: AccountType = {\n ...account,\n username: trimUsernameDomain(account.username),\n nonce: getLatestNonce(account)\n };\n\n setAccount(newAccount);\n\n await registerWebsocketListener(address);\n trackTransactions();\n\n if (account.shard != null) {\n await setGasStationMetadata({\n shard: Number(account.shard),\n apiAddress\n });\n }\n}\n", "import { registerWebsocketListener } from 'methods/initApp/websocket/registerWebsocket';\nimport { getNetworkConfig } from 'methods/network/getNetworkConfig';\nimport { trackTransactions } from 'methods/trackTransactions/trackTransactions';\nimport { IProvider } from 'providers/types/providerFactory.types';\nimport { nativeAuth } from 'services/nativeAuth';\nimport { NativeAuthConfigType } from 'services/nativeAuth/nativeAuth.types';\nimport { setTokenLogin } from 'store/actions/loginInfo/loginInfoActions';\nimport { nativeAuthConfigSelector } from 'store/selectors';\nimport { getState } from 'store/store';\nimport { accountLogin } from './helpers/accountLogin';\nimport { extractAddressFromToken } from './helpers/extractAddressFromToken';\n\nasync function loginWithoutNativeToken(provider: IProvider) {\n const {\n network: { apiAddress }\n } = getNetworkConfig();\n\n await provider.login();\n\n const address = await provider.getAddress();\n\n if (!address) {\n throw new Error('Address not found');\n }\n\n await accountLogin({ address, provider, apiAddress });\n\n return {\n address\n };\n}\n\nasync function loginWithNativeToken(\n provider: IProvider,\n nativeAuthConfig: NativeAuthConfigType\n) {\n const {\n network: { apiAddress }\n } = getNetworkConfig();\n\n const nativeAuthClient = nativeAuth(nativeAuthConfig);\n\n const loginToken = await nativeAuthClient.initialize({\n noCache: true\n });\n\n const { address, signature, ...loginResult } = await provider.login({\n token: loginToken\n });\n\n if (!address) {\n console.warn('Login cancelled.');\n return null;\n }\n\n if (!signature) {\n console.error('Failed to sign login token');\n return null;\n }\n\n const nativeAuthToken = nativeAuthClient.getToken({\n address,\n token: loginToken,\n signature\n });\n\n setTokenLogin({\n loginToken,\n signature,\n nativeAuthToken\n });\n\n const extractedAddress = await extractAddressFromToken({\n loginToken,\n extraInfoData: {\n multisig: loginResult?.multisig,\n impersonate: loginResult?.impersonate\n },\n address\n });\n\n await accountLogin({\n address: extractedAddress,\n provider,\n apiAddress\n });\n\n return {\n address: extractedAddress,\n signature\n };\n}\n\nexport async function login(provider: IProvider) {\n const nativeAuthConfig = nativeAuthConfigSelector(getState());\n\n if (nativeAuthConfig) {\n const data = await loginWithNativeToken(provider, nativeAuthConfig);\n return data;\n }\n\n const { address } = await loginWithoutNativeToken(provider);\n\n await registerWebsocketListener(address);\n trackTransactions();\n\n return { address };\n}\n", "import {\n CANCEL_TRANSACTION_TOAST_DEFAULT_DURATION,\n CANCEL_TRANSACTION_TOAST_ID,\n ERROR_SIGNING_TOAST_ID\n} from 'constants/transactions.constants';\nimport { ToastIconsEnum } from 'managers/internal/ToastManager/helpers/getToastDataStateByStatus';\nimport { createCustomToast } from 'store/actions';\nimport { SigningErrorsEnum, SigningWarningsEnum } from 'types/enums.types';\n\nconst states = {\n error: {\n title: SigningErrorsEnum.errorSigning.toString(),\n iconClassName: 'danger',\n toastId: `${ERROR_SIGNING_TOAST_ID}-${Date.now()}`\n },\n warning: {\n title: SigningWarningsEnum.cancelled.toString(),\n iconClassName: 'warning',\n toastId: `${CANCEL_TRANSACTION_TOAST_ID}-${Date.now()}`\n }\n};\n\nconst errorsMap = {\n extensionResponse: 'Unable to sign transactions', // extension\n 'Transaction canceled': 'Transaction canceled', // web wallet\n 'cancelled by user': 'Transaction signing cancelled by user', // custom\n 'denied by the user': 'Transaction signing denied by the user' // ledger\n};\n\nconst getUserError = (error: string) => {\n for (const [key, value] of Object.entries(errorsMap)) {\n if (error.includes(key)) {\n return value;\n }\n }\n return SigningErrorsEnum.errorSigning;\n};\n\nexport function handleSignError(\n error: unknown,\n type: 'error' | 'warning' = 'error'\n) {\n const originalError = (error as Error)?.message;\n const errorMessage = getUserError(originalError);\n\n const isKnownError = errorMessage !== SigningErrorsEnum.errorSigning;\n\n const errorType = isKnownError ? 'warning' : type;\n\n const state = Object.keys(states).includes(errorType)\n ? states[errorType]\n : states.error;\n\n const { toastId, iconClassName, title } = state;\n\n createCustomToast({\n toastId,\n duration: CANCEL_TRANSACTION_TOAST_DEFAULT_DURATION,\n icon: ToastIconsEnum.times,\n iconClassName,\n message: errorMessage,\n title\n });\n\n return errorMessage;\n}\n", "import {\n Address,\n Transaction,\n TransactionOptions,\n TransactionVersion\n} from 'lib/sdkCore';\nimport { getAccount } from 'methods/account/getAccount';\nimport {\n IProvider,\n ProviderTypeEnum\n} from 'providers/types/providerFactory.types';\nimport { setAccountNonce } from 'store/actions';\nimport { refreshAccount } from 'utils';\nimport { computeNonces } from '../computeNonces/computeNonces';\n\nexport type SignTransactionsOptionsType = {\n skipGuardian?: boolean;\n};\n\ntype SignTransactionsType = {\n provider: IProvider;\n transactions: Transaction[];\n options?: SignTransactionsOptionsType;\n};\n\nexport async function signTransactionsWithProvider({\n provider,\n transactions,\n options = {}\n}: SignTransactionsType): Promise<Transaction[]> {\n await refreshAccount();\n const { isGuarded, activeGuardianAddress, nonce } = getAccount();\n const isLedger = provider.getType() === ProviderTypeEnum.ledger;\n\n const transactionsWithComputedNonce = computeNonces({\n latestNonce: nonce,\n transactions\n });\n\n const transactionsToSign =\n activeGuardianAddress && isGuarded && !options.skipGuardian\n ? transactionsWithComputedNonce?.map((transaction) => {\n transaction.version = TransactionVersion.withTxOptions().valueOf();\n transaction.options = TransactionOptions.withOptions({\n guarded: true,\n ...(isLedger ? { hashSign: true } : {})\n }).valueOf();\n\n transaction.guardian = Address.newFromBech32(activeGuardianAddress);\n\n return transaction;\n })\n : transactionsWithComputedNonce;\n\n const signedTransactions: Transaction[] =\n (await provider.signTransactions(transactionsToSign)) ?? [];\n\n setAccountNonce(nonce + signedTransactions.length);\n\n return signedTransactions;\n}\n", "import { Message, Transaction } from 'lib/sdkCore';\nimport { IProvider } from '../types/providerFactory.types';\nimport { login } from './helpers/login/login';\nimport { logout } from './helpers/logout/logout';\nimport { handleSignError } from './helpers/signErrors/handleSignError';\nimport { signMessageWithProvider } from './helpers/signMessage/signMessageWithProvider';\nimport {\n verifyMessage,\n VerifyMessageReturnType\n} from './helpers/signMessage/verifyMessage';\nimport {\n signTransactionsWithProvider,\n SignTransactionsOptionsType\n} from './helpers/signTransactions/signTransactionsWithProvider';\n\nexport class DappProvider {\n private provider: IProvider;\n\n constructor(provider: IProvider) {\n this.provider = provider;\n }\n\n init(): Promise<boolean> {\n return this.provider.init();\n }\n\n async login() {\n const data = await login(this.provider);\n return data;\n }\n\n isInitialized(): boolean {\n return this.provider.isInitialized();\n }\n\n async logout(\n options = {\n shouldBroadcastLogoutAcrossTabs: true,\n hasConsentPopup: false\n }\n ): Promise<boolean> {\n return await logout({ provider: this.provider, options });\n }\n\n setShouldShowConsentPopup(shouldShow: boolean): void {\n this.provider.setShouldShowConsentPopup?.(shouldShow);\n }\n\n getType() {\n return this.provider.getType();\n }\n\n /**\n * @returns The original provider instance.\n */\n getProvider() {\n return this.provider;\n }\n\n async signTransactions(\n transactions: Transaction[],\n options?: SignTransactionsOptionsType\n ): Promise<Transaction[]> {\n try {\n const signedTransactions = await signTransactionsWithProvider({\n provider: this.provider,\n transactions,\n options\n });\n return signedTransactions;\n } catch (error) {\n const errorMessage = handleSignError(error);\n throw new Error(errorMessage);\n }\n }\n\n async signMessage(\n message: Message,\n options?: {\n hasConsentPopup?: boolean;\n }\n ): Promise<Message | null> {\n try {\n const signedMessage = await signMessageWithProvider({\n provider: this.provider,\n message,\n options\n });\n return signedMessage;\n } catch (error) {\n const errorMessage = handleSignError(error, 'warning');\n throw new Error(errorMessage);\n }\n }\n\n /**\n * @param signedMessage - The signed message to verify in form of a JSON string with `address`, `message` and `signature` properties.\n * @returns The verification result with `isVerified`, `message` and `address` properties.\n */\n async verifyMessage(signedMessage: string): Promise<VerifyMessageReturnType> {\n return await verifyMessage(signedMessage);\n }\n\n cancelLogin(): void {\n this.provider.cancelLogin?.();\n }\n}\n", "import { IProvider } from 'providers/types/providerFactory.types';\nimport { DappProvider } from '../DappProvider';\nimport { emptyProvider } from './emptyProvider';\n\nexport type ProvidersType = IProvider;\n\nlet accountProvider: DappProvider | null = null;\n\nexport function setAccountProvider<TProvider extends DappProvider | null>(\n provider: TProvider\n) {\n accountProvider = provider;\n}\n\nexport function getAccountProvider(): DappProvider {\n return accountProvider || new DappProvider(emptyProvider);\n}\n", "import { getAddress } from 'methods/account/getAddress';\nimport { getLatestNonce } from 'methods/account/getLatestNonce';\nimport { getNetworkConfig } from 'methods/network/getNetworkConfig';\nimport { getAccountProvider } from 'providers/helpers/accountProvider';\nimport { setAccount } from 'store/actions';\nimport { fetchAccount } from './fetchAccount';\nimport { trimUsernameDomain } from './trimUsernameDomain';\n\nconst setNewAccount = async () => {\n try {\n const address = getAddress();\n const { network } = getNetworkConfig();\n\n try {\n const account = await fetchAccount({\n address,\n baseURL: network.apiAddress\n });\n\n if (account != null) {\n const accountData = {\n ...account,\n username: trimUsernameDomain(account.username),\n nonce: getLatestNonce(account)\n };\n\n setAccount(accountData);\n\n return accountData;\n }\n } catch (e) {\n console.error('Failed getting account ', e);\n }\n } catch (e) {\n console.error('Failed getting address ', e);\n }\n\n return null;\n};\n\nexport async function refreshAccount() {\n const provider = getAccountProvider();\n\n if (provider == null) {\n throw 'Provider not initialized';\n }\n\n try {\n if (!provider.init) {\n throw 'Current provider does not have init() function';\n }\n\n const initialized = await provider.init();\n\n if (!initialized) {\n return;\n }\n\n return setNewAccount();\n } catch (e) {\n console.error('Failed initializing provider ', e);\n }\n\n return undefined;\n}\n", "import {\n CustomToastType,\n IComponentToast\n} from 'store/slices/toast/toastSlice.types';\nimport { getStore } from 'store/store';\nimport { getUnixTimestamp, getUnixTimestampWithAddedMilliseconds } from 'utils';\n\nexport const customToastComponentDictionary: Record<\n string,\n IComponentToast['instantiateToastElement']\n> = {};\nexport const customToastCloseHandlersDictionary: Record<string, () => void> =\n {};\n\nexport const addCustomToast = (\n customToast: CustomToastType,\n currentToastId?: string\n) => {\n getStore().setState(\n ({ toasts: state }) => {\n const lastToastIndex =\n state.customToasts.length > 0\n ? Math.max(\n ...state.customToasts.map((toast) =>\n parseInt(toast.toastId.split('-').pop() ?? '0')\n )\n )\n : 0;\n const toastId = currentToastId ?? `custom-toast-${lastToastIndex + 1}`;\n\n const existingToastIndex = state.customToasts.findIndex(\n (toast) => toast.toastId === toastId\n );\n\n const newToast: CustomToastType = {\n ...customToast,\n toastId\n };\n\n const isToastFound = existingToastIndex !== -1;\n\n if (isToastFound) {\n state.customToasts[existingToastIndex] = newToast;\n return;\n }\n\n state.customToasts.push({\n ...newToast,\n toastId\n });\n },\n false,\n 'addCustomToast'\n );\n};\n\nexport const removeCustomToast = (toastId: string) => {\n getStore().setState(\n ({ toasts: state }) => {\n state.customToasts = state.customToasts.filter(\n (toast) => toast.toastId !== toastId\n );\n },\n false,\n 'removeCustomToast'\n );\n};\n\nexport const removeAllCustomToasts = () => {\n getStore().setState(\n ({ toasts: state }) => {\n state.customToasts = [];\n },\n false,\n 'removeAllCustomToasts'\n );\n};\n\nexport const removeAllTransactionToasts = () => {\n getStore().setState(({ toasts: state }) => {\n state.transactionToasts = [];\n });\n};\n\nexport const addTransactionToast = ({\n toastId,\n totalDuration\n}: {\n toastId: string;\n totalDuration: number;\n}) => {\n getStore().setState(\n ({ toasts: state }) => {\n const lastToastIndex =\n state.transactionToasts.length > 0\n ? Math.max(\n ...state.transactionToasts.map((toast) =>\n parseInt(toast.toastId.split('-').pop() ?? '0')\n )\n )\n : 0;\n const newToastId = toastId || `transaction-toast-${lastToastIndex + 1}`;\n\n state.transactionToasts.push({\n startTime: getUnixTimestamp(),\n endTime: getUnixTimestampWithAddedMilliseconds(totalDuration),\n toastId: newToastId\n });\n },\n false,\n 'addTransactionToast'\n );\n};\n\nexport const removeTransactionToast = (toastId: string) => {\n getStore().setState(\n ({ toasts: state }) => {\n state.transactionToasts = state.transactionToasts.filter((toast) => {\n return toast.toastId !== toastId;\n });\n },\n false,\n 'removeTransactionToast'\n );\n\n delete customToastCloseHandlersDictionary[toastId];\n delete customToastComponentDictionary[toastId];\n};\n\nexport const createCustomToast = (props: CustomToastType) => {\n const { toasts } = getStore().getState();\n\n const lastToastIndex =\n toasts.customToasts.length > 0\n ? Math.max(\n ...toasts.customToasts.map((toast) =>\n parseInt(toast.toastId.split('-').pop() ?? '0')\n )\n )\n : 0;\n\n const toastId = props.toastId || `custom-toast-${lastToastIndex + 1}`;\n\n if (props.onClose) {\n customToastCloseHandlersDictionary[toastId] = props.onClose;\n }\n\n if (props.instantiateToastElement) {\n customToastComponentDictionary[toastId] = props.instantiateToastElement;\n\n getStore().setState(\n ({ toasts: state }) => {\n const existingToastIndex = state.customToasts.findIndex(\n (toast) => toast.toastId === toastId\n );\n\n const toast: CustomToastType = {\n ...props,\n instantiateToastElement: null,\n toastId\n };\n\n const isToastFound = existingToastIndex !== -1;\n\n if (isToastFound) {\n state.customToasts[existingToastIndex] = toast;\n } else {\n state.customToasts.push(toast);\n }\n },\n false,\n 'createCustomToast'\n );\n\n return toastId;\n }\n\n addCustomToast(props, toastId);\n return toastId;\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["accountLogin", "address", "provider", "apiAddress", "account", "fetchAccount", "loginAction", "newAccount", "trimUsernameDomain", "getLatestNonce", "setAccount", "registerWebsocketListener", "trackTransactions", "setGasStationMetadata", "loginWithoutNativeToken", "provider", "apiAddress", "getNetworkConfig", "address", "accountLogin", "loginWithNativeToken", "nativeAuthConfig", "nativeAuthClient", "nativeAuth", "loginToken", "signature", "loginResult", "nativeAuthToken", "setTokenLogin", "extractedAddress", "extractAddressFromToken", "login", "nativeAuthConfigSelector", "getState", "registerWebsocketListener", "trackTransactions", "states", "ERROR_SIGNING_TOAST_ID", "CANCEL_TRANSACTION_TOAST_ID", "errorsMap", "getUserError", "error", "key", "value", "handleSignError", "type", "originalError", "errorMessage", "errorType", "state", "toastId", "iconClassName", "title", "createCustomToast", "signTransactionsWithProvider", "provider", "transactions", "options", "refreshAccount", "isGuarded", "activeGuardianAddress", "nonce", "getAccount", "isLedger", "transactionsWithComputedNonce", "computeNonces", "transactionsToSign", "transaction", "TransactionVersion", "TransactionOptions", "Address", "signedTransactions", "setAccountNonce", "DappProvider", "provider", "login", "options", "logout", "shouldShow", "transactions", "signTransactionsWithProvider", "error", "errorMessage", "handleSignError", "message", "signMessageWithProvider", "signedMessage", "verifyMessage", "accountProvider", "setAccountProvider", "provider", "getAccountProvider", "DappProvider", "emptyProvider", "setNewAccount", "address", "getAddress", "network", "getNetworkConfig", "account", "fetchAccount", "accountData", "trimUsernameDomain", "getLatestNonce", "setAccount", "e", "refreshAccount", "provider", "getAccountProvider", "customToastComponentDictionary", "customToastCloseHandlersDictionary", "addCustomToast", "customToast", "currentToastId", "getStore", "state", "lastToastIndex", "toast", "toastId", "existingToastIndex", "newToast", "removeCustomToast", "removeAllCustomToasts", "removeAllTransactionToasts", "addTransactionToast", "totalDuration", "newToastId", "getUnixTimestamp", "getUnixTimestampWithAddedMilliseconds", "removeTransactionToast", "createCustomToast", "props", "toasts"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{u as e}from"./chunk-E6LAZEWZ.mjs";import{b as r}from"./chunk-SAAOQW7P.mjs";function d(t=e()){return r(t).explorerAddress}export{d as a};
2
+ //# sourceMappingURL=chunk-4WXQHTVV.mjs.map
@@ -1,2 +1,2 @@
1
- import{u as r}from"./chunk-CN4RHVUE.mjs";import{b as e}from"./chunk-SAAOQW7P.mjs";var d=s=>{let o=e(r()),t=s??o.apiAddress;return t.endsWith("/")?t.slice(0,-1):t};export{d as a};
2
- //# sourceMappingURL=chunk-PEDR76UT.mjs.map
1
+ import{u as r}from"./chunk-E6LAZEWZ.mjs";import{b as e}from"./chunk-SAAOQW7P.mjs";var d=s=>{let o=e(r()),t=s??o.apiAddress;return t.endsWith("/")?t.slice(0,-1):t};export{d as a};
2
+ //# sourceMappingURL=chunk-53A5OCQC.mjs.map
@@ -1,2 +1,2 @@
1
- import{u as e}from"./chunk-CN4RHVUE.mjs";import{b as t}from"./chunk-SAAOQW7P.mjs";import{x as r}from"./chunk-KD2IQ32V.mjs";import i from"axios";var T=async o=>{let{apiAddress:s}=t(e()),{data:a}=await i.get(`${s}/${r}`,{params:{hashes:o.join(","),withScResults:!0}});return a};export{T as a};
2
- //# sourceMappingURL=chunk-ENTPR3MV.mjs.map
1
+ import{u as e}from"./chunk-E6LAZEWZ.mjs";import{b as t}from"./chunk-SAAOQW7P.mjs";import{x as r}from"./chunk-KD2IQ32V.mjs";import i from"axios";var T=async o=>{let{apiAddress:s}=t(e()),{data:a}=await i.get(`${s}/${r}`,{params:{hashes:o.join(","),withScResults:!0}});return a};export{T as a};
2
+ //# sourceMappingURL=chunk-5F57CS73.mjs.map
@@ -0,0 +1,2 @@
1
+ import{a as t}from"./chunk-EMIDMARK.mjs";import{s as e}from"./chunk-E6LAZEWZ.mjs";var m=()=>t(e());export{m as a};
2
+ //# sourceMappingURL=chunk-5IV2AU53.mjs.map
@@ -0,0 +1,2 @@
1
+ import{u as o}from"./chunk-E6LAZEWZ.mjs";import{a as t}from"./chunk-LTF535HP.mjs";function n(r=o()){return t(r)}export{n as a};
2
+ //# sourceMappingURL=chunk-5XBGERHC.mjs.map
@@ -0,0 +1,2 @@
1
+ import{a as g}from"./chunk-PSJI2G34.mjs";import{a as i}from"./chunk-2CG6PNPJ.mjs";import{a as c}from"./chunk-FROSOADM.mjs";import{a as d}from"./chunk-VJBLHJYB.mjs";import{a}from"./chunk-RRK6GTWZ.mjs";import{a as p,b as e}from"./chunk-HDRB2QL6.mjs";import{a as r}from"./chunk-RWQNLK3I.mjs";import{a as o}from"./chunk-IPMSVHGJ.mjs";import{rest as t}from"msw";import{setupServer as u}from"msw/node";var s=m=>(R,f,n)=>f(n.status(200),n.json(m)),k=[t.get(`${e.apiAddress}/dapp/config`,s(c)),t.get(`${e.apiAddress}/network/config`,s(i)),t.get(`https://${o.url}/socket.io/`,s(g)),t.get(`${e.apiAddress}/websocket/config`,s(o)),t.get(`${e.apiAddress}/accounts/${p}`,s(a)),t.get(`${e.apiAddress}/accounts/${r.address}`,s(r)),t.get(`${e.apiAddress}/blocks`,s(d))],P=u(...k);export{t as a,s as b,P as c};
2
+ //# sourceMappingURL=chunk-62PJZCUP.mjs.map
@@ -1,2 +1,2 @@
1
- import{a as n}from"./chunk-TO3DGAQU.mjs";import{a as t}from"./chunk-45H34XLJ.mjs";var s=class extends n{constructor({uiDataUpdateEvent:e,uiTag:i}){super({uiDataUpdateEvent:e,uiTag:i});this.isOpen=!1;this.data=this.getInitialData()}async openUI(){this.isOpen&&this.uiElement||(await super.init(),this.setIsSidePanelOpen(!0))}async destroy(){this.setIsSidePanelOpen(!1),await this.uiElement?.closeWithAnimation?.(),super.destroy()}closeUI(){this.resetData(),this.destroy()}setIsSidePanelOpen(e){this.isOpen=e,t(e)}};export{s as a};
2
- //# sourceMappingURL=chunk-SVNWQXWC.mjs.map
1
+ import{a as n}from"./chunk-TO3DGAQU.mjs";import{a as t}from"./chunk-XWQ5GB5Q.mjs";var s=class extends n{constructor({uiDataUpdateEvent:e,uiTag:i}){super({uiDataUpdateEvent:e,uiTag:i});this.isOpen=!1;this.data=this.getInitialData()}async openUI(){this.isOpen&&this.uiElement||(await super.init(),this.setIsSidePanelOpen(!0))}async destroy(){this.setIsSidePanelOpen(!1),await this.uiElement?.closeWithAnimation?.(),super.destroy()}closeUI(){this.resetData(),this.destroy()}setIsSidePanelOpen(e){this.isOpen=e,t(e)}};export{s as a};
2
+ //# sourceMappingURL=chunk-66Z36IEX.mjs.map
@@ -1,2 +1,2 @@
1
- import{l as p,s as e}from"./chunk-CN4RHVUE.mjs";import{c as i}from"./chunk-2CNSQULM.mjs";var y=()=>e().setState(p),T=({address:o,providerType:n})=>{e().setState(({account:r,loginInfo:t})=>{r.address=o,r.publicKey=new i(o).hex(),t&&(t.providerType=n)},!1,"loginAction")};export{y as a,T as b};
2
- //# sourceMappingURL=chunk-QI2QMNTG.mjs.map
1
+ import{l as p,s as e}from"./chunk-E6LAZEWZ.mjs";import{c as i}from"./chunk-2CNSQULM.mjs";var y=()=>e().setState(p),T=({address:o,providerType:n})=>{e().setState(({account:r,loginInfo:t})=>{r.address=o,r.publicKey=new i(o).hex(),t&&(t.providerType=n)},!1,"loginAction")};export{y as a,T as b};
2
+ //# sourceMappingURL=chunk-6G4HQO6W.mjs.map
@@ -1,2 +1,2 @@
1
- import{a as u}from"./chunk-JR3FBBRR.mjs";import{u as s}from"./chunk-CN4RHVUE.mjs";import{e as a}from"./chunk-LTF535HP.mjs";function x(n){let e=s(),o=u(e),c=a(e),t=Object.keys(o).map(Number).reduce((r,m)=>{let i=o[m]?.transactions||[];return Math.max(r,...i.map(l=>l.nonce),0)},0);return t>0&&(t+=1),n==null?Math.max(t,c):Math.max(t||n.nonce,c)}export{x as a};
2
- //# sourceMappingURL=chunk-R7SGL2HW.mjs.map
1
+ import{a as u}from"./chunk-JR3FBBRR.mjs";import{u as s}from"./chunk-E6LAZEWZ.mjs";import{e as a}from"./chunk-LTF535HP.mjs";function x(n){let e=s(),o=u(e),c=a(e),t=Object.keys(o).map(Number).reduce((r,m)=>{let i=o[m]?.transactions||[];return Math.max(r,...i.map(l=>l.nonce),0)},0);return t>0&&(t+=1),n==null?Math.max(t,c):Math.max(t||n.nonce,c)}export{x as a};
2
+ //# sourceMappingURL=chunk-6RUKE4FM.mjs.map
@@ -0,0 +1,2 @@
1
+ import{a as t}from"./chunk-5IV2AU53.mjs";function S(e){return t()(e)}export{S as a};
2
+ //# sourceMappingURL=chunk-7EEGO5S4.mjs.map
@@ -0,0 +1,2 @@
1
+ import{a as u}from"./chunk-WXXLQ6H7.mjs";import{a}from"./chunk-XRPJSGL4.mjs";import{a as i}from"./chunk-6G4HQO6W.mjs";import{c as n}from"./chunk-PPA7AFVD.mjs";import{a as s}from"./chunk-7QCBLUWB.mjs";var p=(o,r)=>{let t=`sdk-dapp-logout-event-${o}`,e=r.getItem(t);e&&o!==e||(r.setItem(t,o),r.removeItem(t))};async function h({provider:o,options:r={shouldBroadcastLogoutAcrossTabs:!0,hasConsentPopup:!1}}){let t=a();r.shouldBroadcastLogoutAcrossTabs&&s.localStorage&&p(t,s.localStorage);try{return i(),r.hasConsentPopup&&o.getType()==="crossWindow"&&o.setShouldShowConsentPopup(!0),n.forEach(g=>g()),n.clear(),u.closeConnectionRef?.(),await o.logout()}catch(e){return console.error("Logging out error:",e),!1}}export{h as a};
2
+ //# sourceMappingURL=chunk-7VRG4RQO.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/providers/DappProvider/helpers/logout/logout.ts"],
4
- "sourcesContent": ["import { subscriptions } from 'constants/storage.constants';\nimport { safeWindow } from 'constants/window.constants';\nimport { CrossWindowProvider } from 'lib/sdkWebWalletCrossWindowProvider';\nimport { getAddress } from 'methods/account/getAddress';\nimport { websocketManager } from 'methods/initApp/websocket/registerWebsocket';\nimport {\n IProvider,\n ProviderTypeEnum\n} from 'providers/types/providerFactory.types';\nimport { logoutAction } from 'store/actions/sharedActions/sharedActions';\n\nexport type LogoutPropsType = {\n shouldAttemptReLogin?: boolean;\n shouldBroadcastLogoutAcrossTabs?: boolean;\n /*\n * Only used for web-wallet crossWindow login\n */\n hasConsentPopup?: boolean;\n};\n\ninterface IProviderLogout {\n provider: IProvider;\n options?: LogoutPropsType;\n}\n\nconst broadcastLogoutAcrossTabs = (address: string, localStorage: Storage) => {\n const logoutEventKey = `sdk-dapp-logout-event-${address}`;\n const storedAddress = localStorage.getItem(logoutEventKey);\n\n if (storedAddress && address !== storedAddress) {\n return;\n }\n\n localStorage.setItem(logoutEventKey, address);\n localStorage.removeItem(logoutEventKey);\n};\n\nexport async function logout({\n provider,\n options = {\n shouldBroadcastLogoutAcrossTabs: true,\n hasConsentPopup: false\n }\n}: IProviderLogout) {\n let address = getAddress();\n\n if (options.shouldBroadcastLogoutAcrossTabs && safeWindow.localStorage) {\n broadcastLogoutAcrossTabs(address, safeWindow.localStorage);\n }\n try {\n logoutAction();\n\n if (\n options.hasConsentPopup &&\n provider.getType() === ProviderTypeEnum.crossWindow\n ) {\n (provider as unknown as CrossWindowProvider).setShouldShowConsentPopup(\n true\n );\n }\n\n // Clear all active subscriptions on logout\n subscriptions.forEach((unsubscribe) => unsubscribe());\n subscriptions.clear();\n websocketManager.closeConnectionRef?.();\n await provider.logout();\n } catch (err) {\n console.error('Logging out error:', err);\n }\n}\n"],
5
- "mappings": "wMAyBA,IAAMA,EAA4B,CAACC,EAAiBC,IAA0B,CAC5E,IAAMC,EAAiB,yBAAyBF,CAAO,GACjDG,EAAgBF,EAAa,QAAQC,CAAc,EAErDC,GAAiBH,IAAYG,IAIjCF,EAAa,QAAQC,EAAgBF,CAAO,EAC5CC,EAAa,WAAWC,CAAc,EACxC,EAEA,eAAsBE,EAAO,CAC3B,SAAAC,EACA,QAAAC,EAAU,CACR,gCAAiC,GACjC,gBAAiB,EACnB,CACF,EAAoB,CAClB,IAAIN,EAAUO,EAAW,EAErBD,EAAQ,iCAAmCE,EAAW,cACxDT,EAA0BC,EAASQ,EAAW,YAAY,EAE5D,GAAI,CACFC,EAAa,EAGXH,EAAQ,iBACRD,EAAS,QAAQ,mBAEhBA,EAA4C,0BAC3C,EACF,EAIFK,EAAc,QAASC,GAAgBA,EAAY,CAAC,EACpDD,EAAc,MAAM,EACpBE,EAAiB,qBAAqB,EACtC,MAAMP,EAAS,OAAO,CACxB,OAASQ,EAAK,CACZ,QAAQ,MAAM,qBAAsBA,CAAG,CACzC,CACF",
4
+ "sourcesContent": ["import { subscriptions } from 'constants/storage.constants';\nimport { safeWindow } from 'constants/window.constants';\nimport { CrossWindowProvider } from 'lib/sdkWebWalletCrossWindowProvider';\nimport { getAddress } from 'methods/account/getAddress';\nimport { websocketManager } from 'methods/initApp/websocket/registerWebsocket';\nimport {\n IProvider,\n ProviderTypeEnum\n} from 'providers/types/providerFactory.types';\nimport { logoutAction } from 'store/actions/sharedActions/sharedActions';\n\nexport type LogoutPropsType = {\n shouldAttemptReLogin?: boolean;\n shouldBroadcastLogoutAcrossTabs?: boolean;\n /*\n * Only used for web-wallet crossWindow login\n */\n hasConsentPopup?: boolean;\n};\n\ninterface IProviderLogout {\n provider: IProvider;\n options?: LogoutPropsType;\n}\n\nconst broadcastLogoutAcrossTabs = (address: string, localStorage: Storage) => {\n const logoutEventKey = `sdk-dapp-logout-event-${address}`;\n const storedAddress = localStorage.getItem(logoutEventKey);\n\n if (storedAddress && address !== storedAddress) {\n return;\n }\n\n localStorage.setItem(logoutEventKey, address);\n localStorage.removeItem(logoutEventKey);\n};\n\nexport async function logout({\n provider,\n options = {\n shouldBroadcastLogoutAcrossTabs: true,\n hasConsentPopup: false\n }\n}: IProviderLogout): Promise<boolean> {\n let address = getAddress();\n\n if (options.shouldBroadcastLogoutAcrossTabs && safeWindow.localStorage) {\n broadcastLogoutAcrossTabs(address, safeWindow.localStorage);\n }\n try {\n logoutAction();\n\n if (\n options.hasConsentPopup &&\n provider.getType() === ProviderTypeEnum.crossWindow\n ) {\n (provider as unknown as CrossWindowProvider).setShouldShowConsentPopup(\n true\n );\n }\n\n // Clear all active subscriptions on logout\n subscriptions.forEach((unsubscribe) => unsubscribe());\n subscriptions.clear();\n websocketManager.closeConnectionRef?.();\n const isLoggedOut = await provider.logout();\n return isLoggedOut;\n } catch (err) {\n console.error('Logging out error:', err);\n return false;\n }\n}\n"],
5
+ "mappings": "wMAyBA,IAAMA,EAA4B,CAACC,EAAiBC,IAA0B,CAC5E,IAAMC,EAAiB,yBAAyBF,CAAO,GACjDG,EAAgBF,EAAa,QAAQC,CAAc,EAErDC,GAAiBH,IAAYG,IAIjCF,EAAa,QAAQC,EAAgBF,CAAO,EAC5CC,EAAa,WAAWC,CAAc,EACxC,EAEA,eAAsBE,EAAO,CAC3B,SAAAC,EACA,QAAAC,EAAU,CACR,gCAAiC,GACjC,gBAAiB,EACnB,CACF,EAAsC,CACpC,IAAIN,EAAUO,EAAW,EAErBD,EAAQ,iCAAmCE,EAAW,cACxDT,EAA0BC,EAASQ,EAAW,YAAY,EAE5D,GAAI,CACF,OAAAC,EAAa,EAGXH,EAAQ,iBACRD,EAAS,QAAQ,mBAEhBA,EAA4C,0BAC3C,EACF,EAIFK,EAAc,QAASC,GAAgBA,EAAY,CAAC,EACpDD,EAAc,MAAM,EACpBE,EAAiB,qBAAqB,EAClB,MAAMP,EAAS,OAAO,CAE5C,OAASQ,EAAK,CACZ,eAAQ,MAAM,qBAAsBA,CAAG,EAChC,EACT,CACF",
6
6
  "names": ["broadcastLogoutAcrossTabs", "address", "localStorage", "logoutEventKey", "storedAddress", "logout", "provider", "options", "getAddress", "safeWindow", "logoutAction", "subscriptions", "unsubscribe", "websocketManager", "err"]
7
7
  }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=chunk-AKDRHJVP.mjs.map
@@ -1,2 +1,2 @@
1
- import{a as g}from"./chunk-PLFZHJOX.mjs";import{a as k}from"./chunk-WGOZYG4T.mjs";import{s as f}from"./chunk-CN4RHVUE.mjs";import{d as b}from"./chunk-LTF535HP.mjs";import{c as n}from"./chunk-PPA7AFVD.mjs";import{b as i}from"./chunk-GGBMHKR4.mjs";async function N(){let o=f(),I=g(),s=null,t=null,l=b(o.getState())?.timestamp,c=()=>{k()},u=()=>{s??=setInterval(c,I)},m=()=>{s&&(clearInterval(s),s=null)},p=()=>{m();let a=o.subscribe(({account:{websocketEvent:e}})=>{e?.message&&l!==e.timestamp&&(l=e.timestamp,c())});n.set("websocketEventReceived",a)},S=()=>{i.status!=="not_initialized"||t||(t=setInterval(()=>{i.status==="completed"&&(clearInterval(t),t=null,p())},1e3))};c();let r=()=>{m(),t&&(clearInterval(t),t=null)},v=o.subscribe(({account:{address:a},config:{websocketStatus:e}},T)=>{if(T.config.websocketStatus!==e)switch(e){case"completed":p();break;case"pending":u(),S();break;default:a?u():r();break}});return n.set("websocketStatusChanged",v),n.set("websocketEventReceived",r),{stopTransactionsTracking:r}}export{N as a};
2
- //# sourceMappingURL=chunk-M3C5NS6M.mjs.map
1
+ import{a as g}from"./chunk-NERW4V4C.mjs";import{a as k}from"./chunk-O4TATYJF.mjs";import{s as f}from"./chunk-E6LAZEWZ.mjs";import{d as b}from"./chunk-LTF535HP.mjs";import{c as n}from"./chunk-PPA7AFVD.mjs";import{b as i}from"./chunk-GGBMHKR4.mjs";async function N(){let o=f(),I=g(),s=null,t=null,l=b(o.getState())?.timestamp,c=()=>{k()},u=()=>{s??=setInterval(c,I)},m=()=>{s&&(clearInterval(s),s=null)},p=()=>{m();let a=o.subscribe(({account:{websocketEvent:e}})=>{e?.message&&l!==e.timestamp&&(l=e.timestamp,c())});n.set("websocketEventReceived",a)},S=()=>{i.status!=="not_initialized"||t||(t=setInterval(()=>{i.status==="completed"&&(clearInterval(t),t=null,p())},1e3))};c();let r=()=>{m(),t&&(clearInterval(t),t=null)},v=o.subscribe(({account:{address:a},config:{websocketStatus:e}},T)=>{if(T.config.websocketStatus!==e)switch(e){case"completed":p();break;case"pending":u(),S();break;default:a?u():r();break}});return n.set("websocketStatusChanged",v),n.set("websocketEventReceived",r),{stopTransactionsTracking:r}}export{N as a};
2
+ //# sourceMappingURL=chunk-ASXWZ65B.mjs.map
@@ -1,2 +1,2 @@
1
- import{b as s}from"./chunk-6UIF2KFV.mjs";import{a as d}from"./chunk-OA5BWGGO.mjs";import{a as i}from"./chunk-WE7YOBO7.mjs";var a=({loginToken:t,version:r})=>{if(!t||!r)return null;let{ledgerWithUsernames:u}=s(r),e=i(t);if(e==null)return null;let n="Confirm Ledger Address",o="Authorise Authentication Token";if(u){let m=d(e.ttl);return{data:`${e.origin} for ${m}.`,confirmAddressText:n,authText:o}}return{data:t,confirmAddressText:n,authText:o}};export{a};
2
- //# sourceMappingURL=chunk-3OKWBJFM.mjs.map
1
+ import{a as d}from"./chunk-OA5BWGGO.mjs";import{b as s}from"./chunk-6UIF2KFV.mjs";import{a as i}from"./chunk-WE7YOBO7.mjs";var a=({loginToken:t,version:r})=>{if(!t||!r)return null;let{ledgerWithUsernames:u}=s(r),e=i(t);if(e==null)return null;let n="Confirm Ledger Address",o="Authorise Authentication Token";if(u){let m=d(e.ttl);return{data:`${e.origin} for ${m}.`,confirmAddressText:n,authText:o}}return{data:t,confirmAddressText:n,authText:o}};export{a};
2
+ //# sourceMappingURL=chunk-B2RDSGON.mjs.map
@@ -1,2 +1,2 @@
1
- import{a as t}from"./chunk-ZLBHLHQ3.mjs";import{a as d}from"./chunk-SVNWQXWC.mjs";import{a as l}from"./chunk-2X7ENE6Y.mjs";import{a}from"./chunk-MCOVQEK7.mjs";var e=class e extends d{constructor(){super({uiTag:"mvx-unlock-panel",uiDataUpdateEvent:"OPEN"});this.initialData=null;this.openUnlockPanel=async()=>{this.data=e.getProvidersList(),await this.openUI(),this.notifyDataUpdate()};this.setupEventListeners=async()=>{this.eventBus&&(this.subscribeToEventBus("LOGIN",this.handleLogin),this.subscribeToEventBus("CANCEL_LOGIN",this.handleCancelLogin),this.subscribeToEventBus("CLOSE",this.handleCloseUI))};this.handleCloseUI=async i=>{!i?.isLoginFinished&&e.onClose&&e.onClose(),this.closeUI()};this.handleLogin=async({type:i,anchor:o})=>{if(!e.loginHandler)throw new Error("Login callback not initialized. Please call `init()` first.");try{this.isSimpleLoginCallback(e.loginHandler)?(await(await t.create({type:i,anchor:o})).login(),e.loginHandler()):e.loginHandler({type:i,anchor:o}),await this.handleCloseUI({isLoginFinished:!0})}catch(r){console.error(r),this.eventBus?.publish("CANCEL_IN_PROVIDER",this.data)}};this.handleCancelLogin=async()=>{await t.destroy()};this.isSimpleLoginCallback=i=>i.length===0;this.data=this.initialData}static getInstance(){return e.instance||(e.instance=new e),e.instance}static init(i){return this.loginHandler=i.loginHandler,this.allowedProviders=i.allowedProviders,i.onClose&&(this.onClose=i.onClose),this.getInstance()}static getProvidersList(){let i=t.customProviders,r=[...Object.values(a).filter(n=>n!==""&&n!=="webview"),...i.map(n=>n.type)];return(this.allowedProviders?this.allowedProviders.filter(n=>r.includes(n)):r).map(n=>{let s=i.find(v=>v.type===n);return s||{name:l[n]??n,type:n}})}};e.loginHandler=null,e.onClose=null,e.allowedProviders=null;var c=e;export{c as a};
2
- //# sourceMappingURL=chunk-643LVXSN.mjs.map
1
+ import{a as t}from"./chunk-TF4RGU5H.mjs";import{a as d}from"./chunk-66Z36IEX.mjs";import{a as l}from"./chunk-2X7ENE6Y.mjs";import{a}from"./chunk-MCOVQEK7.mjs";var e=class e extends d{constructor(){super({uiTag:"mvx-unlock-panel",uiDataUpdateEvent:"OPEN"});this.initialData=null;this.openUnlockPanel=async()=>{this.data=e.getProvidersList(),await this.openUI(),this.notifyDataUpdate()};this.setupEventListeners=async()=>{this.eventBus&&(this.subscribeToEventBus("LOGIN",this.handleLogin),this.subscribeToEventBus("CANCEL_LOGIN",this.handleCancelLogin),this.subscribeToEventBus("CLOSE",this.handleCloseUI))};this.handleCloseUI=async i=>{!i?.isLoginFinished&&e.onClose&&e.onClose(),this.closeUI()};this.handleLogin=async({type:i,anchor:o})=>{if(!e.loginHandler)throw new Error("Login callback not initialized. Please call `init()` first.");try{this.isSimpleLoginCallback(e.loginHandler)?(await(await t.create({type:i,anchor:o})).login(),e.loginHandler()):e.loginHandler({type:i,anchor:o}),await this.handleCloseUI({isLoginFinished:!0})}catch(r){console.error(r),this.eventBus?.publish("CANCEL_IN_PROVIDER",this.data)}};this.handleCancelLogin=async()=>{await t.destroy()};this.isSimpleLoginCallback=i=>i.length===0;this.data=this.initialData}static getInstance(){return e.instance||(e.instance=new e),e.instance}static init(i){return this.loginHandler=i.loginHandler,this.allowedProviders=i.allowedProviders,i.onClose&&(this.onClose=i.onClose),this.getInstance()}static getProvidersList(){let i=t.customProviders,r=[...Object.values(a).filter(n=>n!==""&&n!=="webview"),...i.map(n=>n.type)];return(this.allowedProviders?this.allowedProviders.filter(n=>r.includes(n)):r).map(n=>{let s=i.find(v=>v.type===n);return s||{name:l[n]??n,type:n}})}};e.loginHandler=null,e.onClose=null,e.allowedProviders=null;var c=e;export{c as a};
2
+ //# sourceMappingURL=chunk-BIVUIC53.mjs.map
@@ -0,0 +1,2 @@
1
+ import{p as i}from"./chunk-4LFIRWUJ.mjs";var e=async()=>{let o=i();if(o.getType()==="crossWindow"){let r=o;await r.cancelAction(),await r.dispose()}};export{e as a};
2
+ //# sourceMappingURL=chunk-BMAAIEFF.mjs.map
@@ -1,2 +1,2 @@
1
- import{a as e}from"./chunk-VLHG5NVE.mjs";import{a as s}from"./chunk-7QCBLUWB.mjs";import{WebviewProvider as t}from"@multiversx/sdk-webview-provider/out/WebviewProvider";var n=class extends e{constructor(i){super(i?.address);this.provider=null;this._signTransactions=null;this._signMessage=null;this.createProvider=async()=>(this.initialize(),this.provider||(this.provider=t.getInstance({resetStateCallback:()=>{s.localStorage?.clear?.(),s.sessionStorage?.clear?.()}}),await this.provider.init()),this._signTransactions=this.provider.signTransactions.bind(this.provider),this._signMessage=this.provider.signMessage.bind(this.provider),this._login=this.provider.login.bind(this.provider),this.buildProvider());this.buildProvider=()=>{if(!this.provider)throw new Error("Provider is not initialized.");let i=this.provider;return i.setAccount({address:this.address}),i.login=this.login,i.signTransactions=this.signTransactions,i.signMessage=this.signMessage,i.cancelLogin=this.cancelLogin,i};this.signTransactions=async i=>{if(!this.provider||!this._signTransactions)throw new Error("Provider is not initialized.");try{return await this._signTransactions(i)||[]}catch(r){throw this.provider.cancelAction(),r}};this.signMessage=async i=>{if(!this.provider||!this._signMessage)throw new Error("Provider is not initialized.");try{return await this._signMessage(i)}catch(r){throw this.provider.cancelAction(),r}}}cancelAction(){return this.provider?.cancelAction?.bind(this.provider)()}};export{n as a};
2
- //# sourceMappingURL=chunk-GUHNF5RM.mjs.map
1
+ import{a as e}from"./chunk-LWWYE4ZP.mjs";import{a as s}from"./chunk-7QCBLUWB.mjs";import{WebviewProvider as t}from"@multiversx/sdk-webview-provider/out/WebviewProvider";var n=class extends e{constructor(i){super(i?.address);this.provider=null;this._signTransactions=null;this._signMessage=null;this.createProvider=async()=>(this.initialize(),this.provider||(this.provider=t.getInstance({resetStateCallback:()=>{s.localStorage?.clear?.(),s.sessionStorage?.clear?.()}}),await this.provider.init()),this._signTransactions=this.provider.signTransactions.bind(this.provider),this._signMessage=this.provider.signMessage.bind(this.provider),this._login=this.provider.login.bind(this.provider),this.buildProvider());this.buildProvider=()=>{if(!this.provider)throw new Error("Provider is not initialized.");let i=this.provider;return i.setAccount({address:this.address}),i.login=this.login,i.signTransactions=this.signTransactions,i.signMessage=this.signMessage,i.cancelLogin=this.cancelLogin,i};this.signTransactions=async i=>{if(!this.provider||!this._signTransactions)throw new Error("Provider is not initialized.");try{return await this._signTransactions(i)||[]}catch(r){throw this.provider.cancelAction(),r}};this.signMessage=async i=>{if(!this.provider||!this._signMessage)throw new Error("Provider is not initialized.");try{return await this._signMessage(i)}catch(r){throw this.provider.cancelAction(),r}}}cancelAction(){return this.provider?.cancelAction?.bind(this.provider)()}};export{n as a};
2
+ //# sourceMappingURL=chunk-D2PIXNOV.mjs.map
@@ -1,2 +1,2 @@
1
- import{a as f}from"./chunk-FRDR4A7Z.mjs";import{a as g}from"./chunk-BQL3NILA.mjs";import{p as c}from"./chunk-57KVKSEC.mjs";import{u as n}from"./chunk-CN4RHVUE.mjs";import{g as a}from"./chunk-LTF535HP.mjs";import{e as l}from"./chunk-VNLGNNIL.mjs";import{HWProvider as m}from"@multiversx/sdk-hw-provider";async function A(u){let v=g(),d=u?.shouldInitProvider||!v,o=l(n()),t=a(n()),r=c(),i=new m,I=async()=>{let e=o?.index!=null;if(r instanceof m&&r.isInitialized())return e&&await r.setAddressIndex(o.index),r;if(d&&!await i.init())throw new Error("Failed to initialize Ledger Provider");return e&&await i.setAddressIndex(o.index),i};try{if(!d&&t)return{ledgerProvider:i,ledgerConfig:{version:t.version,dataEnabled:t.hasContractDataEnabled}};let e=await I(),s=await f(e);return{ledgerProvider:e,ledgerConfig:s}}catch(e){throw console.error("Could not initialize ledger app",e),e}}export{A as a};
2
- //# sourceMappingURL=chunk-Y2GZNJKO.mjs.map
1
+ import{a as f}from"./chunk-FRDR4A7Z.mjs";import{a as g}from"./chunk-IXJIAULR.mjs";import{p as c}from"./chunk-4LFIRWUJ.mjs";import{u as n}from"./chunk-E6LAZEWZ.mjs";import{g as a}from"./chunk-LTF535HP.mjs";import{e as l}from"./chunk-VNLGNNIL.mjs";import{HWProvider as m}from"@multiversx/sdk-hw-provider";async function A(u){let v=g(),d=u?.shouldInitProvider||!v,o=l(n()),t=a(n()),r=c(),i=new m,I=async()=>{let e=o?.index!=null;if(r instanceof m&&r.isInitialized())return e&&await r.setAddressIndex(o.index),r;if(d&&!await i.init())throw new Error("Failed to initialize Ledger Provider");return e&&await i.setAddressIndex(o.index),i};try{if(!d&&t)return{ledgerProvider:i,ledgerConfig:{version:t.version,dataEnabled:t.hasContractDataEnabled}};let e=await I(),s=await f(e);return{ledgerProvider:e,ledgerConfig:s}}catch(e){throw console.error("Could not initialize ledger app",e),e}}export{A as a};
2
+ //# sourceMappingURL=chunk-D7HA7LH7.mjs.map
@@ -1,2 +1,2 @@
1
- import{a as d}from"./chunk-VLHG5NVE.mjs";import{a as c}from"./chunk-RCBOU6TT.mjs";import{a as p}from"./chunk-DGXP3AZR.mjs";import{a}from"./chunk-CBIH5QMT.mjs";import{u as o}from"./chunk-CN4RHVUE.mjs";import{b as n}from"./chunk-SAAOQW7P.mjs";import{a as e}from"./chunk-2X7ENE6Y.mjs";import{IframeProvider as l}from"@multiversx/sdk-web-wallet-iframe-provider/out";var g=class extends d{constructor({type:r,address:i}){super(i);this.provider=null;this.type=null;this._signTransactions=null;this._signMessage=null;this.createProvider=async()=>{this.initialize();let r=n(o());if(!this.type)throw new Error("Invalid provider type.");return this.provider||(this.provider=l.getInstance(),await this.provider.init()),this.provider.setLoginType(this.type),this.provider.setWalletUrl(String(r.iframeWalletAddress)),this._signTransactions=this.provider.signTransactions.bind(this.provider),this._signMessage=this.provider.signMessage.bind(this.provider),this._login=this.provider.login.bind(this.provider),this.buildProvider()};this.buildProvider=()=>{let{address:r}=a();if(!this.provider)throw new Error("Provider is not initialized.");let i=this.provider;return i.setAccount({address:this.address||r}),i.signTransactions=this.signTransactions,i.signMessage=this.signMessage,i.login=this.login,i.cancelLogin=this.cancelLogin,i};this.signTransactions=async r=>{if(!this.provider||!this._signTransactions)throw new Error("Provider is not initialized.");let{manager:i,onClose:s}=await p({cancelAction:this.provider.cancelAction.bind(this.provider)});i.subscribeToEventBus("CLOSE_PENDING_TRANSACTIONS",s),this.type&&i.updateData({name:e.iframe,type:this.type});try{return await this._signTransactions(r)}catch(t){throw await s({shouldCancelAction:!0}),t}finally{i.closeUI()}};this.signMessage=async r=>{if(!this.provider||!this._signMessage||!this.type)throw new Error("Provider is not initialized.");return await c({message:r,handleSignMessage:this._signMessage.bind(this.provider),cancelAction:this.provider.cancelAction.bind(this.provider),providerType:e[this.type]})};this.type=r}cancelAction(){return this.provider?.cancelAction?.bind(this.provider)()}};export{g as a};
2
- //# sourceMappingURL=chunk-67X3ORNS.mjs.map
1
+ import{a as d}from"./chunk-LWWYE4ZP.mjs";import{a as c}from"./chunk-QF6MS77T.mjs";import{a as p}from"./chunk-II6G5P3V.mjs";import{a}from"./chunk-5XBGERHC.mjs";import{u as o}from"./chunk-E6LAZEWZ.mjs";import{b as n}from"./chunk-SAAOQW7P.mjs";import{a as e}from"./chunk-2X7ENE6Y.mjs";import{IframeProvider as l}from"@multiversx/sdk-web-wallet-iframe-provider/out";var g=class extends d{constructor({type:r,address:i}){super(i);this.provider=null;this.type=null;this._signTransactions=null;this._signMessage=null;this.createProvider=async()=>{this.initialize();let r=n(o());if(!this.type)throw new Error("Invalid provider type.");return this.provider||(this.provider=l.getInstance(),await this.provider.init()),this.provider.setLoginType(this.type),this.provider.setWalletUrl(String(r.iframeWalletAddress)),this._signTransactions=this.provider.signTransactions.bind(this.provider),this._signMessage=this.provider.signMessage.bind(this.provider),this._login=this.provider.login.bind(this.provider),this.buildProvider()};this.buildProvider=()=>{let{address:r}=a();if(!this.provider)throw new Error("Provider is not initialized.");let i=this.provider;return i.setAccount({address:this.address||r}),i.signTransactions=this.signTransactions,i.signMessage=this.signMessage,i.login=this.login,i.cancelLogin=this.cancelLogin,i};this.signTransactions=async r=>{if(!this.provider||!this._signTransactions)throw new Error("Provider is not initialized.");let{manager:i,onClose:s}=await p({cancelAction:this.provider.cancelAction.bind(this.provider)});i.subscribeToEventBus("CLOSE_PENDING_TRANSACTIONS",s),this.type&&i.updateData({name:e.iframe,type:this.type});try{return await this._signTransactions(r)}catch(t){throw await s({shouldCancelAction:!0}),t}finally{i.closeUI()}};this.signMessage=async r=>{if(!this.provider||!this._signMessage||!this.type)throw new Error("Provider is not initialized.");return await c({message:r,handleSignMessage:this._signMessage.bind(this.provider),cancelAction:this.provider.cancelAction.bind(this.provider),providerType:e[this.type]})};this.type=r}cancelAction(){return this.provider?.cancelAction?.bind(this.provider)()}};export{g as a};
2
+ //# sourceMappingURL=chunk-DCKHP6C2.mjs.map
@@ -1,2 +1,2 @@
1
- import{a as t}from"./chunk-SVNWQXWC.mjs";var e=class n extends t{constructor(){super({uiDataUpdateEvent:"DATA_UPDATE_PENDING_TRANSACTIONS",uiTag:"mvx-pending-transactions-panel"});this.initialData=null;this.data=this.initialData}static getInstance(){return n.instance||(n.instance=new n),n.instance}isPendingTransactionsOpen(){return this.isOpen}async setupEventListeners(){this.eventBus&&this.subscribeToEventBus("CLOSE_PENDING_TRANSACTIONS",this.closeUI.bind(this))}};export{e as a};
2
- //# sourceMappingURL=chunk-X7AQOVLN.mjs.map
1
+ import{a as t}from"./chunk-66Z36IEX.mjs";var e=class n extends t{constructor(){super({uiDataUpdateEvent:"DATA_UPDATE_PENDING_TRANSACTIONS",uiTag:"mvx-pending-transactions-panel"});this.initialData=null;this.data=this.initialData}static getInstance(){return n.instance||(n.instance=new n),n.instance}isPendingTransactionsOpen(){return this.isOpen}async setupEventListeners(){this.eventBus&&this.subscribeToEventBus("CLOSE_PENDING_TRANSACTIONS",this.closeUI.bind(this))}};export{e as a};
2
+ //# sourceMappingURL=chunk-DP7J3L4E.mjs.map
@@ -0,0 +1,2 @@
1
+ import{a}from"./chunk-7QCBLUWB.mjs";var o=()=>a.localStorage;export{o as a};
2
+ //# sourceMappingURL=chunk-DTI4TQ2I.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/store/storage/storageCallback.ts"],
4
+ "sourcesContent": ["import { StateStorage } from 'zustand/middleware';\nimport { safeWindow } from 'constants/window.constants';\n\nexport type StorageCallback = () => StateStorage;\n\nexport const defaultStorageCallback: StorageCallback = () =>\n safeWindow.localStorage;\n"],
5
+ "mappings": "oCAKO,IAAMA,EAA0C,IACrDC,EAAW",
6
+ "names": ["defaultStorageCallback", "safeWindow"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{b as s,f as l}from"./chunk-LTF535HP.mjs";import{f as a}from"./chunk-VNLGNNIL.mjs";import{a as d,b as L}from"./chunk-NLRDRI7Q.mjs";import{a as k}from"./chunk-RZ4YTKD7.mjs";import{a as v}from"./chunk-KRWR77QE.mjs";import{a as T}from"./chunk-SUN3MVLZ.mjs";import{b as y}from"./chunk-A7FTKX2A.mjs";import{a as g,b as c}from"./chunk-TYYA6E7F.mjs";import{a as x}from"./chunk-2DNGCNYM.mjs";import{a as f,b as m}from"./chunk-X4XULIVT.mjs";import{a as S,b as u}from"./chunk-VKEESSBI.mjs";import{a as I}from"./chunk-NB7A4C7L.mjs";import{c as p}from"./chunk-2CNSQULM.mjs";import{createJSONStorage as h,devtools as O,persist as V}from"zustand/middleware";import{immer as H}from"zustand/middleware/immer";import{createStore as N}from"zustand/vanilla";var A=e=>{e.account=g,e.loginInfo=f,e.transactions=d,e.toasts=S};function R(){return new Date().setHours(new Date().getHours()+24)}function w(e){if(e==null){E();return}b(e)}var C=e=>{let t=l(e),n=a(e),{address:i,publicKey:M}=s(e);if(i&&M!==new p(i).hex()&&A(e),!t)return;if(n==null){w(R());return}let P=Date.now();n-P<0&&(w(null),o().setState(A))};var W=(e,t)=>{C(e)};var z=e=>{let t=N(O(V(H((...n)=>({network:x(...n),account:c(...n),loginInfo:m(...n),config:T(...n),transactions:L(...n),toasts:u(...n),cache:y(...n),ui:I(...n)})),{name:"sdk-dapp-store",storage:h(e)})));return t.subscribe(W),t},r,D=e=>{r=e},o=()=>(r||D(z(()=>new v)),r),ae=(e=k)=>D(z(e)),pe=()=>o().getState();var fe=e=>o().setState(({loginInfo:t})=>{t.providerType=e},!1,"setProviderType"),me=e=>o().setState(({loginInfo:t})=>{t.tokenLogin=e},!1,"setTokenLogin"),Se=e=>o().setState(({loginInfo:t})=>{if(t.tokenLogin!=null){t.tokenLogin.loginToken=e;return}t.tokenLogin={loginToken:e}},!1,"setLoginToken"),ue=e=>o().setState(({loginInfo:t})=>{t?.tokenLogin!=null&&(t.tokenLogin.signature=e)},!1,"setTokenLoginSignature"),de=e=>o().setState(({loginInfo:t})=>{t.walletLogin=e},!1,"setWalletLogin"),Le=e=>o().setState(({loginInfo:t})=>{t.walletConnectLogin=e},!1,"setWalletConnectLogin"),xe=e=>o().setState(({loginInfo:t})=>{t.ledgerLogin=e},!1,"setLedgerLogin"),Te=e=>o().setState(({loginInfo:t})=>{t.logoutRoute=e},!1,"setLogoutRoute"),ye=e=>o().setState(({loginInfo:t})=>{t.isWalletConnectV2Initialized=e},!1,"setIsWalletConnectV2Initialized"),E=()=>o().setState(({loginInfo:e})=>{e.loginExpiresAt=null},!1,"removeLoginExpiresAt"),b=e=>o().setState(({loginInfo:t})=>{t.loginExpiresAt=e},!1,"addLoginExpiresAt");export{fe as a,me as b,Se as c,ue as d,de as e,Le as f,xe as g,Te as h,ye as i,E as j,b as k,A as l,R as m,w as n,C as o,W as p,z as q,D as r,o as s,ae as t,pe as u};
2
- //# sourceMappingURL=chunk-CN4RHVUE.mjs.map
1
+ import{b as s,f as l}from"./chunk-LTF535HP.mjs";import{f as a}from"./chunk-VNLGNNIL.mjs";import{a as d,b as L}from"./chunk-NLRDRI7Q.mjs";import{a as k}from"./chunk-DTI4TQ2I.mjs";import{a as v}from"./chunk-KRWR77QE.mjs";import{b as y}from"./chunk-A7FTKX2A.mjs";import{a as g,b as c}from"./chunk-TYYA6E7F.mjs";import{a as x}from"./chunk-2DNGCNYM.mjs";import{a as f,b as m}from"./chunk-X4XULIVT.mjs";import{a as T}from"./chunk-SUN3MVLZ.mjs";import{a as S,b as u}from"./chunk-VKEESSBI.mjs";import{a as I}from"./chunk-NB7A4C7L.mjs";import{c as p}from"./chunk-2CNSQULM.mjs";import{createJSONStorage as h,devtools as O,persist as V}from"zustand/middleware";import{immer as H}from"zustand/middleware/immer";import{createStore as N}from"zustand/vanilla";var A=e=>{e.account=g,e.loginInfo=f,e.transactions=d,e.toasts=S};function R(){return new Date().setHours(new Date().getHours()+24)}function w(e){if(e==null){E();return}b(e)}var C=e=>{let t=l(e),n=a(e),{address:i,publicKey:M}=s(e);if(i&&M!==new p(i).hex()&&A(e),!t)return;if(n==null){w(R());return}let P=Date.now();n-P<0&&(w(null),o().setState(A))};var W=(e,t)=>{C(e)};var z=e=>{let t=N(O(V(H((...n)=>({network:x(...n),account:c(...n),loginInfo:m(...n),config:T(...n),transactions:L(...n),toasts:u(...n),cache:y(...n),ui:I(...n)})),{name:"sdk-dapp-store",storage:h(e)})));return t.subscribe(W),t},r,D=e=>{r=e},o=()=>(r||D(z(()=>new v)),r),ae=(e=k)=>D(z(e)),pe=()=>o().getState();var fe=e=>o().setState(({loginInfo:t})=>{t.providerType=e},!1,"setProviderType"),me=e=>o().setState(({loginInfo:t})=>{t.tokenLogin=e},!1,"setTokenLogin"),Se=e=>o().setState(({loginInfo:t})=>{if(t.tokenLogin!=null){t.tokenLogin.loginToken=e;return}t.tokenLogin={loginToken:e}},!1,"setLoginToken"),ue=e=>o().setState(({loginInfo:t})=>{t?.tokenLogin!=null&&(t.tokenLogin.signature=e)},!1,"setTokenLoginSignature"),de=e=>o().setState(({loginInfo:t})=>{t.walletLogin=e},!1,"setWalletLogin"),Le=e=>o().setState(({loginInfo:t})=>{t.walletConnectLogin=e},!1,"setWalletConnectLogin"),xe=e=>o().setState(({loginInfo:t})=>{t.ledgerLogin=e},!1,"setLedgerLogin"),Te=e=>o().setState(({loginInfo:t})=>{t.logoutRoute=e},!1,"setLogoutRoute"),ye=e=>o().setState(({loginInfo:t})=>{t.isWalletConnectV2Initialized=e},!1,"setIsWalletConnectV2Initialized"),E=()=>o().setState(({loginInfo:e})=>{e.loginExpiresAt=null},!1,"removeLoginExpiresAt"),b=e=>o().setState(({loginInfo:t})=>{t.loginExpiresAt=e},!1,"addLoginExpiresAt");export{fe as a,me as b,Se as c,ue as d,de as e,Le as f,xe as g,Te as h,ye as i,E as j,b as k,A as l,R as m,w as n,C as o,W as p,z as q,D as r,o as s,ae as t,pe as u};
2
+ //# sourceMappingURL=chunk-E6LAZEWZ.mjs.map