@multiversx/sdk-dapp 5.5.0 → 5.5.2
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.
- package/README.md +51 -6
- package/out/__chunks__/{chunk-IAHAAQ4N.mjs → chunk-2M2GV2W7.mjs} +2 -2
- package/out/__chunks__/chunk-3CO6LABA.mjs +2 -0
- package/out/__chunks__/chunk-3OH4D5BR.mjs +2 -0
- package/out/__chunks__/{chunk-XHZWVRMA.mjs → chunk-3Q7KW43M.mjs} +2 -2
- package/out/__chunks__/chunk-4BOBCAS4.mjs +2 -0
- package/out/__chunks__/{chunk-ZPRRRKH2.mjs → chunk-4HRP3IO5.mjs} +2 -2
- package/out/__chunks__/{chunk-A7F53AUI.mjs → chunk-4RI5BDTQ.mjs} +2 -2
- package/out/__chunks__/{chunk-V5RYJVEZ.mjs → chunk-55IS6LOB.mjs} +2 -2
- package/out/__chunks__/{chunk-ACY76UCX.mjs → chunk-56LVHY6G.mjs} +2 -2
- package/out/__chunks__/{chunk-JA27GJYB.mjs → chunk-573LAOYN.mjs} +2 -2
- package/out/__chunks__/{chunk-EUUJCC5E.mjs → chunk-5GSVYADK.mjs} +2 -2
- package/out/__chunks__/{chunk-7EZGGGIQ.mjs → chunk-5MYF4FXA.mjs} +2 -2
- package/out/__chunks__/chunk-5TP23QQT.mjs +2 -0
- package/out/__chunks__/{chunk-OP2IEVBM.mjs → chunk-6GI4GJJM.mjs} +2 -2
- package/out/__chunks__/chunk-6NXXKXQD.mjs +2 -0
- package/out/__chunks__/{chunk-CFWLPHKF.mjs.map → chunk-6NXXKXQD.mjs.map} +2 -2
- package/out/__chunks__/{chunk-NHB5C2VT.mjs → chunk-6P4UYDEH.mjs} +2 -2
- package/out/__chunks__/{chunk-HVWFXP4G.mjs → chunk-7GT77JV3.mjs} +2 -2
- package/out/__chunks__/{chunk-XJV7SQ3A.mjs → chunk-7KLR4KNT.mjs} +2 -2
- package/out/__chunks__/{chunk-HKGUI327.mjs → chunk-7UQUNW33.mjs} +2 -2
- package/out/__chunks__/{chunk-ASXSNGBB.mjs → chunk-7YPNGNL4.mjs} +2 -2
- package/out/__chunks__/chunk-ABH5J67J.mjs +2 -0
- package/out/__chunks__/{chunk-DYCP3KSI.mjs → chunk-ALXWQ4AW.mjs} +2 -2
- package/out/__chunks__/{chunk-5W3EWQIR.mjs → chunk-AMO7KAHJ.mjs} +2 -2
- package/out/__chunks__/chunk-AN2Y2R26.mjs +2 -0
- package/out/__chunks__/{chunk-XT3FTPPC.mjs → chunk-ANNRMKCC.mjs} +2 -2
- package/out/__chunks__/{chunk-CCDNY2AY.mjs → chunk-AT3CRFXK.mjs} +2 -2
- package/out/__chunks__/{chunk-LBMKLRI7.mjs → chunk-AUNVKFIH.mjs} +2 -2
- package/out/__chunks__/{chunk-UYWQOHGW.mjs → chunk-AWBM2UZB.mjs} +2 -2
- package/out/__chunks__/chunk-CFERWTQA.mjs +2 -0
- package/out/__chunks__/{chunk-MPJUP362.mjs → chunk-CN7Q4PAK.mjs} +2 -2
- package/out/__chunks__/{chunk-Y6OAUXIU.mjs → chunk-CWU7HLWJ.mjs} +2 -2
- package/out/__chunks__/{chunk-F4JEWIED.mjs → chunk-D57AI24E.mjs} +2 -2
- package/out/__chunks__/{chunk-BZ6YK6M7.mjs → chunk-DBCUOZVQ.mjs} +2 -2
- package/out/__chunks__/{chunk-ZQQN3ZGD.mjs → chunk-DFFL2BRF.mjs} +2 -2
- package/out/__chunks__/{chunk-MI2K6RMJ.mjs → chunk-E6HRB4NY.mjs} +2 -2
- package/out/__chunks__/chunk-EFUAR4GY.mjs +2 -0
- package/out/__chunks__/chunk-EFUAR4GY.mjs.map +7 -0
- package/out/__chunks__/{chunk-742ROBVD.mjs → chunk-ERZNTTM4.mjs} +2 -2
- package/out/__chunks__/{chunk-BU2ZPMEQ.mjs → chunk-F3BH7APK.mjs} +2 -2
- package/out/__chunks__/{chunk-TAXGAEX2.mjs → chunk-FBEZG2HT.mjs} +2 -2
- package/out/__chunks__/{chunk-JI5573A3.mjs → chunk-FEH7HYZ7.mjs} +2 -2
- package/out/__chunks__/{chunk-RYEM55ZT.mjs → chunk-FS7DIHGE.mjs} +2 -2
- package/out/__chunks__/{chunk-P3VXVK33.mjs → chunk-GXQ2T4I6.mjs} +2 -2
- package/out/__chunks__/{chunk-MOJWACYA.mjs → chunk-HAASOAIF.mjs} +2 -2
- package/out/__chunks__/{chunk-3U35OFEK.mjs → chunk-HB272ZMK.mjs} +2 -2
- package/out/__chunks__/chunk-HC6I7WWS.mjs +2 -0
- package/out/__chunks__/chunk-HOW7OPIZ.mjs +2 -0
- package/out/__chunks__/{chunk-OVROSPMG.mjs → chunk-IDX37YNY.mjs} +2 -2
- package/out/__chunks__/chunk-IODERSYI.mjs +2 -0
- package/out/__chunks__/{chunk-LHLDTVQX.mjs → chunk-JFZRSL4X.mjs} +2 -2
- package/out/__chunks__/{chunk-HCYLJV62.mjs → chunk-JKJQPTXA.mjs} +2 -2
- package/out/__chunks__/{chunk-NODAYKNL.mjs → chunk-JMAPPHO2.mjs} +2 -2
- package/out/__chunks__/chunk-JYGTD4Z6.mjs +2 -0
- package/out/__chunks__/chunk-JYGTD4Z6.mjs.map +7 -0
- package/out/__chunks__/{chunk-I2YHVWIX.mjs → chunk-JZQKOOZH.mjs} +1 -1
- package/out/__chunks__/{chunk-I2YHVWIX.mjs.map → chunk-JZQKOOZH.mjs.map} +1 -1
- package/out/__chunks__/{chunk-TZQ37JJD.mjs → chunk-KOLUKI2M.mjs} +2 -2
- package/out/__chunks__/chunk-L2CFZJIP.mjs +2 -0
- package/out/__chunks__/chunk-LXI42ZLN.mjs +2 -0
- package/out/__chunks__/{chunk-HFY3MGS6.mjs.map → chunk-LXI42ZLN.mjs.map} +2 -2
- package/out/__chunks__/{chunk-JXU7WWWE.mjs → chunk-LXOBPUVH.mjs} +2 -2
- package/out/__chunks__/{chunk-JT4AIBHR.mjs → chunk-M4UKLRRZ.mjs} +2 -2
- package/out/__chunks__/chunk-MHQ5LO3X.mjs +2 -0
- package/out/__chunks__/chunk-MHQ5LO3X.mjs.map +7 -0
- package/out/__chunks__/{chunk-I3LSEZWV.mjs → chunk-N4ERTSXN.mjs} +2 -2
- package/out/__chunks__/{chunk-O3RDPZCC.mjs → chunk-NJNDC4GE.mjs} +2 -2
- package/out/__chunks__/chunk-NXT4VIRT.mjs +2 -0
- package/out/__chunks__/{chunk-EIFX46HX.mjs.map → chunk-NXT4VIRT.mjs.map} +1 -1
- package/out/__chunks__/chunk-ODZVKBRI.mjs +2 -0
- package/out/__chunks__/chunk-ODZVKBRI.mjs.map +7 -0
- package/out/__chunks__/{chunk-ZHKCVM4W.mjs → chunk-OHDFIRJV.mjs} +2 -2
- package/out/__chunks__/{chunk-S5NXWNSY.mjs → chunk-OM4WELDA.mjs} +2 -2
- package/out/__chunks__/{chunk-L2GTIQ4M.mjs → chunk-PBMBPWBN.mjs} +2 -2
- package/out/__chunks__/chunk-PF5D2RX6.mjs +2 -0
- package/out/__chunks__/chunk-PF5D2RX6.mjs.map +7 -0
- package/out/__chunks__/{chunk-7NRHPYRQ.mjs → chunk-PH4CXCVB.mjs} +2 -2
- package/out/__chunks__/{chunk-UXCL6NKM.mjs → chunk-PSVVUUWE.mjs} +2 -2
- package/out/__chunks__/chunk-PUJ6U5VY.mjs +2 -0
- package/out/__chunks__/{chunk-EQ52O73C.mjs.map → chunk-PUJ6U5VY.mjs.map} +3 -3
- package/out/__chunks__/{chunk-EZMDYBQN.mjs → chunk-QPFZOAPW.mjs} +2 -2
- package/out/__chunks__/{chunk-OOPGEGEC.mjs → chunk-R5HLHBSG.mjs} +2 -2
- package/out/__chunks__/{chunk-J4XVM6TB.mjs → chunk-RO4EUTX6.mjs} +2 -2
- package/out/__chunks__/{chunk-HJ4B3QID.mjs → chunk-SDXVVQQO.mjs} +2 -2
- package/out/__chunks__/{chunk-HY5BQMSU.mjs → chunk-SUY52XEJ.mjs} +2 -2
- package/out/__chunks__/chunk-T37IWTKY.mjs +2 -0
- package/out/__chunks__/{chunk-NCUUK7SW.mjs → chunk-TGXFOUA3.mjs} +2 -2
- package/out/__chunks__/{chunk-JLLPGNLM.mjs → chunk-THMOVML2.mjs} +2 -2
- package/out/__chunks__/chunk-TMSAOTEB.mjs +2 -0
- package/out/__chunks__/{chunk-J6EXAKY6.mjs → chunk-UIHLSCDT.mjs} +2 -2
- package/out/__chunks__/{chunk-VYVJQXGS.mjs → chunk-VPPZKEMN.mjs} +2 -2
- package/out/__chunks__/{chunk-CTIBYRMH.mjs → chunk-VVYGAKV2.mjs} +2 -2
- package/out/__chunks__/{chunk-BPPANN5H.mjs → chunk-WF6WR5Q6.mjs} +2 -2
- package/out/__chunks__/chunk-WIE353OP.mjs +2 -0
- package/out/__chunks__/{chunk-OJVDJHBR.mjs → chunk-WQ2UDBF5.mjs} +2 -2
- package/out/__chunks__/{chunk-RTGDS56O.mjs → chunk-X5WGNXA6.mjs} +2 -2
- package/out/__chunks__/{chunk-72UXA2XD.mjs → chunk-XG6USU6W.mjs} +2 -2
- package/out/__chunks__/{chunk-FVEGUUPB.mjs → chunk-XII5X5WW.mjs} +2 -2
- package/out/__chunks__/{chunk-V7TKRGVU.mjs → chunk-XN7FWSH5.mjs} +2 -2
- package/out/__chunks__/{chunk-WPZIGJNP.mjs → chunk-XTMUHTQL.mjs} +2 -2
- package/out/__chunks__/{chunk-2FVSB4I6.mjs → chunk-YOYBYWNH.mjs} +2 -2
- package/out/__chunks__/{chunk-QHN6NRIA.mjs → chunk-YTNNUNXA.mjs} +2 -2
- package/out/__chunks__/chunk-YTNNUNXA.mjs.map +7 -0
- package/out/apiCalls/account/getAccountFromApi.mjs +1 -1
- package/out/apiCalls/account/getScamAddressData.mjs +1 -1
- package/out/apiCalls/configuration/getCleanApiAddress.mjs +1 -1
- package/out/apiCalls/configuration/getGasStationMetadata.mjs +1 -1
- package/out/apiCalls/economics/getEconomics.mjs +1 -1
- package/out/apiCalls/tokens/getPersistedTokenDetails.mjs +1 -1
- package/out/apiCalls/tokens/getTokenDetails.mjs +1 -1
- package/out/apiCalls/transactions/getServerTransactionsByHashes.mjs +1 -1
- package/out/apiCalls/transactions/getTransactionByHash.mjs +1 -1
- package/out/apiCalls/transactions/getTransactionsByHashes.mjs +1 -1
- package/out/constants/browser.constants.mjs +1 -1
- package/out/constants/storage.constants.mjs +1 -1
- package/out/constants/window.constants.cjs +1 -1
- package/out/constants/window.constants.cjs.map +1 -1
- package/out/constants/window.constants.mjs +1 -1
- package/out/controllers/TransactionsHistoryController/TransactionsHistoryController.d.ts +1 -1
- package/out/controllers/TransactionsHistoryController/TransactionsHistoryController.mjs +1 -1
- package/out/controllers/TransactionsHistoryController/index.mjs +1 -1
- package/out/controllers/TransactionsTableController/TransactionsTableController.mjs +1 -1
- package/out/controllers/TransactionsTableController/index.mjs +1 -1
- package/out/lib/sdkDappUi.mjs +1 -1
- package/out/managers/LogoutManager/LogoutManager.mjs +1 -1
- package/out/managers/NotificationsFeedManager/NotificationsFeedManager.mjs +1 -1
- package/out/managers/NotificationsFeedManager/index.mjs +1 -1
- package/out/managers/ToastManager/ToastManager.mjs +1 -1
- package/out/managers/ToastManager/ToastUICoordinator.mjs +1 -1
- package/out/managers/ToastManager/helpers/LifetimeManager.mjs +1 -1
- package/out/managers/ToastManager/helpers/createToastsFromTransactions.mjs +1 -1
- package/out/managers/ToastManager/index.mjs +1 -1
- package/out/managers/TransactionManager/TransactionManager.mjs +1 -1
- package/out/managers/TransactionManager/helpers/getToastDuration.mjs +1 -1
- package/out/managers/TransactionManager/index.mjs +1 -1
- package/out/managers/UnlockPanelManager/UnlockPanelManager.cjs +1 -1
- package/out/managers/UnlockPanelManager/UnlockPanelManager.cjs.map +3 -3
- package/out/managers/UnlockPanelManager/UnlockPanelManager.d.ts +2 -1
- package/out/managers/UnlockPanelManager/UnlockPanelManager.mjs +1 -1
- package/out/managers/UnlockPanelManager/UnlockPanelManager.types.cjs +1 -1
- package/out/managers/UnlockPanelManager/UnlockPanelManager.types.cjs.map +2 -2
- package/out/managers/UnlockPanelManager/UnlockPanelManager.types.d.ts +1 -0
- package/out/managers/UnlockPanelManager/UnlockPanelManager.types.mjs +1 -1
- package/out/managers/UnlockPanelManager/index.mjs +1 -1
- package/out/managers/internal/LedgerConnectStateManager/LedgerConnectStateManager.mjs +1 -1
- package/out/managers/internal/LedgerConnectStateManager/index.mjs +1 -1
- package/out/managers/internal/LedgerIdleStateManager/LedgerIdleStateManager.mjs +1 -1
- package/out/managers/internal/PendingTransactionsStateManager/PendingTransactionsStateManager.mjs +1 -1
- package/out/managers/internal/PendingTransactionsStateManager/index.mjs +1 -1
- package/out/managers/internal/SidePanelBaseManager/SidePanelBaseManager.mjs +1 -1
- package/out/managers/internal/SidePanelBaseManager/index.mjs +1 -1
- package/out/managers/internal/SignTransactionsStateManager/SignTransactionsStateManager.mjs +1 -1
- package/out/managers/internal/SignTransactionsStateManager/index.mjs +1 -1
- package/out/managers/internal/UIBaseManager/UIBaseManager.mjs +1 -1
- package/out/managers/internal/WalletConnectStateManager/WalletConnectStateManager.mjs +1 -1
- package/out/managers/internal/WalletConnectStateManager/index.mjs +1 -1
- package/out/methods/account/getAccount.mjs +1 -1
- package/out/methods/account/getAccountInfo.mjs +1 -1
- package/out/methods/account/getAddress.mjs +1 -1
- package/out/methods/account/getIsLoggedIn.mjs +1 -1
- package/out/methods/account/getLatestNonce.mjs +1 -1
- package/out/methods/initApp/gasStationMetadata/setGasStationMetadata.mjs +1 -1
- package/out/methods/initApp/helpers/waitForStoreRehydration.mjs +1 -1
- package/out/methods/initApp/initApp.mjs +1 -1
- package/out/methods/initApp/websocket/initializeWebsocketConnection.mjs +1 -1
- package/out/methods/initApp/websocket/registerWebsocket.mjs +1 -1
- package/out/methods/loginInfo/getLoginInfo.mjs +1 -1
- package/out/methods/network/getEgldLabel.mjs +1 -1
- package/out/methods/network/getExplorerAddress.mjs +1 -1
- package/out/methods/network/getNetworkConfig.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/checkTransactionStatus.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/helpers/checkBatch/checkBatch.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/helpers/checkBatch/helpers/runTransactionFailure.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/helpers/checkBatch/helpers/runTransactionStatusUpdate.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/helpers/checkBatch/helpers/updateTransactionAndSessionStatus.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/helpers/checkBatch/index.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/index.mjs +1 -1
- package/out/methods/trackTransactions/helpers/getPollingInterval.mjs +1 -1
- package/out/methods/trackTransactions/trackTransactions.mjs +1 -1
- package/out/methods/transactions/getFailedTransactions.mjs +1 -1
- package/out/methods/transactions/getFailedTransactionsSessions.mjs +1 -1
- package/out/methods/transactions/getPendingTransactions.mjs +1 -1
- package/out/methods/transactions/getPendingTransactionsSessions.mjs +1 -1
- package/out/methods/transactions/getSuccessfulTransactions.mjs +1 -1
- package/out/methods/transactions/getSuccessfulTransactionsSessions.mjs +1 -1
- package/out/methods/transactions/getTransactionSessions.mjs +1 -1
- package/out/providers/DappProvider/DappProvider.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/accountLogin.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/extractAddressFromToken.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/getAccountFromToken.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/getModifiedLoginToken.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/getMultisigLoginToken.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/loginWithNativeToken.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/loginWithoutNativeToken.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/login.mjs +1 -1
- package/out/providers/DappProvider/helpers/logout/logout.mjs +1 -1
- package/out/providers/DappProvider/helpers/signErrors/handleSignError.mjs +1 -1
- package/out/providers/DappProvider/helpers/signMessage/signMessageWithProvider.mjs +1 -1
- package/out/providers/DappProvider/helpers/signTransactions/signTransactionsWithProvider.cjs +1 -1
- package/out/providers/DappProvider/helpers/signTransactions/signTransactionsWithProvider.cjs.map +2 -2
- package/out/providers/DappProvider/helpers/signTransactions/signTransactionsWithProvider.d.ts +1 -0
- package/out/providers/DappProvider/helpers/signTransactions/signTransactionsWithProvider.mjs +1 -1
- package/out/providers/DappProvider/index.mjs +1 -1
- package/out/providers/ProviderFactory.mjs +1 -1
- package/out/providers/helpers/accountProvider.mjs +1 -1
- package/out/providers/helpers/cancelCrossWindowAction.mjs +1 -1
- package/out/providers/helpers/restoreProvider.mjs +1 -1
- package/out/providers/strategies/BaseProviderStrategy/BaseProviderStrategy.cjs +1 -1
- package/out/providers/strategies/BaseProviderStrategy/BaseProviderStrategy.cjs.map +2 -2
- package/out/providers/strategies/BaseProviderStrategy/BaseProviderStrategy.d.ts +2 -1
- package/out/providers/strategies/BaseProviderStrategy/BaseProviderStrategy.mjs +1 -1
- package/out/providers/strategies/CrossWindowProviderStrategy/CrossWindowProviderStrategy.cjs +1 -1
- package/out/providers/strategies/CrossWindowProviderStrategy/CrossWindowProviderStrategy.cjs.map +3 -3
- package/out/providers/strategies/CrossWindowProviderStrategy/CrossWindowProviderStrategy.d.ts +2 -1
- package/out/providers/strategies/CrossWindowProviderStrategy/CrossWindowProviderStrategy.mjs +1 -1
- package/out/providers/strategies/CrossWindowProviderStrategy/index.mjs +1 -1
- package/out/providers/strategies/ExtensionProviderStrategy/ExtensionProviderStrategy.cjs +1 -1
- package/out/providers/strategies/ExtensionProviderStrategy/ExtensionProviderStrategy.cjs.map +3 -3
- package/out/providers/strategies/ExtensionProviderStrategy/ExtensionProviderStrategy.d.ts +2 -1
- package/out/providers/strategies/ExtensionProviderStrategy/ExtensionProviderStrategy.mjs +1 -1
- package/out/providers/strategies/ExtensionProviderStrategy/index.mjs +1 -1
- package/out/providers/strategies/IframeProviderStrategy/IframeProviderStrategy.cjs +1 -1
- package/out/providers/strategies/IframeProviderStrategy/IframeProviderStrategy.cjs.map +3 -3
- package/out/providers/strategies/IframeProviderStrategy/IframeProviderStrategy.d.ts +2 -1
- package/out/providers/strategies/IframeProviderStrategy/IframeProviderStrategy.mjs +1 -1
- package/out/providers/strategies/IframeProviderStrategy/index.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/LedgerProviderStrategy.cjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/LedgerProviderStrategy.cjs.map +2 -2
- package/out/providers/strategies/LedgerProviderStrategy/LedgerProviderStrategy.d.ts +2 -1
- package/out/providers/strategies/LedgerProviderStrategy/LedgerProviderStrategy.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/authenticateLedgerAccount/authenticateLedgerAccount.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/authenticateLedgerAccount/helpers/updateAccountsList/index.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/authenticateLedgerAccount/helpers/updateAccountsList/updateAccountsList.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/authenticateLedgerAccount/helpers/waitForLedgerSelection.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/authenticateLedgerAccount/index.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/getLedgerProvider/getLedgerProvider.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/getLedgerProvider/index.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/initializeLedgerProvider.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/signLedgerMessage.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/index.mjs +1 -1
- package/out/providers/strategies/WalletConnectProviderStrategy/WalletConnectProviderStrategy.cjs +1 -1
- package/out/providers/strategies/WalletConnectProviderStrategy/WalletConnectProviderStrategy.cjs.map +3 -3
- package/out/providers/strategies/WalletConnectProviderStrategy/WalletConnectProviderStrategy.d.ts +2 -1
- package/out/providers/strategies/WalletConnectProviderStrategy/WalletConnectProviderStrategy.mjs +1 -1
- package/out/providers/strategies/WalletConnectProviderStrategy/index.mjs +1 -1
- package/out/providers/strategies/WebviewProviderStrategy/WebviewClient/WebviewClient.mjs +1 -1
- package/out/providers/strategies/WebviewProviderStrategy/WebviewClient/index.mjs +1 -1
- package/out/providers/strategies/WebviewProviderStrategy/WebviewProviderStrategy.cjs +1 -1
- package/out/providers/strategies/WebviewProviderStrategy/WebviewProviderStrategy.cjs.map +3 -3
- package/out/providers/strategies/WebviewProviderStrategy/WebviewProviderStrategy.d.ts +2 -1
- package/out/providers/strategies/WebviewProviderStrategy/WebviewProviderStrategy.mjs +1 -1
- package/out/providers/strategies/WebviewProviderStrategy/index.mjs +1 -1
- package/out/providers/strategies/helpers/getPendingTransactionsHandlers.mjs +1 -1
- package/out/providers/strategies/helpers/index.mjs +1 -1
- package/out/providers/strategies/helpers/signMessage/signMessage.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/getCommonData/getCommonData.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/getCommonData/helpers/getExtractTransactionsInfo.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/guardTransactions/guardTransactions.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/signTransactions.cjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/signTransactions.cjs.map +3 -3
- package/out/providers/strategies/helpers/signTransactions/signTransactions.d.ts +3 -1
- package/out/providers/strategies/helpers/signTransactions/signTransactions.mjs +1 -1
- package/out/react/account/useGetAccount.mjs +1 -1
- package/out/react/account/useGetAccountInfo.mjs +1 -1
- package/out/react/account/useGetIsLoggedIn.mjs +1 -1
- package/out/react/account/useGetLatestNonce.mjs +1 -1
- package/out/react/index.mjs +1 -1
- package/out/react/loginInfo/useGetLoginInfo.mjs +1 -1
- package/out/react/network/useGetNetworkConfig.mjs +1 -1
- package/out/react/store/getReactStore.mjs +1 -1
- package/out/react/store/useSelector.mjs +1 -1
- package/out/react/transactions/useGetFailedTransactions.mjs +1 -1
- package/out/react/transactions/useGetFailedTransactionsSessions.mjs +1 -1
- package/out/react/transactions/useGetPendingTransactions.mjs +1 -1
- package/out/react/transactions/useGetPendingTransactionsSessions.mjs +1 -1
- package/out/react/transactions/useGetSuccessfulTransactions.mjs +1 -1
- package/out/react/transactions/useGetSuccessfulTransactionsSessions.mjs +1 -1
- package/out/react/transactions/useGetTransactionSessions.mjs +1 -1
- package/out/services/nativeAuth/index.mjs +1 -1
- package/out/services/nativeAuth/methods/buildNativeAuthConfig.mjs +1 -1
- package/out/services/nativeAuth/methods/getDefaultNativeAuthConfig.mjs +1 -1
- package/out/services/nativeAuth/nativeAuth.mjs +1 -1
- package/out/store/actions/account/accountActions.mjs +1 -1
- package/out/store/actions/account/index.mjs +1 -1
- package/out/store/actions/cache/cacheActions.mjs +1 -1
- package/out/store/actions/cache/index.mjs +1 -1
- package/out/store/actions/config/configActions.cjs +1 -1
- package/out/store/actions/config/configActions.cjs.map +3 -3
- package/out/store/actions/config/configActions.d.ts +1 -0
- package/out/store/actions/config/configActions.mjs +1 -1
- package/out/store/actions/config/index.mjs +1 -1
- package/out/store/actions/loginInfo/loginInfoActions.mjs +1 -1
- package/out/store/actions/network/index.mjs +1 -1
- package/out/store/actions/network/initializeNetwork.mjs +1 -1
- package/out/store/actions/network/networkActions.mjs +1 -1
- package/out/store/actions/sharedActions/index.mjs +1 -1
- package/out/store/actions/sharedActions/sharedActions.mjs +1 -1
- package/out/store/actions/toasts/index.mjs +1 -1
- package/out/store/actions/toasts/toastsActions.mjs +1 -1
- package/out/store/actions/transactions/transactionsActions.mjs +1 -1
- package/out/store/actions/ui/index.mjs +1 -1
- package/out/store/actions/ui/uiActions.mjs +1 -1
- package/out/store/middleware/applyMiddlewares.mjs +1 -1
- package/out/store/middleware/index.mjs +1 -1
- package/out/store/middleware/logoutMiddleware.mjs +1 -1
- package/out/store/storage/index.mjs +1 -1
- package/out/store/storage/storageCallback.mjs +1 -1
- package/out/store/store.mjs +1 -1
- package/out/utils/ComponentFactory.mjs +1 -1
- package/out/utils/account/fetchAccount.mjs +1 -1
- package/out/utils/account/refreshAccount.mjs +1 -1
- package/out/utils/account/refreshNativeAuthTokenLogin.mjs +1 -1
- package/out/utils/transactions/getActiveTransactionsStatus.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/getTransactionValue/constants.cjs.map +1 -1
- package/out/utils/transactions/getInterpretedTransaction/getTransactionValue/constants.d.ts +2 -2
- package/out/utils/transactions/getInterpretedTransaction/getTransactionValue/constants.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/getTransactionValue/getTransactionValue.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/getTransactionValue/index.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/getLockedAccountName.mjs +1 -1
- package/out/utils/transactions/getTransactionsHistory/getTransactionsHistory.mjs +1 -1
- package/out/utils/transactions/getTransactionsHistory/helpers/getCachedTransactionListItem.mjs +1 -1
- package/out/utils/transactions/getTransactionsHistory/helpers/mapServerTransactionsToListItems.mjs +1 -1
- package/out/utils/transactions/getTransactionsHistory/index.mjs +1 -1
- package/out/utils/visual/switchTheme.mjs +1 -1
- package/out/utils/window/getIsInIframe.mjs +1 -1
- package/out/utils/window/getWindowParentOrigin.mjs +1 -1
- package/package.json +2 -2
- package/out/__chunks__/chunk-5XSOS5YN.mjs +0 -2
- package/out/__chunks__/chunk-635MBRGW.mjs +0 -2
- package/out/__chunks__/chunk-66O7QA3I.mjs +0 -2
- package/out/__chunks__/chunk-6AERD2V5.mjs +0 -2
- package/out/__chunks__/chunk-ASW2NQ6C.mjs +0 -2
- package/out/__chunks__/chunk-BVZPCM6G.mjs +0 -2
- package/out/__chunks__/chunk-CFWLPHKF.mjs +0 -2
- package/out/__chunks__/chunk-EIFX46HX.mjs +0 -2
- package/out/__chunks__/chunk-EQ52O73C.mjs +0 -2
- package/out/__chunks__/chunk-F2YWL325.mjs +0 -2
- package/out/__chunks__/chunk-FSL7QGMG.mjs +0 -2
- package/out/__chunks__/chunk-HFY3MGS6.mjs +0 -2
- package/out/__chunks__/chunk-HIGA7ZDP.mjs +0 -2
- package/out/__chunks__/chunk-HY34GQIC.mjs +0 -2
- package/out/__chunks__/chunk-HY34GQIC.mjs.map +0 -7
- package/out/__chunks__/chunk-IZPXIZ7K.mjs +0 -2
- package/out/__chunks__/chunk-OEFGQHO5.mjs +0 -2
- package/out/__chunks__/chunk-OEFGQHO5.mjs.map +0 -7
- package/out/__chunks__/chunk-OT634PF6.mjs +0 -2
- package/out/__chunks__/chunk-PPCVJ6HZ.mjs +0 -2
- package/out/__chunks__/chunk-PPCVJ6HZ.mjs.map +0 -7
- package/out/__chunks__/chunk-QHN6NRIA.mjs.map +0 -7
- package/out/__chunks__/chunk-RTLK66UR.mjs +0 -2
- package/out/__chunks__/chunk-RVO7H26H.mjs +0 -2
- package/out/__chunks__/chunk-RVO7H26H.mjs.map +0 -7
- package/out/__chunks__/chunk-WPOSW4KM.mjs +0 -2
- package/out/__chunks__/chunk-WXYAGYYV.mjs +0 -2
- package/out/__chunks__/chunk-WXYAGYYV.mjs.map +0 -7
- package/out/__chunks__/chunk-ZIZJCYTT.mjs +0 -2
- /package/out/__chunks__/{chunk-IAHAAQ4N.mjs.map → chunk-2M2GV2W7.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-IZPXIZ7K.mjs.map → chunk-3CO6LABA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-WPOSW4KM.mjs.map → chunk-3OH4D5BR.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-XHZWVRMA.mjs.map → chunk-3Q7KW43M.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HIGA7ZDP.mjs.map → chunk-4BOBCAS4.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZPRRRKH2.mjs.map → chunk-4HRP3IO5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-A7F53AUI.mjs.map → chunk-4RI5BDTQ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-V5RYJVEZ.mjs.map → chunk-55IS6LOB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ACY76UCX.mjs.map → chunk-56LVHY6G.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-JA27GJYB.mjs.map → chunk-573LAOYN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-EUUJCC5E.mjs.map → chunk-5GSVYADK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-7EZGGGIQ.mjs.map → chunk-5MYF4FXA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-635MBRGW.mjs.map → chunk-5TP23QQT.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OP2IEVBM.mjs.map → chunk-6GI4GJJM.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-NHB5C2VT.mjs.map → chunk-6P4UYDEH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HVWFXP4G.mjs.map → chunk-7GT77JV3.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-XJV7SQ3A.mjs.map → chunk-7KLR4KNT.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HKGUI327.mjs.map → chunk-7UQUNW33.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ASXSNGBB.mjs.map → chunk-7YPNGNL4.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZIZJCYTT.mjs.map → chunk-ABH5J67J.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-DYCP3KSI.mjs.map → chunk-ALXWQ4AW.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5W3EWQIR.mjs.map → chunk-AMO7KAHJ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-66O7QA3I.mjs.map → chunk-AN2Y2R26.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-XT3FTPPC.mjs.map → chunk-ANNRMKCC.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-CCDNY2AY.mjs.map → chunk-AT3CRFXK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-LBMKLRI7.mjs.map → chunk-AUNVKFIH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-UYWQOHGW.mjs.map → chunk-AWBM2UZB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5XSOS5YN.mjs.map → chunk-CFERWTQA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-MPJUP362.mjs.map → chunk-CN7Q4PAK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-Y6OAUXIU.mjs.map → chunk-CWU7HLWJ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-F4JEWIED.mjs.map → chunk-D57AI24E.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-BZ6YK6M7.mjs.map → chunk-DBCUOZVQ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZQQN3ZGD.mjs.map → chunk-DFFL2BRF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-MI2K6RMJ.mjs.map → chunk-E6HRB4NY.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-742ROBVD.mjs.map → chunk-ERZNTTM4.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-BU2ZPMEQ.mjs.map → chunk-F3BH7APK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-TAXGAEX2.mjs.map → chunk-FBEZG2HT.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-JI5573A3.mjs.map → chunk-FEH7HYZ7.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-RYEM55ZT.mjs.map → chunk-FS7DIHGE.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-P3VXVK33.mjs.map → chunk-GXQ2T4I6.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-MOJWACYA.mjs.map → chunk-HAASOAIF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-3U35OFEK.mjs.map → chunk-HB272ZMK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-F2YWL325.mjs.map → chunk-HC6I7WWS.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OT634PF6.mjs.map → chunk-HOW7OPIZ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OVROSPMG.mjs.map → chunk-IDX37YNY.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-6AERD2V5.mjs.map → chunk-IODERSYI.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-LHLDTVQX.mjs.map → chunk-JFZRSL4X.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HCYLJV62.mjs.map → chunk-JKJQPTXA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-NODAYKNL.mjs.map → chunk-JMAPPHO2.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-TZQ37JJD.mjs.map → chunk-KOLUKI2M.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FSL7QGMG.mjs.map → chunk-L2CFZJIP.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-JXU7WWWE.mjs.map → chunk-LXOBPUVH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-JT4AIBHR.mjs.map → chunk-M4UKLRRZ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-I3LSEZWV.mjs.map → chunk-N4ERTSXN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-O3RDPZCC.mjs.map → chunk-NJNDC4GE.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZHKCVM4W.mjs.map → chunk-OHDFIRJV.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-S5NXWNSY.mjs.map → chunk-OM4WELDA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-L2GTIQ4M.mjs.map → chunk-PBMBPWBN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-7NRHPYRQ.mjs.map → chunk-PH4CXCVB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-UXCL6NKM.mjs.map → chunk-PSVVUUWE.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-EZMDYBQN.mjs.map → chunk-QPFZOAPW.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OOPGEGEC.mjs.map → chunk-R5HLHBSG.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-J4XVM6TB.mjs.map → chunk-RO4EUTX6.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HJ4B3QID.mjs.map → chunk-SDXVVQQO.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HY5BQMSU.mjs.map → chunk-SUY52XEJ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-BVZPCM6G.mjs.map → chunk-T37IWTKY.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-NCUUK7SW.mjs.map → chunk-TGXFOUA3.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-JLLPGNLM.mjs.map → chunk-THMOVML2.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ASW2NQ6C.mjs.map → chunk-TMSAOTEB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-J6EXAKY6.mjs.map → chunk-UIHLSCDT.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-VYVJQXGS.mjs.map → chunk-VPPZKEMN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-CTIBYRMH.mjs.map → chunk-VVYGAKV2.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-BPPANN5H.mjs.map → chunk-WF6WR5Q6.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-RTLK66UR.mjs.map → chunk-WIE353OP.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OJVDJHBR.mjs.map → chunk-WQ2UDBF5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-RTGDS56O.mjs.map → chunk-X5WGNXA6.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-72UXA2XD.mjs.map → chunk-XG6USU6W.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FVEGUUPB.mjs.map → chunk-XII5X5WW.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-V7TKRGVU.mjs.map → chunk-XN7FWSH5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-WPZIGJNP.mjs.map → chunk-XTMUHTQL.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-2FVSB4I6.mjs.map → chunk-YOYBYWNH.mjs.map} +0 -0
package/README.md
CHANGED
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
[](https://github.com/multiversx/mx-sdk-dapp/actions/workflows/run-template-dapps-integration.yml)
|
|
6
6
|
[](https://deepwiki.com/multiversx/mx-sdk-dapp)
|
|
7
7
|
|
|
8
|
-
|
|
9
8
|
MultiversX Front-End SDK for JavaScript and TypeScript (written in TypeScript).
|
|
10
9
|
|
|
11
10
|
## Introduction
|
|
@@ -187,6 +186,8 @@ export const AdvancedConnectButton = () => {
|
|
|
187
186
|
});
|
|
188
187
|
const handleOpenUnlockPanel = () => {
|
|
189
188
|
unlockPanelManager.openUnlockPanel();
|
|
189
|
+
// if you want to select a specific provider for your user, you can call
|
|
190
|
+
// unlockPanelManager.selectProvider(ProviderTypeEnum.extension);
|
|
190
191
|
};
|
|
191
192
|
return <Button onClick={handleOpenUnlockPanel}>Advanced Connect</Button>;
|
|
192
193
|
};
|
|
@@ -304,6 +305,47 @@ const provider = getAccountProvider();
|
|
|
304
305
|
const signedTransactions = await provider.signTransactions(transactions);
|
|
305
306
|
```
|
|
306
307
|
|
|
308
|
+
#### 4.1.1 Signing Options
|
|
309
|
+
|
|
310
|
+
The `signTransactions` method accepts an optional second parameter with signing options:
|
|
311
|
+
|
|
312
|
+
```typescript
|
|
313
|
+
import type { SignTransactionsOptionsType } from '@multiversx/sdk-dapp/out/providers/DappProvider/helpers/signTransactions/signTransactionsWithProvider';
|
|
314
|
+
|
|
315
|
+
const options: SignTransactionsOptionsType = {
|
|
316
|
+
skipGuardian?: boolean; // Skip guardian validation for guarded accounts
|
|
317
|
+
callback?: (signedTransactions: Transaction[]) => Promise<Transaction[]>; // Post-signing callback
|
|
318
|
+
};
|
|
319
|
+
|
|
320
|
+
const signedTransactions = await provider.signTransactions(transactions, options);
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
**Available options:**
|
|
324
|
+
|
|
325
|
+
- `skipGuardian` (`boolean`): Optional. When `true`, skips the guardian co-signing step for guarded accounts. Useful for transactions that don't require guardian approval.
|
|
326
|
+
|
|
327
|
+
- `callback` (`(signedTransactions: Transaction[]) => Promise<Transaction[]>`): Optional. A callback function that receives the signed transactions after all transactions have been signed by the user, but before guardian validation. This allows you to modify, filter, or perform additional processing on the signed transactions. The returned transactions will proceed to guardian validation (if applicable).
|
|
328
|
+
|
|
329
|
+
**Example: Using the callback option**
|
|
330
|
+
|
|
331
|
+
The `callback` option is particularly useful for:
|
|
332
|
+
|
|
333
|
+
- **Guarded accounts**: Processing signed transactions before they are sent to the guardian service for co-signing
|
|
334
|
+
- **Custom validation**: Adding additional validation logic after user signing
|
|
335
|
+
- **Logging/Analytics**: Recording signed transactions before final submission
|
|
336
|
+
|
|
337
|
+
```typescript
|
|
338
|
+
const signedTransactions = await provider.signTransactions(transactions, {
|
|
339
|
+
callback: async (signedTxs) => {
|
|
340
|
+
// Example: Log signed transactions before guardian processing
|
|
341
|
+
console.log('User signed transactions:', signedTxs);
|
|
342
|
+
|
|
343
|
+
// Return the transactions to proceed with guardian validation
|
|
344
|
+
return signedTxs;
|
|
345
|
+
}
|
|
346
|
+
});
|
|
347
|
+
```
|
|
348
|
+
|
|
307
349
|
#### 4.2 Sending and tracking transactions
|
|
308
350
|
|
|
309
351
|
Then, to send the transactions, you need to use the `TransactionManager` class and pass in the `signedTransactions` to the `send` method. You can then track the transactions by using the `track` method. This will create a toast notification with the transaction hash and its status.
|
|
@@ -589,24 +631,27 @@ import { TransactionManagerTrackOptionsType } from '@multiversx/sdk-dapp/out/man
|
|
|
589
631
|
|
|
590
632
|
const options: TransactionManagerTrackOptionsType = {
|
|
591
633
|
disableToasts: false, // `false` by default
|
|
592
|
-
transactionsDisplayInfo: {
|
|
634
|
+
transactionsDisplayInfo: {
|
|
635
|
+
// optional. If left `undefined`, it will use the default messages
|
|
593
636
|
errorMessage: 'Failed adding stake',
|
|
594
637
|
successMessage: 'Stake successfully added',
|
|
595
638
|
receivedMessage: 'Stake successfully added', // optional, add it in case of multiple transactions
|
|
596
|
-
processingMessage: 'Staking in progress'
|
|
639
|
+
processingMessage: 'Staking in progress'
|
|
597
640
|
// submittedMessage: 'Stake submitted',
|
|
598
|
-
// timedOutMessage: 'Transaction timed out',
|
|
641
|
+
// timedOutMessage: 'Transaction timed out',
|
|
599
642
|
// invalidMessage: 'Invalid transaction',
|
|
600
643
|
},
|
|
601
644
|
sessionInformation: {
|
|
602
645
|
// `undefined` by default. Use to perform additional actions based on the session information
|
|
603
646
|
stakeAmount: '1000000000000000000000000'
|
|
604
647
|
},
|
|
605
|
-
onSuccess: async(sessionId) => {
|
|
648
|
+
onSuccess: async (sessionId) => {
|
|
649
|
+
// optional
|
|
606
650
|
// overrides the the global `onSuccess` callback set in the `initApp` method for the current session only
|
|
607
651
|
console.log('Session successful', sessionId);
|
|
608
652
|
},
|
|
609
|
-
onFail: async(sessionId) => {
|
|
653
|
+
onFail: async (sessionId) => {
|
|
654
|
+
// optional
|
|
610
655
|
console.log('Session failed', sessionId);
|
|
611
656
|
}
|
|
612
657
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-4HRP3IO5.mjs";import{a as o}from"./chunk-PMHRZ5Y7.mjs";import{j as r}from"./chunk-E2GGD7D4.mjs";import{b as i}from"./chunk-M4UKLRRZ.mjs";import{s as n}from"./chunk-56LVHY6G.mjs";async function E({transaction:a,sessionId:s}){let c=a.results?.find(t=>t?.returnMessage!=="");e({sessionId:s,transaction:{...a,status:"fail",inTransit:!1}});let{transactions:m}=n();m?.[s]?.transactions?.some(t=>r(t.status))||(i({sessionId:s,status:"fail",errorMessage:c?.returnMessage}),await o({sessionId:s,status:"fail"}))}export{E as a};
|
|
2
|
+
//# sourceMappingURL=chunk-2M2GV2W7.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as l}from"./chunk-3GRRAVW4.mjs";import{a}from"./chunk-5HEWN34K.mjs";import{l as c}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as l}from"./chunk-3GRRAVW4.mjs";import{a}from"./chunk-5HEWN34K.mjs";import{l as c}from"./chunk-6NXXKXQD.mjs";import{a as g}from"./chunk-HC6I7WWS.mjs";import{s as e}from"./chunk-56LVHY6G.mjs";import{g as n}from"./chunk-FK6DWWZF.mjs";import{e as d}from"./chunk-VNLGNNIL.mjs";import{HWProvider as P}from"@multiversx/sdk-hw-provider";async function S(s){let m=g(),t=s?.shouldInitProvider||!m,f=d(e()),o=n(e()),p=c(),i=new P;try{if(!t&&o){let u={version:o.version,dataEnabled:o.hasContractDataEnabled};return{ledgerProvider:i,ledgerConfig:u}}let r=await a({provider:p,ledgerProvider:i,ledgerLogin:f,shouldInitProvider:t}),v=await l(r);return{ledgerProvider:r,ledgerConfig:v}}catch(r){throw console.error("Could not initialize ledger app",r),r}}export{S as a};
|
|
2
|
+
//# sourceMappingURL=chunk-3Q7KW43M.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as r}from"./chunk-TWYGNEQS.mjs";import{b as n,c as o}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as r}from"./chunk-TWYGNEQS.mjs";import{b as n,c as o}from"./chunk-M4UKLRRZ.mjs";import{s}from"./chunk-56LVHY6G.mjs";function T({sessionId:t,transaction:e}){o({sessionId:t,transaction:e});let i=s().transactions?.[t].transactions,a=r(i);return a&&n({sessionId:t,status:a}),a}export{T as a};
|
|
2
|
+
//# sourceMappingURL=chunk-4HRP3IO5.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as s,d as i,h as o}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as s,d as i,h as o}from"./chunk-6GI4GJJM.mjs";var r=1e4,u=class{constructor(){this.timeoutIntervals=new Map;this.successfulToastLifetime=r;this.start=t=>{if(this.stop(t),this.successfulToastLifetime<=0)return;let e=setTimeout(()=>{o(t)},this.successfulToastLifetime);this.timeoutIntervals.set(t,e)};this.startWithCustomDuration=(t,e)=>{if(this.stop(t),e<=0)return;let a=setTimeout(()=>{i(t);let n=s[t];n?.()},e);this.timeoutIntervals.set(t,a)};this.stop=t=>{let e=this.timeoutIntervals.get(t);e&&(clearTimeout(e),this.timeoutIntervals.delete(t))}}init({successfulToastLifetime:t}){this.successfulToastLifetime=t??r}destroy(){this.timeoutIntervals.forEach(t=>clearTimeout(t)),this.timeoutIntervals.clear()}};export{u as a};
|
|
2
|
+
//# sourceMappingURL=chunk-4RI5BDTQ.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"./chunk-NGM3AVCY.mjs";import{s as u}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a}from"./chunk-NGM3AVCY.mjs";import{s as u}from"./chunk-56LVHY6G.mjs";import{e as s}from"./chunk-FK6DWWZF.mjs";function x(n){let e=u(),o=a(e),c=s(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-55IS6LOB.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as p,f as l}from"./chunk-FK6DWWZF.mjs";import{f as s}from"./chunk-VNLGNNIL.mjs";import{b as x}from"./chunk-A7FTKX2A.mjs";import{a as m,b as c}from"./chunk-RIPIZH54.mjs";import{a as T}from"./chunk-2DNGCNYM.mjs";import{a as f,b as g}from"./chunk-M7BM6QPB.mjs";import{a as L}from"./chunk-ONT6BGYB.mjs";import{a as d,b as y}from"./chunk-NLRDRI7Q.mjs";import{a as S,b as u}from"./chunk-VKEESSBI.mjs";import{a as I}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as p,f as l}from"./chunk-FK6DWWZF.mjs";import{f as s}from"./chunk-VNLGNNIL.mjs";import{b as x}from"./chunk-A7FTKX2A.mjs";import{a as m,b as c}from"./chunk-RIPIZH54.mjs";import{a as T}from"./chunk-2DNGCNYM.mjs";import{a as f,b as g}from"./chunk-M7BM6QPB.mjs";import{a as L}from"./chunk-ONT6BGYB.mjs";import{a as d,b as y}from"./chunk-NLRDRI7Q.mjs";import{a as S,b as u}from"./chunk-VKEESSBI.mjs";import{a as I}from"./chunk-AN2Y2R26.mjs";import{a as k}from"./chunk-KRWR77QE.mjs";import{a as v}from"./chunk-NB7A4C7L.mjs";import{f as a}from"./chunk-DA76AK4I.mjs";import{createJSONStorage as O,devtools as V,persist as h}from"zustand/middleware";import{immer as N}from"zustand/middleware/immer";import{createStore as J}from"zustand/vanilla";var A=e=>{e.account=m,e.loginInfo=f,e.transactions=d,e.toasts=S};function H(){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),r=s(e),{address:i,publicKey:M}=p(e);if(i&&M!==new a(i).toHex()&&A(e),!t)return;if(r==null){w(H());return}let P=Date.now();r-P<0&&(w(null),o().setState(A))};var W=(e,t)=>{C(e)};var z=e=>{let t=J(V(h(N((...r)=>({network:T(...r),account:c(...r),loginInfo:g(...r),config:L(...r),transactions:y(...r),toasts:u(...r),cache:x(...r),ui:v(...r)})),{name:"sdk-dapp-store",storage:O(e)}),{name:"sdk-dapp"}));return t.subscribe(W),t},n,D=e=>{n=e},o=()=>(n||D(z(()=>new k)),n),ue=(e=I)=>{let t=z(e);return D(t),t},de=()=>o().getState();var Le=e=>o().setState(({loginInfo:t})=>{t.providerType=e},!1,{type:"setProviderType",payload:{value:e}}),Te=e=>o().setState(({loginInfo:t})=>{t.tokenLogin=e},!1,{type:"setTokenLogin",payload:{value:e}}),ve=e=>o().setState(({loginInfo:t})=>{if(t.tokenLogin!=null){t.tokenLogin.loginToken=e;return}t.tokenLogin={loginToken:e}},!1,{type:"setLoginToken",payload:{value:e}}),Ie=e=>o().setState(({loginInfo:t})=>{t?.tokenLogin!=null&&(t.tokenLogin.signature=e)},!1,{type:"setTokenLoginSignature",payload:{value:e}}),ke=e=>o().setState(({loginInfo:t})=>{t.walletConnectLogin=e},!1,{type:"setWalletConnectLogin",payload:{value:e}}),Ae=e=>o().setState(({loginInfo:t})=>{t.ledgerLogin=e},!1,{type:"setLedgerLogin",payload:{value:e}}),we=e=>o().setState(({loginInfo:t})=>{t.isWalletConnectV2Initialized=e},!1,{type:"setIsWalletConnectV2Initialized",payload:{value:e}}),E=()=>o().setState(({loginInfo:e})=>{e.loginExpiresAt=null},!1,{type:"removeLoginExpiresAt",payload:{value:null}}),b=e=>o().setState(({loginInfo:t})=>{t.loginExpiresAt=e},!1,{type:"addLoginExpiresAt",payload:{value:e}});export{Le as a,Te as b,ve as c,Ie as d,ke as e,Ae as f,we as g,E as h,b as i,A as j,H as k,w as l,C as m,W as n,z as o,D as p,o as q,ue as r,de as s};
|
|
2
|
+
//# sourceMappingURL=chunk-56LVHY6G.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as V}from"./chunk-FCIBGJDC.mjs";import{a as k}from"./chunk-LFMHK4UE.mjs";import{a as d}from"./chunk-3IYTFWEN.mjs";import{a as p,b as s,c,d as f}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as V}from"./chunk-FCIBGJDC.mjs";import{a as k}from"./chunk-LFMHK4UE.mjs";import{a as d}from"./chunk-3IYTFWEN.mjs";import{a as p,b as s,c,d as f}from"./chunk-JZQKOOZH.mjs";import{a as D}from"./chunk-RXRVBUAX.mjs";import{a as A}from"./chunk-Q7YFEWWK.mjs";import{a as r}from"./chunk-FKGDHZZJ.mjs";import{a as m}from"./chunk-O6VPG7AF.mjs";import{b as T}from"./chunk-UQU2VWPJ.mjs";import{c as n,f as i}from"./chunk-PJWJZHIS.mjs";import{a as u}from"./chunk-QNELH2S2.mjs";var b=({transaction:t,hideMultipleBadge:g})=>{if(t.action){if(s.includes(t.action.name))return r(t.value);if(c.includes(t.action.name))return A(t);if(p.includes(t.action.name))return D(t);if(f.includes(t.action.name))return V(t);let a=m(t);if(a.length){let e=a[0],I=Object.values(T).includes(e.type),l=!g&&a.length>1?k(a):"";if(I){let{badgeText:E,tokenFormattedAmount:o,tokenExplorerLink:_,tokenLinkText:y}=d({token:e});return{nftValueData:{badgeText:E,tokenFormattedAmount:o,tokenExplorerLink:_,tokenLinkText:y,transactionTokens:a,token:e,value:o!=null?e.value:null,decimals:o!=null?e.decimals:null,titleText:l}}}let x=e.value?i({input:e.value,decimals:e.decimals??n,digits:2,addCommas:!0}):null;return{tokenValueData:{tokenExplorerLink:u.tokenDetails(String(e.token)),showFormattedAmount:!1,tokenFormattedAmount:x,tokenLinkText:e.ticker,transactionTokens:a,token:e,value:e.value,decimals:e.decimals??n,titleText:l}}}}return r(t.value)};export{b as a};
|
|
2
|
+
//# sourceMappingURL=chunk-573LAOYN.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-NXT4VIRT.mjs";function r(t){try{if(!e)return;e.document.documentElement.dataset.mvxTheme=t}catch{console.log("Error switching the theme!")}}export{r as a};
|
|
2
|
+
//# sourceMappingURL=chunk-5GSVYADK.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as g}from"./chunk-NYZ726DG.mjs";import{b as c}from"./chunk-7VHTZYM2.mjs";import{a as s}from"./chunk-3FXHIV6O.mjs";import{s as o}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as g}from"./chunk-NYZ726DG.mjs";import{b as c}from"./chunk-7VHTZYM2.mjs";import{a as s}from"./chunk-3FXHIV6O.mjs";import{s as o}from"./chunk-56LVHY6G.mjs";import{o as a,u as m}from"./chunk-2JKCBTYK.mjs";async function I({tokenId:n}){let t=c(o()),r={tokenDecimals:Number(t.decimals),tokenLabel:"",tokenImageUrl:""},{isNft:k}=s(n),i=n,p=k?a:m;if(!i)return r;try{let e=await g(`${t.apiAddress}/${p}/${i}`),l=e?e?.decimals:Number(t.decimals),f=e?e?.name:"",T=e?e?.assets?.svgUrl??e?.media?.[0]?.thumbnailUrl:"";return{tokenDecimals:l,tokenLabel:f,type:e?.type,tokenImageUrl:T,identifier:e?.identifier,assets:e?.assets,esdtPrice:e?.price,ticker:e?.ticker,name:e?.name}}catch(e){return{...r,error:`${e}`}}}export{I as a};
|
|
2
|
+
//# sourceMappingURL=chunk-5MYF4FXA.mjs.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as t}from"./chunk-YOYBYWNH.mjs";import{c as n}from"./chunk-56LVHY6G.mjs";async function c({loginToken:r,extraInfoData:i,address:e}){let o=await t({originalLoginToken:r,extraInfoData:i,address:e});return o.modifiedLoginToken&&n(o.modifiedLoginToken),o.address}export{c as a};
|
|
2
|
+
//# sourceMappingURL=chunk-5TP23QQT.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as c}from"./chunk-NJN53MJV.mjs";import{a as r}from"./chunk-YSCND2MX.mjs";import{q as n}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as c}from"./chunk-NJN53MJV.mjs";import{a as r}from"./chunk-YSCND2MX.mjs";import{q as n}from"./chunk-56LVHY6G.mjs";var l={},u={},p=(t,o)=>{n().setState(({toasts:s})=>{let a=s.customToasts.length>0?Math.max(...s.customToasts.map(m=>parseInt(m.toastId.split("-").pop()??"0"))):0,e=o??`custom-toast-${a+1}`,T=s.customToasts.findIndex(m=>m.toastId===e),i={...t,toastId:e};if(T!==-1){s.customToasts[T]=i;return}s.customToasts.push({...i,toastId:e})},!1,{type:"addCustomToast",payload:{value:{customToast:t,currentToastId:o}}})},C=t=>{n().setState(({toasts:o})=>{o.customToasts=o.customToasts.filter(s=>s.toastId!==t)},!1,{type:"removeCustomToast",payload:{value:t}})},f=()=>{n().setState(({toasts:t})=>{t.customToasts=[]},!1,{type:"removeAllCustomToasts",payload:{value:null}})},g=()=>{n().setState(({toasts:t})=>{t.transactionToasts=[]})},y=({toastId:t,totalDuration:o})=>{let s="";return n().setState(({toasts:a})=>{let e=a.transactionToasts.length>0?Math.max(...a.transactionToasts.map(T=>parseInt(T.toastId.split("-").pop()??"0"))):0;s=t??`transaction-toast-${e+1}`,a.transactionToasts.push({startTime:r(),endTime:c(o),toastId:s})},!1,"addTransactionToast"),s},v=t=>{n().setState(({toasts:o})=>{o.transactionToasts=o.transactionToasts.filter(s=>s.toastId!==t)},!1,"removeTransactionToast"),delete u[t],delete l[t]},h=t=>{let{toasts:o}=n().getState(),s=o.customToasts.length>0?Math.max(...o.customToasts.map(e=>parseInt(e.toastId.split("-").pop()??"0"))):0,a=t.toastId||`custom-toast-${s+1}`;return t.onClose&&(u[a]=t.onClose),t.instantiateToastElement?(l[a]=t.instantiateToastElement,n().setState(({toasts:e})=>{let T=e.customToasts.findIndex(m=>m.toastId===a),i={...t,instantiateToastElement:null,toastId:a};T!==-1?e.customToasts[T]=i:e.customToasts.push(i)},!1,"createCustomToast"),a):(p(t,a),a)};export{l as a,u as b,p as c,C as d,f as e,g as f,y as g,v as h,h as i};
|
|
2
|
+
//# sourceMappingURL=chunk-6GI4GJJM.mjs.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as Z}from"./chunk-DBCUOZVQ.mjs";import{a as Q}from"./chunk-6UZHM5LW.mjs";import{c as W}from"./chunk-N4ERTSXN.mjs";import{a as rt}from"./chunk-7UQUNW33.mjs";import{a as tt}from"./chunk-HC6I7WWS.mjs";import{a as et}from"./chunk-OHDFIRJV.mjs";import{a as nt}from"./chunk-HB272ZMK.mjs";import{a as ot}from"./chunk-ABBDCZHP.mjs";import{a as mt}from"./chunk-4ODPAHHA.mjs";import{a as at}from"./chunk-LXOBPUVH.mjs";import{a as st}from"./chunk-5TP23QQT.mjs";import{a as ut}from"./chunk-FBEZG2HT.mjs";import{a as M}from"./chunk-X5WGNXA6.mjs";import{a as ct}from"./chunk-ANNRMKCC.mjs";import{b as A}from"./chunk-AUNVKFIH.mjs";import{c as O}from"./chunk-OM4WELDA.mjs";import{a as d}from"./chunk-CFERWTQA.mjs";import{a as J}from"./chunk-4BOBCAS4.mjs";import{a as w}from"./chunk-55IS6LOB.mjs";import{a as P,f as X}from"./chunk-VVYGAKV2.mjs";import{b as it}from"./chunk-JFZRSL4X.mjs";import{b as k}from"./chunk-M4UKLRRZ.mjs";import{b as S}from"./chunk-V5ZSFCKJ.mjs";import{a as Y}from"./chunk-IODERSYI.mjs";import{a as _}from"./chunk-PBMBPWBN.mjs";import{a as y}from"./chunk-BSA3IGL6.mjs";import{a as j}from"./chunk-NWRCQLFI.mjs";import{a as b}from"./chunk-L2CFZJIP.mjs";import{a as L}from"./chunk-HORSXVIV.mjs";import{b as G}from"./chunk-NGM3AVCY.mjs";import{a as K,b as q,q as v,s as l}from"./chunk-56LVHY6G.mjs";import{c as V,d as $,f as H}from"./chunk-FK6DWWZF.mjs";import{b as f}from"./chunk-VNLGNNIL.mjs";import{b as B}from"./chunk-2AJ5KJ2V.mjs";import{a as h}from"./chunk-LJX4MW7B.mjs";import{b as D,c as F,f as z}from"./chunk-DA76AK4I.mjs";import U from"bignumber.js";var Lt=async()=>{try{let o=J(),{network:e}=d();try{let t=await b({address:o,baseURL:e.apiAddress});if(t!=null){let n={...t,username:L(t.username),nonce:w(t)};return P(n),n}}catch(t){console.error("Failed getting account ",t)}}catch(o){console.error("Failed getting address ",o)}return null};async function I(){let o=T();if(o==null)throw"Provider not initialized";try{if(!o.init)throw"Current provider does not have init() function";return await o.init()?await Lt():void 0}catch(e){console.error("Failed initializing provider ",e)}}async function gt({sessionId:o,transactionBatch:e,isSequential:t}){try{if(e==null)return;let n=tt(),r=ot(e),i=await Z(r);for(let g of i)await et({serverTransaction:g,sessionId:o,isSequential:t});if(!i.every(g=>g.status!=="pending"))return;n&&await I();let{transactions:c}=l(),s=c?.[o];if(s.transactions.every(g=>g.status==="success"))return k({sessionId:o,status:"success"});if(s.transactions.some(g=>g.status==="fail"))return k({sessionId:o,status:"fail"});if(s.transactions.every(g=>g.status==="not executed"))return k({sessionId:o,status:"invalid"})}catch(n){console.error(n)}}async function pt(){let o=G(l()),e=Object.entries(o);e.length!==0&&await Promise.all(e.map(([t,{transactions:n}])=>gt({sessionId:t,transactionBatch:n})))}async function x(){let o=v(),e=nt(),t=null,n=$(o.getState())?.timestamp??null,r=async()=>{try{await pt()}catch(a){console.error("[trackTransactions] Error checking transaction status:",a)}},i=()=>{t||(t=setInterval(r,e))},p=()=>{t&&(clearInterval(t),t=null)},c=()=>{p();let a=o.subscribe(({account:{websocketEvent:m}})=>{m?.message&&m.timestamp!=null&&n!==m.timestamp&&(n=m.timestamp,r())});O.set("websocketEventReceived",a)};r();let s=()=>{p()},u=o.subscribe(({account:{address:a},config:{websocketStatus:m}},g)=>{if(g.config.websocketStatus!==m)switch(m){case"completed":c();break;case"pending":i();break;default:a?i():s();break}});return O.set("websocketStatusChanged",u),{stopTransactionsTracking:s}}async function N({address:o,provider:e,apiAddress:t}){let n=await b({address:o,baseURL:t});if(!n)throw new Error("Account not found");it({address:o,providerType:e.getType()});let r={...n,username:L(n.username),nonce:w(n)};P(r),await A(o),x(),n.shard!=null&&await rt({shard:Number(n.shard),apiAddress:t})}async function lt({provider:o,nativeAuthConfig:e,token:t}){let{network:{apiAddress:n}}=d(),r=_(e),i=t;i||(i=await r.initialize({noCache:!0}));let p=await o.login({token:i}),{address:c,signature:s,...u}=p;if(!c)return console.warn("Login cancelled."),null;if(!s)return console.error("Failed to sign login token"),null;let a=j(u?.accessToken),m=await at({loginData:p,nativeAuthConfig:e,loginToken:i}),g=a?u.accessToken:r.getToken({address:c,token:m,signature:s});q({loginToken:i,signature:s,nativeAuthToken:g});let C=await st({loginToken:i,extraInfoData:{multisig:u?.multisig,impersonate:u?.impersonate},address:c});return await N({address:C,provider:o,apiAddress:n}),{address:C,signature:s}}async function dt(o){let{network:{apiAddress:e}}=d();await o.login();let t=await o.getAddress();if(!t)throw new Error("Address not found");return await N({address:t,provider:o,apiAddress:e}),{address:t}}async function ft(o,e){let t=S(l());if(t)return await lt({provider:o,nativeAuthConfig:t,token:e?.token});let{address:n}=await dt(o);return await A(n),x(),{address:n,signature:""}}async function Tt({provider:o,transactions:e,options:t={}}){await I();let{isGuarded:n,activeGuardianAddress:r,nonce:i}=Y(),p=o.getType()===h.ledger,c=mt({latestNonce:i,transactions:e}),s=r&&n&&!t.skipGuardian?c?.map(a=>(a.version=D.withTxOptions().valueOf(),a.options=F.withOptions({guarded:!0,...p?{hashSign:!0}:{}}).valueOf(),a.guardian=z.newFromBech32(r),a)):c,u=await o.signTransactions(s,t)??[];return X(i+u.length),u}var E=class{constructor(e){this._isLoggingOut=!1;this.provider=e}init(){return this.provider.init()}async login(e){let t=await ft(this.provider,e);return K(this.provider.getType()),ht(this),R.getInstance().init(),t}isInitialized(){return this.provider.isInitialized()}async logout(e={shouldBroadcastLogoutAcrossTabs:!0}){if(this._isLoggingOut)return console.warn("Logout already in progress"),!1;this._isLoggingOut=!0;let t=await ct({provider:this.provider,options:e});return this._isLoggingOut=!1,t}getType(){return this.provider.getType()}getProvider(){return this.provider}async signTransactions(e,t){try{return await Tt({provider:this.provider,transactions:e,options:t})}catch(n){let r=M(n);throw new Error(r)}}async signMessage(e,t){try{return await ut({provider:this.provider,message:e,options:t})}catch(n){let r=M(n,"warning");throw new Error(r)}}cancelLogin(){this.provider.cancelLogin?.()}};var vt=null;function ht(o){vt=o}function T(){return vt||new E(B)}var R=class o{constructor(){this.store=v();this.warningLogoutTimeoutRef=null;this.actualLogoutTimeoutRef=null;this.plannedLogoutTimeoutRef=null;this.plannedLogoutKey=null;this.init=async()=>{if(!this.shouldStart())return;let e=this.store.getState(),t=f(e),{isExpired:n}=y(t?.nativeAuthToken);n?T().logout():this.addPlannedLogout()};this.stop=()=>{clearTimeout(this.warningLogoutTimeoutRef??0),clearTimeout(this.plannedLogoutTimeoutRef??0),clearTimeout(this.actualLogoutTimeoutRef??0),this.warningLogoutTimeoutRef=null,this.plannedLogoutTimeoutRef=null,this.actualLogoutTimeoutRef=null,this.plannedLogoutKey=null};this.shouldStart=()=>{let e=this.store.getState(),t=f(e),n=H(e);return!!(t?.nativeAuthToken&&n)};this.addPlannedLogout=()=>{let e=T(),t=V(this.store.getState()),n=e.getType()===h.webview;if(!t||n)return;this.addLogoutWarning();let r=f(this.store.getState()),{secondsUntilExpires:i,expiresAt:p}=y(r?.nativeAuthToken),c=new U(String(i)),s=`${t}_${p}`,u=this.plannedLogoutKey===s;if(!(i&&c.isGreaterThan(0))||u)return;this.plannedLogoutKey=s,clearTimeout(this.plannedLogoutTimeoutRef??0);let m=c.times(1e3);this.actualLogoutTimeoutRef=setTimeout(()=>{W.getInstance().createCustomToast({toastId:"native-auth-logout",iconClassName:"warning",title:"Logging out",icon:"close",message:"Your session has expired!"}),this.actualLogoutTimeoutRef=null},m.toNumber()-3e3),this.plannedLogoutTimeoutRef=setTimeout(()=>{e.logout(),this.plannedLogoutTimeoutRef=null,this.plannedLogoutKey=null},m.toNumber())};this.addLogoutWarning=()=>{if(this.warningLogoutTimeoutRef)return;let e=S(this.store.getState()),t=f(this.store.getState()),{secondsUntilExpires:n}=y(t?.nativeAuthToken),r=new U(String(n)),i=r.times(1e3);if(!n||r.isLessThanOrEqualTo(0)||!e?.tokenExpirationToastWarningSeconds)return;let c=new U(e?.tokenExpirationToastWarningSeconds??0).times(1e3),s=r.times(1e3).minus(c),u=Q(i.toNumber()),a=s.isLessThanOrEqualTo(0)?0:s.toNumber();clearTimeout(this.warningLogoutTimeoutRef??0),this.warningLogoutTimeoutRef=setTimeout(()=>{W.getInstance().createCustomToast({toastId:"native-auth-expired",iconClassName:"warning",title:"Session Expiration Warning",icon:"hourglass",message:`Your session will expire in ${u}!`}),this.warningLogoutTimeoutRef=null},a)}}static getInstance(){return o.instance||(o.instance=new o),o.instance}};export{R as a,gt as b,pt as c,x as d,N as e,lt as f,dt as g,ft as h,Tt as i,E as j,ht as k,T as l,I as m};
|
|
2
|
+
//# sourceMappingURL=chunk-6NXXKXQD.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/managers/LogoutManager/LogoutManager.ts", "../../src/utils/account/refreshAccount.ts", "../../src/methods/trackTransactions/helpers/checkTransactionStatus/helpers/checkBatch/checkBatch.ts", "../../src/methods/trackTransactions/helpers/checkTransactionStatus/checkTransactionStatus.ts", "../../src/methods/trackTransactions/trackTransactions.ts", "../../src/providers/DappProvider/helpers/login/helpers/accountLogin.ts", "../../src/providers/DappProvider/helpers/login/helpers/loginWithNativeToken.ts", "../../src/providers/DappProvider/helpers/login/helpers/loginWithoutNativeToken.ts", "../../src/providers/DappProvider/helpers/login/login.ts", "../../src/providers/DappProvider/helpers/signTransactions/signTransactionsWithProvider.ts", "../../src/providers/DappProvider/DappProvider.ts", "../../src/providers/helpers/accountProvider.ts"],
|
|
4
|
-
"sourcesContent": ["import BigNumber from 'bignumber.js';\nimport { ToastManager } from 'managers/ToastManager';\nimport { getAccountProvider } from 'providers/helpers/accountProvider';\nimport { ProviderTypeEnum } from 'providers/types/providerFactory.types';\nimport { getTokenExpiration } from 'services/nativeAuth/methods/getTokenExpiration';\nimport {\n addressSelector,\n isLoggedInSelector\n} from 'store/selectors/accountSelectors';\nimport { nativeAuthConfigSelector } from 'store/selectors/configSelectors';\nimport { tokenLoginSelector } from 'store/selectors/loginInfoSelectors';\nimport { getStore } from 'store/store';\nimport { IconNamesEnum } from 'types/enums.types';\nimport { getHumanReadableTokenExpirationTime } from './helpers/getHumanReadableTokenExpirationTime';\n\nexport class LogoutManager {\n private static instance: LogoutManager;\n private store = getStore();\n private warningLogoutTimeoutRef: ReturnType<typeof setInterval> | null = null;\n private actualLogoutTimeoutRef: ReturnType<typeof setInterval> | null = null;\n private plannedLogoutTimeoutRef: ReturnType<typeof setInterval> | null = null;\n private plannedLogoutKey: string | null = null;\n\n public static getInstance(): LogoutManager {\n if (!LogoutManager.instance) {\n LogoutManager.instance = new LogoutManager();\n }\n return LogoutManager.instance;\n }\n\n private constructor() {}\n\n public init = async () => {\n if (!this.shouldStart()) {\n return;\n }\n\n const state = this.store.getState();\n const tokenLogin = tokenLoginSelector(state);\n\n const { isExpired: isNativeAuthTokenExpired } = getTokenExpiration(\n tokenLogin?.nativeAuthToken\n );\n\n if (isNativeAuthTokenExpired) {\n const provider = getAccountProvider();\n provider.logout();\n } else {\n this.addPlannedLogout();\n }\n };\n\n public stop = () => {\n clearTimeout(this.warningLogoutTimeoutRef ?? 0);\n clearTimeout(this.plannedLogoutTimeoutRef ?? 0);\n clearTimeout(this.actualLogoutTimeoutRef ?? 0);\n\n this.warningLogoutTimeoutRef = null;\n this.plannedLogoutTimeoutRef = null;\n this.actualLogoutTimeoutRef = null;\n this.plannedLogoutKey = null;\n };\n\n private readonly shouldStart = (): boolean => {\n const state = this.store.getState();\n const tokenLogin = tokenLoginSelector(state);\n const isLoggedIn = isLoggedInSelector(state);\n return Boolean(tokenLogin?.nativeAuthToken && isLoggedIn);\n };\n\n private addPlannedLogout = () => {\n const provider = getAccountProvider();\n const address = addressSelector(this.store.getState());\n const isWebviewLogin = provider.getType() === ProviderTypeEnum.webview;\n\n // prevent unexpected logout if webview login\n if (!address || isWebviewLogin) {\n return;\n }\n\n this.addLogoutWarning();\n\n const tokenLogin = tokenLoginSelector(this.store.getState());\n\n const { secondsUntilExpires, expiresAt } = getTokenExpiration(\n tokenLogin?.nativeAuthToken\n );\n\n // Handle the actual logout functionality.\n const secondsUntilExpiresBN = new BigNumber(String(secondsUntilExpires));\n const plannedLogoutKey = `${address}_${expiresAt}`;\n const plannedLogoutSet = this.plannedLogoutKey === plannedLogoutKey;\n\n const isValidInterval =\n secondsUntilExpires && secondsUntilExpiresBN.isGreaterThan(0);\n\n if (!isValidInterval || plannedLogoutSet) {\n return;\n }\n\n this.plannedLogoutKey = plannedLogoutKey;\n\n clearTimeout(this.plannedLogoutTimeoutRef ?? 0);\n const millisecondsUntilLogout = secondsUntilExpiresBN.times(1000);\n\n this.actualLogoutTimeoutRef = setTimeout(() => {\n ToastManager.getInstance().createCustomToast({\n toastId: 'native-auth-logout',\n iconClassName: 'warning',\n title: 'Logging out',\n icon: IconNamesEnum.close,\n message: 'Your session has expired!'\n });\n this.actualLogoutTimeoutRef = null;\n }, millisecondsUntilLogout.toNumber() - 3000);\n\n this.plannedLogoutTimeoutRef = setTimeout(() => {\n provider.logout();\n this.plannedLogoutTimeoutRef = null;\n this.plannedLogoutKey = null;\n }, millisecondsUntilLogout.toNumber());\n };\n\n private readonly addLogoutWarning = () => {\n if (this.warningLogoutTimeoutRef) {\n return;\n }\n\n const nativeAuthConfig = nativeAuthConfigSelector(this.store.getState());\n const tokenLogin = tokenLoginSelector(this.store.getState());\n\n const { secondsUntilExpires } = getTokenExpiration(\n tokenLogin?.nativeAuthToken\n );\n\n const secondsUntilExpiresBN = new BigNumber(String(secondsUntilExpires));\n const millisecondsUntilLogout = secondsUntilExpiresBN.times(1000);\n\n if (\n !secondsUntilExpires ||\n secondsUntilExpiresBN.isLessThanOrEqualTo(0) ||\n !nativeAuthConfig?.tokenExpirationToastWarningSeconds\n ) {\n return;\n }\n\n const logoutWarningOffsetSeconds = new BigNumber(\n nativeAuthConfig?.tokenExpirationToastWarningSeconds ?? 0\n );\n\n const logoutWarningOffsetMilliseconds =\n logoutWarningOffsetSeconds.times(1000);\n\n const millisecondsUntilLogoutWarning = secondsUntilExpiresBN\n .times(1000)\n .minus(logoutWarningOffsetMilliseconds);\n\n const readableMinutesUntilLogout = getHumanReadableTokenExpirationTime(\n millisecondsUntilLogout.toNumber()\n );\n\n const timeoutUntilLogoutWarning =\n millisecondsUntilLogoutWarning.isLessThanOrEqualTo(0)\n ? 0\n : millisecondsUntilLogoutWarning.toNumber();\n\n clearTimeout(this.warningLogoutTimeoutRef ?? 0);\n\n this.warningLogoutTimeoutRef = setTimeout(() => {\n ToastManager.getInstance().createCustomToast({\n toastId: 'native-auth-expired',\n iconClassName: 'warning',\n title: 'Session Expiration Warning',\n icon: IconNamesEnum.hourglass,\n message: `Your session will expire in ${readableMinutesUntilLogout}!`\n });\n this.warningLogoutTimeoutRef = null;\n }, timeoutUntilLogoutWarning);\n };\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/account/accountActions';\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 const account = await setNewAccount();\n\n return account;\n } catch (e) {\n console.error('Failed initializing provider ', e);\n }\n\n return undefined;\n}\n", "import { getTransactionsByHashes } from 'apiCalls/transactions/getTransactionsByHashes';\nimport { getIsLoggedIn } from 'methods/account/getIsLoggedIn';\nimport { updateSessionStatus } from 'store/actions/transactions/transactionsActions';\nimport { getState } from 'store/store';\nimport {\n TransactionBatchStatusesEnum,\n TransactionServerStatusesEnum\n} from 'types/enums.types';\nimport { SignedTransactionType } from 'types/transactions.types';\n\nimport { refreshAccount } from 'utils/account/refreshAccount';\nimport { getPendingTransactions } from '../getPendingTransactions';\nimport { runTransactionStatusUpdate } from './helpers/runTransactionStatusUpdate';\n\nexport interface TransactionStatusTrackerPropsType {\n sessionId: string;\n transactionBatch: SignedTransactionType[];\n isSequential?: boolean;\n}\n\nexport async function checkBatch({\n sessionId,\n transactionBatch: transactions,\n isSequential\n}: TransactionStatusTrackerPropsType) {\n try {\n if (transactions == null) {\n return;\n }\n\n const isLoggedIn = getIsLoggedIn();\n\n const pendingTransactions = getPendingTransactions(transactions);\n\n const serverTransactions =\n await getTransactionsByHashes(pendingTransactions);\n\n for (const serverTransaction of serverTransactions) {\n await runTransactionStatusUpdate({\n serverTransaction,\n sessionId,\n isSequential\n });\n }\n\n const hasCompleted = serverTransactions.every(\n (tx) => tx.status !== TransactionServerStatusesEnum.pending\n );\n\n if (!hasCompleted) {\n return;\n }\n\n if (isLoggedIn) {\n await refreshAccount();\n }\n\n // Call the onSuccess or onFail callback only if the transactions are sent normally (not using batch transactions mechanism).\n // The batch transactions mechanism will call the callbacks separately.\n\n const { transactions: sessions } = getState();\n const session = sessions?.[sessionId];\n\n const isSuccessful = session.transactions.every(\n (tx) => tx.status === TransactionServerStatusesEnum.success\n );\n\n if (isSuccessful) {\n return updateSessionStatus({\n sessionId,\n status: TransactionBatchStatusesEnum.success\n });\n }\n\n const isFailed = session.transactions.some(\n (tx) => tx.status === TransactionServerStatusesEnum.fail\n );\n\n if (isFailed) {\n return updateSessionStatus({\n sessionId,\n status: TransactionBatchStatusesEnum.fail\n });\n }\n\n const isInvalid = session.transactions.every(\n (tx) => tx.status === TransactionServerStatusesEnum.notExecuted\n );\n\n if (isInvalid) {\n return updateSessionStatus({\n sessionId,\n status: TransactionBatchStatusesEnum.invalid\n });\n }\n } catch (error) {\n console.error(error);\n }\n}\n", "import { pendingTransactionsSessionsSelector } from 'store/selectors/transactionsSelector';\nimport { getState } from 'store/store';\nimport { checkBatch } from './helpers/checkBatch';\n\nexport async function checkTransactionStatus() {\n const pendingSessions = pendingTransactionsSessionsSelector(getState());\n\n const entries = Object.entries(pendingSessions);\n if (entries.length === 0) {\n return;\n }\n\n await Promise.all(\n entries.map(([sessionId, { transactions }]) =>\n checkBatch({\n sessionId,\n transactionBatch: transactions\n })\n )\n );\n}\n", "import { subscriptions } from 'constants/storage.constants';\nimport { WebsocketConnectionStatusEnum } from 'constants/websocket.constants';\nimport { websocketEventSelector } from 'store/selectors/accountSelectors';\nimport { getStore } from 'store/store';\nimport { SubscriptionsEnum } from 'types/subscriptions.type';\nimport { checkTransactionStatus } from './helpers/checkTransactionStatus';\nimport { getPollingInterval } from './helpers/getPollingInterval';\n\n/**\n * Tracks transactions using websocket or polling\n * @returns stopTransactionsTracking function\n */\nexport async function trackTransactions(): Promise<{\n stopTransactionsTracking: () => void;\n}> {\n const store = getStore();\n const pollingInterval = getPollingInterval();\n let pollingIntervalRef: ReturnType<typeof setTimeout> | null = null;\n let timestamp = websocketEventSelector(store.getState())?.timestamp ?? null;\n\n const recheckStatus = async (): Promise<void> => {\n try {\n await checkTransactionStatus();\n } catch (error) {\n console.error(\n '[trackTransactions] Error checking transaction status:',\n error\n );\n }\n };\n\n const startPolling = (): void => {\n // Prevent multiple polling intervals\n if (pollingIntervalRef) {\n return;\n }\n pollingIntervalRef = setInterval(recheckStatus, pollingInterval);\n };\n\n const stopPolling = (): void => {\n if (pollingIntervalRef) {\n clearInterval(pollingIntervalRef);\n pollingIntervalRef = null;\n }\n };\n\n const setupWebSocketTracking = (): void => {\n stopPolling();\n const unsubscribeWebsocketEvent = store.subscribe(\n ({ account: { websocketEvent } }) => {\n if (\n websocketEvent?.message &&\n websocketEvent.timestamp != null &&\n timestamp !== websocketEvent.timestamp\n ) {\n timestamp = websocketEvent.timestamp;\n recheckStatus();\n }\n }\n );\n\n subscriptions.set(\n SubscriptionsEnum.websocketEventReceived,\n unsubscribeWebsocketEvent\n );\n };\n\n // Initial execution\n recheckStatus();\n\n const stopTransactionsTracking = (): void => {\n stopPolling();\n };\n\n const unsubscribeWebsocketStatus = store.subscribe(\n ({ account: { address }, config: { websocketStatus } }, prevState) => {\n const hasStatusChange =\n prevState.config.websocketStatus !== websocketStatus;\n\n if (!hasStatusChange) {\n return;\n }\n\n switch (websocketStatus) {\n case WebsocketConnectionStatusEnum.COMPLETED:\n setupWebSocketTracking();\n break;\n case WebsocketConnectionStatusEnum.PENDING:\n startPolling();\n break;\n default:\n address ? startPolling() : stopTransactionsTracking();\n break;\n }\n }\n );\n\n subscriptions.set(\n SubscriptionsEnum.websocketStatusChanged,\n unsubscribeWebsocketStatus\n );\n return { stopTransactionsTracking };\n}\n", "import { getLatestNonce } from 'methods/account/getLatestNonce';\nimport { setGasStationMetadata } from 'methods/initApp/gasStationMetadata/setGasStationMetadata';\nimport { registerWebsocketListener } from 'methods/initApp/websocket/registerWebsocket';\nimport { trackTransactions } from 'methods/trackTransactions/trackTransactions';\nimport { IProvider } from 'providers/types/providerFactory.types';\nimport { setAccount } from 'store/actions/account';\nimport { loginAction } from 'store/actions/sharedActions/sharedActions';\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 { getNetworkConfig } from 'methods/network/getNetworkConfig';\nimport { IProvider } from 'providers/types/providerFactory.types';\nimport { nativeAuth } from 'services/nativeAuth';\nimport { decodeNativeAuthToken } from 'services/nativeAuth/helpers/decodeNativeAuthToken';\nimport { NativeAuthConfigType } from 'services/nativeAuth/nativeAuth.types';\nimport { setTokenLogin } from 'store/actions/loginInfo/loginInfoActions';\nimport { accountLogin } from './accountLogin';\nimport { extractAddressFromToken } from './extractAddressFromToken';\nimport { getMultisigLoginToken } from './getMultisigLoginToken';\n\nexport async function loginWithNativeToken({\n provider,\n nativeAuthConfig,\n token\n}: {\n provider: IProvider;\n nativeAuthConfig: NativeAuthConfigType;\n token?: string;\n}) {\n const {\n network: { apiAddress }\n } = getNetworkConfig();\n\n const nativeAuthClient = nativeAuth(nativeAuthConfig);\n let loginToken = token;\n\n if (!loginToken) {\n loginToken = await nativeAuthClient.initialize({\n noCache: true\n });\n }\n\n const loginData = await provider.login({\n token: loginToken\n });\n\n const { address, signature, ...loginResult } = loginData;\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 // nativeAuthToken received from hub login\n const decodedToken = decodeNativeAuthToken(loginResult?.accessToken);\n\n const usedLoginToken = await getMultisigLoginToken({\n loginData,\n nativeAuthConfig,\n loginToken\n });\n\n const nativeAuthToken = decodedToken\n ? loginResult.accessToken\n : nativeAuthClient.getToken({\n address,\n token: usedLoginToken,\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", "import { getNetworkConfig } from 'methods/network/getNetworkConfig';\nimport { IProvider } from 'providers/types/providerFactory.types';\nimport { accountLogin } from './accountLogin';\n\nexport async 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", "import { registerWebsocketListener } from 'methods/initApp/websocket/registerWebsocket';\nimport { trackTransactions } from 'methods/trackTransactions/trackTransactions';\nimport { IProvider } from 'providers/types/providerFactory.types';\nimport { nativeAuthConfigSelector } from 'store/selectors/configSelectors';\nimport { getState } from 'store/store';\nimport { loginWithNativeToken } from './helpers/loginWithNativeToken';\nimport { loginWithoutNativeToken } from './helpers/loginWithoutNativeToken';\n\nexport async function login(\n provider: IProvider,\n options?: { token?: string }\n): Promise<{\n address: string;\n signature: string;\n} | null> {\n const nativeAuthConfig = nativeAuthConfigSelector(getState());\n\n if (nativeAuthConfig) {\n const data = await loginWithNativeToken({\n provider,\n nativeAuthConfig,\n token: options?.token\n });\n return data;\n }\n\n const { address } = await loginWithoutNativeToken(provider);\n\n await registerWebsocketListener(address);\n trackTransactions();\n\n return { address, signature: '' };\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/account/accountActions';\nimport { refreshAccount } from 'utils/account/refreshAccount';\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 { LogoutManager } from 'managers/LogoutManager/LogoutManager';\nimport { setAccountProvider } from 'providers/helpers/accountProvider';\nimport { setProviderType } from 'store/actions/loginInfo/loginInfoActions';\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 signTransactionsWithProvider,\n SignTransactionsOptionsType\n} from './helpers/signTransactions/signTransactionsWithProvider';\n\nexport class DappProvider {\n private provider: IProvider;\n private _isLoggingOut = false;\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(options?: { token?: string }) {\n const data = await login(this.provider, options);\n setProviderType(this.provider.getType());\n setAccountProvider(this);\n LogoutManager.getInstance().init();\n return data;\n }\n\n isInitialized(): boolean {\n return this.provider.isInitialized();\n }\n\n async logout(\n options = {\n shouldBroadcastLogoutAcrossTabs: true\n }\n ): Promise<boolean> {\n if (this._isLoggingOut) {\n console.warn('Logout already in progress');\n return false;\n }\n\n this._isLoggingOut = true;\n\n const isLoggedOut = await logout({ provider: this.provider, options });\n\n this._isLoggingOut = false;\n\n return isLoggedOut;\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 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"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["import BigNumber from 'bignumber.js';\nimport { ToastManager } from 'managers/ToastManager';\nimport { getAccountProvider } from 'providers/helpers/accountProvider';\nimport { ProviderTypeEnum } from 'providers/types/providerFactory.types';\nimport { getTokenExpiration } from 'services/nativeAuth/methods/getTokenExpiration';\nimport {\n addressSelector,\n isLoggedInSelector\n} from 'store/selectors/accountSelectors';\nimport { nativeAuthConfigSelector } from 'store/selectors/configSelectors';\nimport { tokenLoginSelector } from 'store/selectors/loginInfoSelectors';\nimport { getStore } from 'store/store';\nimport { IconNamesEnum } from 'types/enums.types';\nimport { getHumanReadableTokenExpirationTime } from './helpers/getHumanReadableTokenExpirationTime';\n\nexport class LogoutManager {\n private static instance: LogoutManager;\n private store = getStore();\n private warningLogoutTimeoutRef: ReturnType<typeof setInterval> | null = null;\n private actualLogoutTimeoutRef: ReturnType<typeof setInterval> | null = null;\n private plannedLogoutTimeoutRef: ReturnType<typeof setInterval> | null = null;\n private plannedLogoutKey: string | null = null;\n\n public static getInstance(): LogoutManager {\n if (!LogoutManager.instance) {\n LogoutManager.instance = new LogoutManager();\n }\n return LogoutManager.instance;\n }\n\n private constructor() {}\n\n public init = async () => {\n if (!this.shouldStart()) {\n return;\n }\n\n const state = this.store.getState();\n const tokenLogin = tokenLoginSelector(state);\n\n const { isExpired: isNativeAuthTokenExpired } = getTokenExpiration(\n tokenLogin?.nativeAuthToken\n );\n\n if (isNativeAuthTokenExpired) {\n const provider = getAccountProvider();\n provider.logout();\n } else {\n this.addPlannedLogout();\n }\n };\n\n public stop = () => {\n clearTimeout(this.warningLogoutTimeoutRef ?? 0);\n clearTimeout(this.plannedLogoutTimeoutRef ?? 0);\n clearTimeout(this.actualLogoutTimeoutRef ?? 0);\n\n this.warningLogoutTimeoutRef = null;\n this.plannedLogoutTimeoutRef = null;\n this.actualLogoutTimeoutRef = null;\n this.plannedLogoutKey = null;\n };\n\n private readonly shouldStart = (): boolean => {\n const state = this.store.getState();\n const tokenLogin = tokenLoginSelector(state);\n const isLoggedIn = isLoggedInSelector(state);\n return Boolean(tokenLogin?.nativeAuthToken && isLoggedIn);\n };\n\n private addPlannedLogout = () => {\n const provider = getAccountProvider();\n const address = addressSelector(this.store.getState());\n const isWebviewLogin = provider.getType() === ProviderTypeEnum.webview;\n\n // prevent unexpected logout if webview login\n if (!address || isWebviewLogin) {\n return;\n }\n\n this.addLogoutWarning();\n\n const tokenLogin = tokenLoginSelector(this.store.getState());\n\n const { secondsUntilExpires, expiresAt } = getTokenExpiration(\n tokenLogin?.nativeAuthToken\n );\n\n // Handle the actual logout functionality.\n const secondsUntilExpiresBN = new BigNumber(String(secondsUntilExpires));\n const plannedLogoutKey = `${address}_${expiresAt}`;\n const plannedLogoutSet = this.plannedLogoutKey === plannedLogoutKey;\n\n const isValidInterval =\n secondsUntilExpires && secondsUntilExpiresBN.isGreaterThan(0);\n\n if (!isValidInterval || plannedLogoutSet) {\n return;\n }\n\n this.plannedLogoutKey = plannedLogoutKey;\n\n clearTimeout(this.plannedLogoutTimeoutRef ?? 0);\n const millisecondsUntilLogout = secondsUntilExpiresBN.times(1000);\n\n this.actualLogoutTimeoutRef = setTimeout(() => {\n ToastManager.getInstance().createCustomToast({\n toastId: 'native-auth-logout',\n iconClassName: 'warning',\n title: 'Logging out',\n icon: IconNamesEnum.close,\n message: 'Your session has expired!'\n });\n this.actualLogoutTimeoutRef = null;\n }, millisecondsUntilLogout.toNumber() - 3000);\n\n this.plannedLogoutTimeoutRef = setTimeout(() => {\n provider.logout();\n this.plannedLogoutTimeoutRef = null;\n this.plannedLogoutKey = null;\n }, millisecondsUntilLogout.toNumber());\n };\n\n private readonly addLogoutWarning = () => {\n if (this.warningLogoutTimeoutRef) {\n return;\n }\n\n const nativeAuthConfig = nativeAuthConfigSelector(this.store.getState());\n const tokenLogin = tokenLoginSelector(this.store.getState());\n\n const { secondsUntilExpires } = getTokenExpiration(\n tokenLogin?.nativeAuthToken\n );\n\n const secondsUntilExpiresBN = new BigNumber(String(secondsUntilExpires));\n const millisecondsUntilLogout = secondsUntilExpiresBN.times(1000);\n\n if (\n !secondsUntilExpires ||\n secondsUntilExpiresBN.isLessThanOrEqualTo(0) ||\n !nativeAuthConfig?.tokenExpirationToastWarningSeconds\n ) {\n return;\n }\n\n const logoutWarningOffsetSeconds = new BigNumber(\n nativeAuthConfig?.tokenExpirationToastWarningSeconds ?? 0\n );\n\n const logoutWarningOffsetMilliseconds =\n logoutWarningOffsetSeconds.times(1000);\n\n const millisecondsUntilLogoutWarning = secondsUntilExpiresBN\n .times(1000)\n .minus(logoutWarningOffsetMilliseconds);\n\n const readableMinutesUntilLogout = getHumanReadableTokenExpirationTime(\n millisecondsUntilLogout.toNumber()\n );\n\n const timeoutUntilLogoutWarning =\n millisecondsUntilLogoutWarning.isLessThanOrEqualTo(0)\n ? 0\n : millisecondsUntilLogoutWarning.toNumber();\n\n clearTimeout(this.warningLogoutTimeoutRef ?? 0);\n\n this.warningLogoutTimeoutRef = setTimeout(() => {\n ToastManager.getInstance().createCustomToast({\n toastId: 'native-auth-expired',\n iconClassName: 'warning',\n title: 'Session Expiration Warning',\n icon: IconNamesEnum.hourglass,\n message: `Your session will expire in ${readableMinutesUntilLogout}!`\n });\n this.warningLogoutTimeoutRef = null;\n }, timeoutUntilLogoutWarning);\n };\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/account/accountActions';\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 const account = await setNewAccount();\n\n return account;\n } catch (e) {\n console.error('Failed initializing provider ', e);\n }\n\n return undefined;\n}\n", "import { getTransactionsByHashes } from 'apiCalls/transactions/getTransactionsByHashes';\nimport { getIsLoggedIn } from 'methods/account/getIsLoggedIn';\nimport { updateSessionStatus } from 'store/actions/transactions/transactionsActions';\nimport { getState } from 'store/store';\nimport {\n TransactionBatchStatusesEnum,\n TransactionServerStatusesEnum\n} from 'types/enums.types';\nimport { SignedTransactionType } from 'types/transactions.types';\n\nimport { refreshAccount } from 'utils/account/refreshAccount';\nimport { getPendingTransactions } from '../getPendingTransactions';\nimport { runTransactionStatusUpdate } from './helpers/runTransactionStatusUpdate';\n\nexport interface TransactionStatusTrackerPropsType {\n sessionId: string;\n transactionBatch: SignedTransactionType[];\n isSequential?: boolean;\n}\n\nexport async function checkBatch({\n sessionId,\n transactionBatch: transactions,\n isSequential\n}: TransactionStatusTrackerPropsType) {\n try {\n if (transactions == null) {\n return;\n }\n\n const isLoggedIn = getIsLoggedIn();\n\n const pendingTransactions = getPendingTransactions(transactions);\n\n const serverTransactions =\n await getTransactionsByHashes(pendingTransactions);\n\n for (const serverTransaction of serverTransactions) {\n await runTransactionStatusUpdate({\n serverTransaction,\n sessionId,\n isSequential\n });\n }\n\n const hasCompleted = serverTransactions.every(\n (tx) => tx.status !== TransactionServerStatusesEnum.pending\n );\n\n if (!hasCompleted) {\n return;\n }\n\n if (isLoggedIn) {\n await refreshAccount();\n }\n\n // Call the onSuccess or onFail callback only if the transactions are sent normally (not using batch transactions mechanism).\n // The batch transactions mechanism will call the callbacks separately.\n\n const { transactions: sessions } = getState();\n const session = sessions?.[sessionId];\n\n const isSuccessful = session.transactions.every(\n (tx) => tx.status === TransactionServerStatusesEnum.success\n );\n\n if (isSuccessful) {\n return updateSessionStatus({\n sessionId,\n status: TransactionBatchStatusesEnum.success\n });\n }\n\n const isFailed = session.transactions.some(\n (tx) => tx.status === TransactionServerStatusesEnum.fail\n );\n\n if (isFailed) {\n return updateSessionStatus({\n sessionId,\n status: TransactionBatchStatusesEnum.fail\n });\n }\n\n const isInvalid = session.transactions.every(\n (tx) => tx.status === TransactionServerStatusesEnum.notExecuted\n );\n\n if (isInvalid) {\n return updateSessionStatus({\n sessionId,\n status: TransactionBatchStatusesEnum.invalid\n });\n }\n } catch (error) {\n console.error(error);\n }\n}\n", "import { pendingTransactionsSessionsSelector } from 'store/selectors/transactionsSelector';\nimport { getState } from 'store/store';\nimport { checkBatch } from './helpers/checkBatch';\n\nexport async function checkTransactionStatus() {\n const pendingSessions = pendingTransactionsSessionsSelector(getState());\n\n const entries = Object.entries(pendingSessions);\n if (entries.length === 0) {\n return;\n }\n\n await Promise.all(\n entries.map(([sessionId, { transactions }]) =>\n checkBatch({\n sessionId,\n transactionBatch: transactions\n })\n )\n );\n}\n", "import { subscriptions } from 'constants/storage.constants';\nimport { WebsocketConnectionStatusEnum } from 'constants/websocket.constants';\nimport { websocketEventSelector } from 'store/selectors/accountSelectors';\nimport { getStore } from 'store/store';\nimport { SubscriptionsEnum } from 'types/subscriptions.type';\nimport { checkTransactionStatus } from './helpers/checkTransactionStatus';\nimport { getPollingInterval } from './helpers/getPollingInterval';\n\n/**\n * Tracks transactions using websocket or polling\n * @returns stopTransactionsTracking function\n */\nexport async function trackTransactions(): Promise<{\n stopTransactionsTracking: () => void;\n}> {\n const store = getStore();\n const pollingInterval = getPollingInterval();\n let pollingIntervalRef: ReturnType<typeof setTimeout> | null = null;\n let timestamp = websocketEventSelector(store.getState())?.timestamp ?? null;\n\n const recheckStatus = async (): Promise<void> => {\n try {\n await checkTransactionStatus();\n } catch (error) {\n console.error(\n '[trackTransactions] Error checking transaction status:',\n error\n );\n }\n };\n\n const startPolling = (): void => {\n // Prevent multiple polling intervals\n if (pollingIntervalRef) {\n return;\n }\n pollingIntervalRef = setInterval(recheckStatus, pollingInterval);\n };\n\n const stopPolling = (): void => {\n if (pollingIntervalRef) {\n clearInterval(pollingIntervalRef);\n pollingIntervalRef = null;\n }\n };\n\n const setupWebSocketTracking = (): void => {\n stopPolling();\n const unsubscribeWebsocketEvent = store.subscribe(\n ({ account: { websocketEvent } }) => {\n if (\n websocketEvent?.message &&\n websocketEvent.timestamp != null &&\n timestamp !== websocketEvent.timestamp\n ) {\n timestamp = websocketEvent.timestamp;\n recheckStatus();\n }\n }\n );\n\n subscriptions.set(\n SubscriptionsEnum.websocketEventReceived,\n unsubscribeWebsocketEvent\n );\n };\n\n // Initial execution\n recheckStatus();\n\n const stopTransactionsTracking = (): void => {\n stopPolling();\n };\n\n const unsubscribeWebsocketStatus = store.subscribe(\n ({ account: { address }, config: { websocketStatus } }, prevState) => {\n const hasStatusChange =\n prevState.config.websocketStatus !== websocketStatus;\n\n if (!hasStatusChange) {\n return;\n }\n\n switch (websocketStatus) {\n case WebsocketConnectionStatusEnum.COMPLETED:\n setupWebSocketTracking();\n break;\n case WebsocketConnectionStatusEnum.PENDING:\n startPolling();\n break;\n default:\n address ? startPolling() : stopTransactionsTracking();\n break;\n }\n }\n );\n\n subscriptions.set(\n SubscriptionsEnum.websocketStatusChanged,\n unsubscribeWebsocketStatus\n );\n return { stopTransactionsTracking };\n}\n", "import { getLatestNonce } from 'methods/account/getLatestNonce';\nimport { setGasStationMetadata } from 'methods/initApp/gasStationMetadata/setGasStationMetadata';\nimport { registerWebsocketListener } from 'methods/initApp/websocket/registerWebsocket';\nimport { trackTransactions } from 'methods/trackTransactions/trackTransactions';\nimport { IProvider } from 'providers/types/providerFactory.types';\nimport { setAccount } from 'store/actions/account';\nimport { loginAction } from 'store/actions/sharedActions/sharedActions';\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 { getNetworkConfig } from 'methods/network/getNetworkConfig';\nimport { IProvider } from 'providers/types/providerFactory.types';\nimport { nativeAuth } from 'services/nativeAuth';\nimport { decodeNativeAuthToken } from 'services/nativeAuth/helpers/decodeNativeAuthToken';\nimport { NativeAuthConfigType } from 'services/nativeAuth/nativeAuth.types';\nimport { setTokenLogin } from 'store/actions/loginInfo/loginInfoActions';\nimport { accountLogin } from './accountLogin';\nimport { extractAddressFromToken } from './extractAddressFromToken';\nimport { getMultisigLoginToken } from './getMultisigLoginToken';\n\nexport async function loginWithNativeToken({\n provider,\n nativeAuthConfig,\n token\n}: {\n provider: IProvider;\n nativeAuthConfig: NativeAuthConfigType;\n token?: string;\n}) {\n const {\n network: { apiAddress }\n } = getNetworkConfig();\n\n const nativeAuthClient = nativeAuth(nativeAuthConfig);\n let loginToken = token;\n\n if (!loginToken) {\n loginToken = await nativeAuthClient.initialize({\n noCache: true\n });\n }\n\n const loginData = await provider.login({\n token: loginToken\n });\n\n const { address, signature, ...loginResult } = loginData;\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 // nativeAuthToken received from hub login\n const decodedToken = decodeNativeAuthToken(loginResult?.accessToken);\n\n const usedLoginToken = await getMultisigLoginToken({\n loginData,\n nativeAuthConfig,\n loginToken\n });\n\n const nativeAuthToken = decodedToken\n ? loginResult.accessToken\n : nativeAuthClient.getToken({\n address,\n token: usedLoginToken,\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", "import { getNetworkConfig } from 'methods/network/getNetworkConfig';\nimport { IProvider } from 'providers/types/providerFactory.types';\nimport { accountLogin } from './accountLogin';\n\nexport async 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", "import { registerWebsocketListener } from 'methods/initApp/websocket/registerWebsocket';\nimport { trackTransactions } from 'methods/trackTransactions/trackTransactions';\nimport { IProvider } from 'providers/types/providerFactory.types';\nimport { nativeAuthConfigSelector } from 'store/selectors/configSelectors';\nimport { getState } from 'store/store';\nimport { loginWithNativeToken } from './helpers/loginWithNativeToken';\nimport { loginWithoutNativeToken } from './helpers/loginWithoutNativeToken';\n\nexport async function login(\n provider: IProvider,\n options?: { token?: string }\n): Promise<{\n address: string;\n signature: string;\n} | null> {\n const nativeAuthConfig = nativeAuthConfigSelector(getState());\n\n if (nativeAuthConfig) {\n const data = await loginWithNativeToken({\n provider,\n nativeAuthConfig,\n token: options?.token\n });\n return data;\n }\n\n const { address } = await loginWithoutNativeToken(provider);\n\n await registerWebsocketListener(address);\n trackTransactions();\n\n return { address, signature: '' };\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/account/accountActions';\nimport { refreshAccount } from 'utils/account/refreshAccount';\nimport { computeNonces } from '../computeNonces/computeNonces';\n\nexport type SignTransactionsOptionsType = {\n skipGuardian?: boolean;\n callback?: (signedTransactions: Transaction[]) => Promise<Transaction[]>;\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, options)) ?? [];\n\n setAccountNonce(nonce + signedTransactions.length);\n\n return signedTransactions;\n}\n", "import { Message, Transaction } from 'lib/sdkCore';\nimport { LogoutManager } from 'managers/LogoutManager/LogoutManager';\nimport { setAccountProvider } from 'providers/helpers/accountProvider';\nimport { setProviderType } from 'store/actions/loginInfo/loginInfoActions';\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 signTransactionsWithProvider,\n SignTransactionsOptionsType\n} from './helpers/signTransactions/signTransactionsWithProvider';\n\nexport class DappProvider {\n private provider: IProvider;\n private _isLoggingOut = false;\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(options?: { token?: string }) {\n const data = await login(this.provider, options);\n setProviderType(this.provider.getType());\n setAccountProvider(this);\n LogoutManager.getInstance().init();\n return data;\n }\n\n isInitialized(): boolean {\n return this.provider.isInitialized();\n }\n\n async logout(\n options = {\n shouldBroadcastLogoutAcrossTabs: true\n }\n ): Promise<boolean> {\n if (this._isLoggingOut) {\n console.warn('Logout already in progress');\n return false;\n }\n\n this._isLoggingOut = true;\n\n const isLoggedOut = await logout({ provider: this.provider, options });\n\n this._isLoggingOut = false;\n\n return isLoggedOut;\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 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"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["BigNumber", "setNewAccount", "address", "getAddress", "network", "getNetworkConfig", "account", "fetchAccount", "accountData", "trimUsernameDomain", "getLatestNonce", "setAccount", "e", "refreshAccount", "provider", "getAccountProvider", "checkBatch", "sessionId", "transactions", "isSequential", "isLoggedIn", "getIsLoggedIn", "pendingTransactions", "getPendingTransactions", "serverTransactions", "getTransactionsByHashes", "serverTransaction", "runTransactionStatusUpdate", "tx", "refreshAccount", "sessions", "getState", "session", "updateSessionStatus", "error", "checkTransactionStatus", "pendingSessions", "pendingTransactionsSessionsSelector", "getState", "entries", "sessionId", "transactions", "checkBatch", "trackTransactions", "store", "getStore", "pollingInterval", "getPollingInterval", "pollingIntervalRef", "timestamp", "websocketEventSelector", "recheckStatus", "checkTransactionStatus", "error", "startPolling", "stopPolling", "setupWebSocketTracking", "unsubscribeWebsocketEvent", "websocketEvent", "subscriptions", "stopTransactionsTracking", "unsubscribeWebsocketStatus", "address", "websocketStatus", "prevState", "accountLogin", "address", "provider", "apiAddress", "account", "fetchAccount", "loginAction", "newAccount", "trimUsernameDomain", "getLatestNonce", "setAccount", "registerWebsocketListener", "trackTransactions", "setGasStationMetadata", "loginWithNativeToken", "provider", "nativeAuthConfig", "token", "apiAddress", "getNetworkConfig", "nativeAuthClient", "nativeAuth", "loginToken", "loginData", "address", "signature", "loginResult", "decodedToken", "decodeNativeAuthToken", "usedLoginToken", "getMultisigLoginToken", "nativeAuthToken", "setTokenLogin", "extractedAddress", "extractAddressFromToken", "accountLogin", "loginWithoutNativeToken", "provider", "apiAddress", "getNetworkConfig", "address", "accountLogin", "login", "provider", "options", "nativeAuthConfig", "nativeAuthConfigSelector", "getState", "loginWithNativeToken", "address", "loginWithoutNativeToken", "registerWebsocketListener", "trackTransactions", "signTransactionsWithProvider", "provider", "transactions", "options", "refreshAccount", "isGuarded", "activeGuardianAddress", "nonce", "getAccount", "isLedger", "ProviderTypeEnum", "transactionsWithComputedNonce", "computeNonces", "transactionsToSign", "transaction", "TransactionVersion", "TransactionOptions", "Address", "signedTransactions", "setAccountNonce", "DappProvider", "provider", "options", "data", "login", "setProviderType", "setAccountProvider", "LogoutManager", "isLoggedOut", "logout", "transactions", "signTransactionsWithProvider", "error", "errorMessage", "handleSignError", "message", "signMessageWithProvider", "accountProvider", "setAccountProvider", "provider", "getAccountProvider", "DappProvider", "emptyProvider", "LogoutManager", "_LogoutManager", "getStore", "state", "tokenLogin", "tokenLoginSelector", "isNativeAuthTokenExpired", "getTokenExpiration", "getAccountProvider", "isLoggedIn", "isLoggedInSelector", "provider", "address", "addressSelector", "isWebviewLogin", "ProviderTypeEnum", "secondsUntilExpires", "expiresAt", "secondsUntilExpiresBN", "BigNumber", "plannedLogoutKey", "plannedLogoutSet", "millisecondsUntilLogout", "ToastManager", "nativeAuthConfig", "nativeAuthConfigSelector", "logoutWarningOffsetMilliseconds", "millisecondsUntilLogoutWarning", "readableMinutesUntilLogout", "getHumanReadableTokenExpirationTime", "timeoutUntilLogoutWarning"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as u}from"./chunk-U3UMCTU6.mjs";import{a as T}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as u}from"./chunk-U3UMCTU6.mjs";import{a as T}from"./chunk-DFFL2BRF.mjs";import{a as p}from"./chunk-573LAOYN.mjs";import{a as i}from"./chunk-M3F2J3PW.mjs";import{a as k}from"./chunk-HYPARWQN.mjs";import{a as l}from"./chunk-YJCTRUJT.mjs";import{c as m}from"./chunk-PJWJZHIS.mjs";import{a as o}from"./chunk-OQURAWR4.mjs";var g=class{static async processTransactions({address:v,egldLabel:L,explorerAddress:a,transactions:f}){let h=f.map(e=>k({address:v,explorerAddress:a,transaction:e}));return await Promise.all(h.map(async e=>{let s=e.receiverAssets?.name.replace(/\p{Emoji}/gu,""),c=e.senderAssets?.name.replace(/\p{Emoji}/gu,""),{senderLockedAccount:D,receiverLockedAccount:x}=await T({receiver:e.receiver,sender:e.sender,tokenId:e.tokenIdentifier}),{egldValueData:t,tokenValueData:n,nftValueData:r}=p({transaction:e}),y=r?.token.type==="MetaESDT"?void 0:r?.badgeText,d=u.getData({input:t?.value??n?.value??r?.value??"",decimals:t?.decimals??n?.decimals??r?.decimals??m,digits:2}),S={badge:y??void 0,collection:n?.token.collection??r?.token.collection,egldLabel:t?L:"",link:l({explorerAddress:a,to:n?.tokenExplorerLink??r?.tokenExplorerLink??""}),linkText:n?.tokenLinkText??r?.tokenLinkText,name:n?.token.name??r?.token.name,showFormattedAmount:!!(t||n?.tokenFormattedAmount||r?.tokenFormattedAmount),svgUrl:n?.token.svgUrl??r?.token.svgUrl,ticker:n?.token.ticker??r?.token.ticker,titleText:n?.titleText??r?.titleText,valueDecimal:d.valueDecimal,valueInteger:d.valueInteger},w=i(e.receiverShard),A=i(e.senderShard);return{age:e.transactionDetails.age,direction:e.transactionDetails.direction,method:e.transactionDetails.method,iconInfo:e.transactionDetails.iconInfo,link:e.links.transactionLink??"",txHash:e.txHash,receiver:{address:e.receiver,name:s??"",description:`${s??e.receiver} (${e.receiver})`,isContract:o(e.receiver),isTokenLocked:!!x,link:e.links.receiverLink??"",shard:w,shardLink:e.links.receiverShardLink,showLink:e.transactionDetails.direction!=="In"},sender:{address:e.sender,name:c??"",description:`${c??e.sender} (${e.sender})`,isContract:o(e.sender),isTokenLocked:!!D,link:e.links.senderLink??"",shard:A,shardLink:e.links.senderShardLink,showLink:e.transactionDetails.direction!=="Out"},value:S}}))}};export{g as a};
|
|
2
|
+
//# sourceMappingURL=chunk-6P4UYDEH.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as n}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as n}from"./chunk-WF6WR5Q6.mjs";import{a as g}from"./chunk-YJCTRUJT.mjs";import{a as f}from"./chunk-2JKCBTYK.mjs";import{BigNumber as p}from"bignumber.js";async function b({manager:e,provider:s,login:a,token:u,explorerAddress:m,authData:x}){let o={manager:e,provider:s};return await new Promise(async function(A,I){async function d(t){let r=e?e.addressesPerPage??1:1,l=new p(t-1).times(r);e?.updateStartIndex(Math.max(0,parseInt(l.toString()))),await n(o)}async function c(t){if(!(!s||!a)){e?.updateConfirmScreen({...x,selectedAddress:t.selectedAddress,explorerLink:g({to:`/${f}/${t.selectedAddress}`,explorerAddress:m})});try{let r=u?await s.tokenLogin({token:Buffer.from(`${u}{}`),addressIndex:t.addressIndex}):await a({addressIndex:t.addressIndex});e.unsubscribeFromAuthEvents({handleCancel:i,handleAccessWallet:c,handleGoToPage:d}),A({address:r.address,signature:r.signature?r.signature.toString("hex"):"",addressIndex:t.addressIndex})}catch(r){console.error("User rejected login:",r),!!e?.getConfirmScreenData()&&await n(o)}}}async function i(){await n(o),e.unsubscribeFromAuthEvents({handleCancel:i,handleAccessWallet:c,handleGoToPage:d}),I("User cancelled login")}e.subscribeToAuthEvents({handleCancel:i,handleAccessWallet:c,handleGoToPage:d})})}export{b as a};
|
|
2
|
+
//# sourceMappingURL=chunk-7GT77JV3.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-XG6USU6W.mjs";var n=class t extends e{constructor(){super({uiDataUpdateEvent:"DATA_UPDATE",uiTag:"mvx-wallet-connect"});this.initialData={wcURI:"",walletConnectDeepLink:""};this.data={...this.initialData}}static getInstance(){return t.instance||(t.instance=new t),t.instance}handleClose(a){a?.isLoginFinished||(this.anchor?this.anchor.dispatchEvent(new CustomEvent("ANCHOR_CLOSE",{composed:!1,bubbles:!1})):this.destroy())}async setupEventListeners(){this.eventBus&&(this.eventBus.subscribe("CLOSE",this.handleClose.bind(this)),this.eventBus.subscribe("UI_DISCONNECTED",this.destroy.bind(this)))}};export{n as a};
|
|
2
|
+
//# sourceMappingURL=chunk-7KLR4KNT.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as n}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as n}from"./chunk-JMAPPHO2.mjs";import{b as r}from"./chunk-GXQ2T4I6.mjs";import{b as i}from"./chunk-7VHTZYM2.mjs";import{s as o}from"./chunk-56LVHY6G.mjs";async function M({shard:t,apiAddress:s}){if(t!=null)try{let a=await n(t,s);if(!a?.[t]?.lastBlock)return;let e=i(o());(!e.gasStationMetadata||!e.gasStationMetadata[t]||e.gasStationMetadata[t].lastBlock!==a[t].lastBlock)&&r({...e,gasStationMetadata:{...e.gasStationMetadata,...a}})}catch(a){console.error("Error fetching gas station metadata:",a)}}export{M as a};
|
|
2
|
+
//# sourceMappingURL=chunk-7UQUNW33.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-NXT4VIRT.mjs";var t=()=>{if(!e)return"";try{let r=e.document?.referrer;return r?new URL(r).origin:""}catch(r){return console.error(r),""}};export{t as a};
|
|
2
|
+
//# sourceMappingURL=chunk-7YPNGNL4.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as r}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as r}from"./chunk-PBMBPWBN.mjs";import{a as o}from"./chunk-HSF3JATH.mjs";async function p({loginToken:i,extraInfoData:n}){if(i==null||Object.keys(n).length===0)return null;let t=o(String(i)),{timestamp:e,...a}=t?.extraInfo||{};if(!(t&&e!=null))return null;let s={hash:String(t?.blockHash),timestamp:Number(e)};return await r({extraInfo:{...a,...n},expirySeconds:t?.ttl,origin:t?.origin}).initialize({latestBlockInfo:s})}export{p as a};
|
|
2
|
+
//# sourceMappingURL=chunk-ALXWQ4AW.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-CCD7PUHB.mjs";import{a as S}from"./chunk-EAJBSX6Y.mjs";import{c as r,d as a}from"./chunk-M6MN4RXG.mjs";import{s as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-CCD7PUHB.mjs";import{a as S}from"./chunk-EAJBSX6Y.mjs";import{c as r,d as a}from"./chunk-M6MN4RXG.mjs";import{s as e}from"./chunk-56LVHY6G.mjs";import{a as n}from"./chunk-FK6DWWZF.mjs";var u=t=>{let o=0,i=n(e())?.shard;return S(t)?(t.forEach(c=>{let m=s(c,i);o+=m?5*6e3:6e3}),o):(o=s(t,i)?5*6e3:6e3,o)};export{u as a};
|
|
2
|
+
//# sourceMappingURL=chunk-AMO7KAHJ.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as i}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as i}from"./chunk-AUNVKFIH.mjs";import{c as n}from"./chunk-OM4WELDA.mjs";import{a}from"./chunk-4BOBCAS4.mjs";import{a as u}from"./chunk-JFZRSL4X.mjs";import{a as s}from"./chunk-NXT4VIRT.mjs";var g=(o,t)=>{let r=`sdk-dapp-logout-event-${o}`,e=t.getItem(r);e&&o!==e||(t.setItem(r,o),t.removeItem(r))};async function L({provider:o,options:t={shouldBroadcastLogoutAcrossTabs:!0}}){let r=a();t.shouldBroadcastLogoutAcrossTabs&&s.localStorage&&g(r,s.localStorage);try{return u(),n.forEach(c=>c()),n.clear(),i.closeConnectionRef?.(),await o.logout()}catch(e){return console.error("Logging out error:",e),!1}}export{L as a};
|
|
2
|
+
//# sourceMappingURL=chunk-ANNRMKCC.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-NXT4VIRT.mjs";var n=class{static get create(){return this.createComponent}static set create(e){this.createComponent=e}};n.createComponent=async({name:e,anchor:m})=>{if(!t?.customElements?.get(e))return null;let o=t.document.createElement(e);return(m||t.document.body).appendChild(o),await customElements.whenDefined(e),o};export{n as a};
|
|
2
|
+
//# sourceMappingURL=chunk-AT3CRFXK.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-JKJQPTXA.mjs";var t={closeConnectionRef:void 0};async function c(n){let{closeConnection:o}=await e(n);t.closeConnectionRef=o}export{t as a,c as b};
|
|
2
|
+
//# sourceMappingURL=chunk-AUNVKFIH.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-CWU7HLWJ.mjs";import{k as r}from"./chunk-PKDR5ERF.mjs";import{a as o}from"./chunk-2JKCBTYK.mjs";import m from"axios";async function c({addressToVerify:s,baseURL:a}){let e=t(a),{data:i}=await m.get(`${e}/${o}/${s}`,{timeout:r});return i}export{c as a};
|
|
2
|
+
//# sourceMappingURL=chunk-AWBM2UZB.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-NJNDC4GE.mjs";async function i(a){let n=e.getInstance();return await n.openUI(),{manager:n,onClose:async({shouldCancelAction:t=!0}={})=>{n.closeUI(),t&&a?.cancelAction&&await a.cancelAction()}}}export{i as a};
|
|
2
|
+
//# sourceMappingURL=chunk-CN7Q4PAK.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as r}from"./chunk-7VHTZYM2.mjs";import{s as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as r}from"./chunk-7VHTZYM2.mjs";import{s as e}from"./chunk-56LVHY6G.mjs";var d=s=>{let o=r(e()),t=s??o.apiAddress;return t.endsWith("/")?t.slice(0,-1):t};export{d as a};
|
|
2
|
+
//# sourceMappingURL=chunk-CWU7HLWJ.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{l as n}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{l as n}from"./chunk-6NXXKXQD.mjs";import{a as i}from"./chunk-LJX4MW7B.mjs";var e=async()=>{let o=n();if(o.getType()===i.crossWindow){let r=o;await r.cancelAction(),await r.dispose()}};export{e as a};
|
|
2
|
+
//# sourceMappingURL=chunk-D57AI24E.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-XTMUHTQL.mjs";var T=async a=>{let n=a.map(s=>s.hash),r=await e(n);return a.map(s=>{let t=r.find(o=>o?.txHash===s.hash);return{...s,status:t?.status,invalidTransaction:t==null,results:t?.results??[],previousStatus:s.status?.toString()||"",hasStatusChanged:!!(t&&t.status!==s.status)}})};export{T as a};
|
|
2
|
+
//# sourceMappingURL=chunk-DBCUOZVQ.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as u}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as u}from"./chunk-5MYF4FXA.mjs";import{a as c}from"./chunk-O5PAMBB3.mjs";var l=async({receiver:n,sender:s,tokenId:i})=>{let t=null,r=null;if(!i)return{senderLockedAccount:t,receiverLockedAccount:r};try{let o=(await u({tokenId:i}))?.assets?.lockedAccounts;if(!o)return{senderLockedAccount:t,receiverLockedAccount:r};for(let e in o)if(c(e)&&(s===e&&(t=e),n===e&&(r=e)),c(o[e])&&(s===o[e]&&(t=o[e]),n===o[e]&&(r=o[e])),t&&r)return{senderLockedAccount:t,receiverLockedAccount:r}}catch(a){console.error("Error getting token details",a)}return{senderLockedAccount:t,receiverLockedAccount:r}};export{l as a};
|
|
2
|
+
//# sourceMappingURL=chunk-DFFL2BRF.mjs.map
|