@multiversx/sdk-dapp 5.1.5 → 5.1.7
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/out/__chunks__/chunk-2FDNVFTD.mjs +2 -0
- package/out/__chunks__/{chunk-VRXZUSWL.mjs → chunk-2FHEBVWZ.mjs} +2 -2
- package/out/__chunks__/{chunk-5TAQLAW3.mjs → chunk-2FJUAWNG.mjs} +2 -2
- package/out/__chunks__/{chunk-AQ6D3F5K.mjs → chunk-2Y66XRQK.mjs} +2 -2
- package/out/__chunks__/{chunk-FLN5MNNT.mjs → chunk-3AN3HJA5.mjs} +2 -2
- package/out/__chunks__/chunk-3Z2ACTV6.mjs +2 -0
- package/out/__chunks__/{chunk-PH34FNHZ.mjs → chunk-47FDQOU2.mjs} +2 -2
- package/out/__chunks__/chunk-4JCMNQXS.mjs +2 -0
- package/out/__chunks__/{chunk-HVUUOFDY.mjs → chunk-4MXAQBQ4.mjs} +2 -2
- package/out/__chunks__/{chunk-OHUOJ5P3.mjs → chunk-5A2ZB2NK.mjs} +2 -2
- package/out/__chunks__/chunk-5FVAEFKL.mjs +2 -0
- package/out/__chunks__/{chunk-MZBHPAM4.mjs → chunk-5TKJRIH7.mjs} +2 -2
- package/out/__chunks__/{chunk-6LATG7X5.mjs → chunk-6DI7XSHB.mjs} +2 -2
- package/out/__chunks__/{chunk-IILEKPBI.mjs → chunk-6DW4VXLU.mjs} +2 -2
- package/out/__chunks__/{chunk-CDQ2BNUD.mjs → chunk-6JSWL75O.mjs} +2 -2
- package/out/__chunks__/{chunk-OA5HXCGR.mjs → chunk-726BASBO.mjs} +2 -2
- package/out/__chunks__/chunk-726BASBO.mjs.map +7 -0
- package/out/__chunks__/{chunk-ZFJOYMJ7.mjs → chunk-72BFMMSI.mjs} +2 -2
- package/out/__chunks__/chunk-77NCTJIH.mjs +2 -0
- package/out/__chunks__/{chunk-MUYR3PCB.mjs → chunk-7HP3FIAW.mjs} +2 -2
- package/out/__chunks__/{chunk-WNEPIIEY.mjs → chunk-7XW3S67Y.mjs} +2 -2
- package/out/__chunks__/chunk-AF3RP6VA.mjs +2 -0
- package/out/__chunks__/{chunk-HAA2EO5S.mjs → chunk-AH5RW56M.mjs} +2 -2
- package/out/__chunks__/{chunk-5LRQIZ4G.mjs → chunk-BECHXPBC.mjs} +2 -2
- package/out/__chunks__/{chunk-XM4IYM4M.mjs → chunk-BPKM2DQN.mjs} +2 -2
- package/out/__chunks__/{chunk-7MZD7YCO.mjs → chunk-CRC6EHJB.mjs} +2 -2
- package/out/__chunks__/{chunk-LS3YSRRM.mjs → chunk-DCOMKCXN.mjs} +2 -2
- package/out/__chunks__/{chunk-YTR6YMAJ.mjs → chunk-DWYHYJNY.mjs} +2 -2
- package/out/__chunks__/{chunk-JVKQPCTQ.mjs → chunk-G26BK7D7.mjs} +2 -2
- package/out/__chunks__/{chunk-4JRSZ2WY.mjs → chunk-HGZQIUMH.mjs} +2 -2
- package/out/__chunks__/{chunk-ECTE4GIA.mjs → chunk-HQ3MXZM2.mjs} +2 -2
- package/out/__chunks__/chunk-HSIBZ2L5.mjs +2 -0
- package/out/__chunks__/{chunk-MI73KXKA.mjs → chunk-ILMJWCA5.mjs} +2 -2
- package/out/__chunks__/{chunk-OYO5HAC3.mjs → chunk-J6R5G7CE.mjs} +2 -2
- package/out/__chunks__/{chunk-YAMIPNLB.mjs → chunk-J7WJREOM.mjs} +2 -2
- package/out/__chunks__/{chunk-UGJVHUID.mjs → chunk-JYIAIJ37.mjs} +2 -2
- package/out/__chunks__/{chunk-B3UFF7ML.mjs → chunk-K4MA6VJX.mjs} +2 -2
- package/out/__chunks__/chunk-KDOO7OCC.mjs +2 -0
- package/out/__chunks__/chunk-KDOO7OCC.mjs.map +7 -0
- package/out/__chunks__/{chunk-FCH3TZNB.mjs → chunk-KKP56V4G.mjs} +2 -2
- package/out/__chunks__/chunk-KN26DF7H.mjs +2 -0
- package/out/__chunks__/{chunk-YUBLXI76.mjs → chunk-KOA4KAE3.mjs} +2 -2
- package/out/__chunks__/{chunk-PLUWBWJ2.mjs → chunk-LJX4MW7B.mjs} +1 -1
- package/out/__chunks__/{chunk-PLUWBWJ2.mjs.map → chunk-LJX4MW7B.mjs.map} +1 -1
- package/out/__chunks__/{chunk-GOK56W56.mjs → chunk-LLJ3VLPO.mjs} +2 -2
- package/out/__chunks__/chunk-LNCOC6DZ.mjs +2 -0
- package/out/__chunks__/{chunk-Q5BUVODR.mjs → chunk-LPXPAY7D.mjs} +2 -2
- package/out/__chunks__/chunk-LSBQBQSE.mjs +2 -0
- package/out/__chunks__/chunk-NC2PYW67.mjs +2 -0
- package/out/__chunks__/chunk-NJVYQG4N.mjs +2 -0
- package/out/__chunks__/{chunk-SLWY5XP5.mjs → chunk-NMNJWV6J.mjs} +2 -2
- package/out/__chunks__/{chunk-UVHONPA5.mjs → chunk-NPRED3F5.mjs} +2 -2
- package/out/__chunks__/{chunk-5GAD4GPI.mjs → chunk-NQ2ACSWO.mjs} +2 -2
- package/out/__chunks__/{chunk-LMNAVRBQ.mjs → chunk-NZ5CEUB5.mjs} +2 -2
- package/out/__chunks__/{chunk-E2XW7YVE.mjs → chunk-O3AN3EMP.mjs} +2 -2
- package/out/__chunks__/{chunk-4ADFEGIK.mjs → chunk-O5L6HOQJ.mjs} +2 -2
- package/out/__chunks__/{chunk-37ZYC4SQ.mjs → chunk-O6LQEIE2.mjs} +2 -2
- package/out/__chunks__/{chunk-USDJ7CAG.mjs → chunk-OAKDIMYH.mjs} +2 -2
- package/out/__chunks__/{chunk-EGM63G4K.mjs → chunk-OWV2V6SX.mjs} +2 -2
- package/out/__chunks__/{chunk-DUNGWQ5A.mjs → chunk-P6PUVTFU.mjs} +2 -2
- package/out/__chunks__/{chunk-O5TU5QQI.mjs → chunk-PMOKDTDV.mjs} +2 -2
- package/out/__chunks__/chunk-Q5HWS7FX.mjs +2 -0
- package/out/__chunks__/{chunk-ILGTFJZA.mjs → chunk-QC6KCYKL.mjs} +2 -2
- package/out/__chunks__/{chunk-ASVVZSNW.mjs → chunk-QF3ACWOH.mjs} +2 -2
- package/out/__chunks__/{chunk-3NBR5S3K.mjs → chunk-QIF2DQBN.mjs} +2 -2
- package/out/__chunks__/{chunk-3PAQ2Z7N.mjs → chunk-QZOCKDRL.mjs} +2 -2
- package/out/__chunks__/chunk-R4PAEXYU.mjs +2 -0
- package/out/__chunks__/{chunk-XVCSSYCP.mjs.map → chunk-R4PAEXYU.mjs.map} +2 -2
- package/out/__chunks__/{chunk-6ILB52XY.mjs → chunk-RNWJHZLH.mjs} +2 -2
- package/out/__chunks__/{chunk-4PIC7DFH.mjs → chunk-S2RWU5BV.mjs} +2 -2
- package/out/__chunks__/{chunk-7OBI7GUK.mjs → chunk-S5ZROGZQ.mjs} +2 -2
- package/out/__chunks__/{chunk-AYPDQETP.mjs → chunk-SFAWPLJB.mjs} +2 -2
- package/out/__chunks__/{chunk-TE5XVHX2.mjs → chunk-SUCBDFIP.mjs} +2 -2
- package/out/__chunks__/{chunk-Z745SBSQ.mjs → chunk-TF67ZK65.mjs} +2 -2
- package/out/__chunks__/chunk-TKZHFVMQ.mjs +2 -0
- package/out/__chunks__/chunk-TPJ7KEUB.mjs +2 -0
- package/out/__chunks__/{chunk-KJLFUHEH.mjs.map → chunk-TPJ7KEUB.mjs.map} +1 -1
- package/out/__chunks__/chunk-U66UATGK.mjs +2 -0
- package/out/__chunks__/{chunk-76URRONH.mjs → chunk-UCRVRBTA.mjs} +2 -2
- package/out/__chunks__/{chunk-VEEHHORJ.mjs → chunk-VT5BFUDT.mjs} +2 -2
- package/out/__chunks__/{chunk-Q3XYMQWN.mjs → chunk-WKWVAY3B.mjs} +2 -2
- package/out/__chunks__/{chunk-A5BJAB7T.mjs → chunk-WL56YMKX.mjs} +2 -2
- package/out/__chunks__/{chunk-LPPO6LUR.mjs → chunk-WXS4MAB3.mjs} +2 -2
- package/out/__chunks__/{chunk-XFUNY6KC.mjs → chunk-X25IIGUZ.mjs} +2 -2
- package/out/__chunks__/{chunk-ZM5EFY6B.mjs → chunk-XEENI7BQ.mjs} +2 -2
- package/out/__chunks__/chunk-XKBKAEYF.mjs +2 -0
- package/out/__chunks__/{chunk-RFCXQES5.mjs → chunk-ZG4ZEFUR.mjs} +2 -2
- package/out/__chunks__/{chunk-D4BQCSIY.mjs → chunk-ZSJNTJKG.mjs} +2 -2
- 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/index.mjs +1 -1
- package/out/apiCalls/tokens/getPersistedTokenDetails.mjs +1 -1
- package/out/apiCalls/tokens/getTokenDetails.mjs +1 -1
- package/out/apiCalls/tokens/index.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/index.mjs +1 -1
- package/out/constants/providerFactory.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.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/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/TransactionManager/TransactionManager.mjs +1 -1
- package/out/managers/TransactionManager/helpers/getAreTransactionsCorssShards.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.mjs +1 -1
- package/out/managers/UnlockPanelManager/index.mjs +1 -1
- package/out/managers/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/ToastManager/ToastManager.mjs +1 -1
- package/out/managers/internal/ToastManager/helpers/LifetimeManager.mjs +1 -1
- package/out/managers/internal/ToastManager/helpers/createToastsFromTransactions.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/managers/internal/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/gastStationMetadata/setGasStationMetadata.mjs +1 -1
- package/out/methods/initApp/initApp.cjs +2 -1
- package/out/methods/initApp/initApp.cjs.map +2 -2
- package/out/methods/initApp/initApp.mjs +1 -1
- package/out/methods/initApp/initApp.mjs.map +3 -3
- 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/checkBatch.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/checkTransactionStatus.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/index.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/manageFailedTransactions.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.d.ts +0 -2
- 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/login.cjs +1 -1
- package/out/providers/DappProvider/helpers/login/login.cjs.map +2 -2
- package/out/providers/DappProvider/helpers/login/login.d.ts +0 -2
- 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.mjs +1 -1
- package/out/providers/DappProvider/index.mjs +1 -1
- package/out/providers/ProviderFactory.cjs +1 -5
- package/out/providers/ProviderFactory.cjs.map +2 -2
- 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/clearInitiatedLogins.mjs +1 -1
- package/out/providers/helpers/emptyProvider.mjs +1 -1
- package/out/providers/helpers/restoreProvider.cjs +11 -3
- package/out/providers/helpers/restoreProvider.cjs.map +2 -2
- package/out/providers/helpers/restoreProvider.mjs +1 -1
- package/out/providers/index.mjs +1 -1
- package/out/providers/strategies/BaseProviderStrategy/BaseProviderStrategy.mjs +1 -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.mjs +1 -1
- package/out/providers/strategies/ExtensionProviderStrategy/index.mjs +1 -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.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/authenticateLedgerAccount.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/getAuthTokenText.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/getLedgerConfiguration.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/getLedgerProvider.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/getLedgerVersionOptions.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/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/helpers/updateAccountsList/index.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/updateAccountsList/updateAccountsList.mjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/index.mjs +1 -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.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/calculateFeeLimit.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/getFeeData.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/guardTransactions/guardTransactions.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/signTransactions.mjs +1 -1
- package/out/providers/strategies/index.mjs +1 -1
- package/out/providers/types/providerFactory.types.cjs.map +1 -1
- package/out/providers/types/providerFactory.types.d.ts +2 -1
- package/out/providers/types/providerFactory.types.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/index.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/methods/index.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.mjs +1 -1
- package/out/store/actions/config/index.mjs +1 -1
- package/out/store/actions/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/slices/toast/toastSlice.types.cjs.map +1 -1
- package/out/store/slices/toast/toastSlice.types.d.ts +1 -0
- 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/index.mjs +1 -1
- package/out/utils/account/refreshAccount.mjs +1 -1
- package/out/utils/account/refreshNativeAuthTokenLogin.mjs +1 -1
- package/out/utils/index.mjs +1 -1
- package/out/utils/transactions/getActiveTransactionsStatus.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/getInterpretedTransaction.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/getLockedAccountName.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/getReceiptMessage.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/getShardText.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/getTransactionIconInfo.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/getTransactionMessages.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/index.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/index.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/index.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/transactions/index.mjs +1 -1
- package/out/utils/visual/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/out/utils/window/index.mjs +1 -1
- package/package.json +5 -5
- package/out/__chunks__/chunk-2WWGLFNR.mjs +0 -2
- package/out/__chunks__/chunk-BMC2YI75.mjs +0 -2
- package/out/__chunks__/chunk-C4A4E2FY.mjs +0 -2
- package/out/__chunks__/chunk-FXR3CXVB.mjs +0 -2
- package/out/__chunks__/chunk-FYEAQFW5.mjs +0 -2
- package/out/__chunks__/chunk-JIOAD7MK.mjs +0 -2
- package/out/__chunks__/chunk-KI2NE6MI.mjs +0 -2
- package/out/__chunks__/chunk-KJLFUHEH.mjs +0 -2
- package/out/__chunks__/chunk-KN6ADSRW.mjs +0 -2
- package/out/__chunks__/chunk-KQ4LLKWZ.mjs +0 -2
- package/out/__chunks__/chunk-OA5HXCGR.mjs.map +0 -7
- package/out/__chunks__/chunk-OKR2YV5J.mjs +0 -2
- package/out/__chunks__/chunk-R55WPJMP.mjs +0 -2
- package/out/__chunks__/chunk-U4MC4F2U.mjs +0 -2
- package/out/__chunks__/chunk-U6BZ2PHS.mjs +0 -2
- package/out/__chunks__/chunk-VOGVARHA.mjs +0 -2
- package/out/__chunks__/chunk-VXNZHN7T.mjs +0 -2
- package/out/__chunks__/chunk-VXNZHN7T.mjs.map +0 -7
- package/out/__chunks__/chunk-XVCSSYCP.mjs +0 -2
- package/out/__chunks__/chunk-Z35H36KH.mjs +0 -2
- package/out/__chunks__/chunk-ZDMHP47O.mjs +0 -2
- /package/out/__chunks__/{chunk-JIOAD7MK.mjs.map → chunk-2FDNVFTD.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-VRXZUSWL.mjs.map → chunk-2FHEBVWZ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5TAQLAW3.mjs.map → chunk-2FJUAWNG.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-AQ6D3F5K.mjs.map → chunk-2Y66XRQK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FLN5MNNT.mjs.map → chunk-3AN3HJA5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OKR2YV5J.mjs.map → chunk-3Z2ACTV6.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-PH34FNHZ.mjs.map → chunk-47FDQOU2.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-2WWGLFNR.mjs.map → chunk-4JCMNQXS.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HVUUOFDY.mjs.map → chunk-4MXAQBQ4.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OHUOJ5P3.mjs.map → chunk-5A2ZB2NK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-Z35H36KH.mjs.map → chunk-5FVAEFKL.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-MZBHPAM4.mjs.map → chunk-5TKJRIH7.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-6LATG7X5.mjs.map → chunk-6DI7XSHB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-IILEKPBI.mjs.map → chunk-6DW4VXLU.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-CDQ2BNUD.mjs.map → chunk-6JSWL75O.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZFJOYMJ7.mjs.map → chunk-72BFMMSI.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-C4A4E2FY.mjs.map → chunk-77NCTJIH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-MUYR3PCB.mjs.map → chunk-7HP3FIAW.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-WNEPIIEY.mjs.map → chunk-7XW3S67Y.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-R55WPJMP.mjs.map → chunk-AF3RP6VA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HAA2EO5S.mjs.map → chunk-AH5RW56M.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5LRQIZ4G.mjs.map → chunk-BECHXPBC.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-XM4IYM4M.mjs.map → chunk-BPKM2DQN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-7MZD7YCO.mjs.map → chunk-CRC6EHJB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-LS3YSRRM.mjs.map → chunk-DCOMKCXN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-YTR6YMAJ.mjs.map → chunk-DWYHYJNY.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-JVKQPCTQ.mjs.map → chunk-G26BK7D7.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-4JRSZ2WY.mjs.map → chunk-HGZQIUMH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ECTE4GIA.mjs.map → chunk-HQ3MXZM2.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-BMC2YI75.mjs.map → chunk-HSIBZ2L5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-MI73KXKA.mjs.map → chunk-ILMJWCA5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OYO5HAC3.mjs.map → chunk-J6R5G7CE.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-YAMIPNLB.mjs.map → chunk-J7WJREOM.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-UGJVHUID.mjs.map → chunk-JYIAIJ37.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-B3UFF7ML.mjs.map → chunk-K4MA6VJX.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FCH3TZNB.mjs.map → chunk-KKP56V4G.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-VOGVARHA.mjs.map → chunk-KN26DF7H.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-YUBLXI76.mjs.map → chunk-KOA4KAE3.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-GOK56W56.mjs.map → chunk-LLJ3VLPO.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-KI2NE6MI.mjs.map → chunk-LNCOC6DZ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-Q5BUVODR.mjs.map → chunk-LPXPAY7D.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FYEAQFW5.mjs.map → chunk-LSBQBQSE.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-U4MC4F2U.mjs.map → chunk-NC2PYW67.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-KQ4LLKWZ.mjs.map → chunk-NJVYQG4N.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-SLWY5XP5.mjs.map → chunk-NMNJWV6J.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-UVHONPA5.mjs.map → chunk-NPRED3F5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5GAD4GPI.mjs.map → chunk-NQ2ACSWO.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-LMNAVRBQ.mjs.map → chunk-NZ5CEUB5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-E2XW7YVE.mjs.map → chunk-O3AN3EMP.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-4ADFEGIK.mjs.map → chunk-O5L6HOQJ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-37ZYC4SQ.mjs.map → chunk-O6LQEIE2.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-USDJ7CAG.mjs.map → chunk-OAKDIMYH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-EGM63G4K.mjs.map → chunk-OWV2V6SX.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-DUNGWQ5A.mjs.map → chunk-P6PUVTFU.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-O5TU5QQI.mjs.map → chunk-PMOKDTDV.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-U6BZ2PHS.mjs.map → chunk-Q5HWS7FX.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ILGTFJZA.mjs.map → chunk-QC6KCYKL.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ASVVZSNW.mjs.map → chunk-QF3ACWOH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-3NBR5S3K.mjs.map → chunk-QIF2DQBN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-3PAQ2Z7N.mjs.map → chunk-QZOCKDRL.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-6ILB52XY.mjs.map → chunk-RNWJHZLH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-4PIC7DFH.mjs.map → chunk-S2RWU5BV.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-7OBI7GUK.mjs.map → chunk-S5ZROGZQ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-AYPDQETP.mjs.map → chunk-SFAWPLJB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-TE5XVHX2.mjs.map → chunk-SUCBDFIP.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-Z745SBSQ.mjs.map → chunk-TF67ZK65.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FXR3CXVB.mjs.map → chunk-TKZHFVMQ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZDMHP47O.mjs.map → chunk-U66UATGK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-76URRONH.mjs.map → chunk-UCRVRBTA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-VEEHHORJ.mjs.map → chunk-VT5BFUDT.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-Q3XYMQWN.mjs.map → chunk-WKWVAY3B.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-A5BJAB7T.mjs.map → chunk-WL56YMKX.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-LPPO6LUR.mjs.map → chunk-WXS4MAB3.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-XFUNY6KC.mjs.map → chunk-X25IIGUZ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZM5EFY6B.mjs.map → chunk-XEENI7BQ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-KN6ADSRW.mjs.map → chunk-XKBKAEYF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-RFCXQES5.mjs.map → chunk-ZG4ZEFUR.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-D4BQCSIY.mjs.map → chunk-ZSJNTJKG.mjs.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as o,c as i}from"./chunk-QJGFIK7H.mjs";import{w as g}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as o,c as i}from"./chunk-QJGFIK7H.mjs";import{w as g}from"./chunk-R4PAEXYU.mjs";import{q as u}from"./chunk-DWYHYJNY.mjs";import{a as p}from"./chunk-UERJ6AKK.mjs";import{a as h,c as l,g as c}from"./chunk-NTEMINYA.mjs";import{a as y}from"./chunk-TPJ7KEUB.mjs";var M=class{constructor({onLoginCancelled:e}){this.handlers=new Map;this.store=u();this.isLoginInitiated=!1;this.handleMessage=this.handleMessage.bind(this),this.handleLoginCancelled=e}startListening(){y.addEventListener("message",this.handleMessage)}stopListening(){y.removeEventListener("message",this.handleMessage)}registerEvent(e,s){this.handlers.set(e,s)}unregisterEvent(e){this.handlers.delete(e)}async handleMessage(e){let s=e.data?.type;if(typeof s=="string"&&this.handlers.has(s))return this.handlers.get(s)?.(e);switch(s){case o.finalizeHandshakeRequest:this.handshake({event:e});break;case o.signMessageRequest:this.signMessage({event:e,payload:e.data.payload});break;case o.loginRequest:this.isLoginInitiated=!0,this.login({event:e,payload:e.data.payload});break;case o.signTransactionsRequest:this.signTransactions({event:e});break;case i.cancelResponse:case"cancelAction":this.isLoginInitiated&&await this.handleLoginCancelled();break;default:break}}async login({event:e,payload:s}){let a=s?.token;if(a)try{let{address:t}=p(this.store.getState()),r=g(),n=new c({address:new l(t),data:new Uint8Array(Buffer.from(a))}),d=(await r.signMessage(n))?.signature??"";e.source?.postMessage({type:i.loginResponse,payload:{data:{address:t,signature:Buffer.from(d).toString("hex")}}},{targetOrigin:e.origin})}catch{this.isLoginInitiated&&this.handleLoginCancelled()}finally{this.isLoginInitiated=!1}}handshake({event:e}){let s=Date.now().toString();e.source?.postMessage({type:i.finalizeHandshakeResponse,payload:{data:s}},{targetOrigin:e.origin})}async signMessage({event:e,payload:s}){let{address:a}=p(this.store.getState()),{message:t}=s;try{let r=new c({address:new l(a),data:new Uint8Array(Buffer.from(t))}),d=(await g().signMessage(r))?.signature??"";e.source?.postMessage({type:i.signMessageResponse,payload:{data:{signature:Buffer.from(d).toString("hex"),status:"signed"}}},{targetOrigin:e.origin})}catch{throw new Error("Could not sign message")}}async signTransactions({event:e}){let s=g(),{payload:a}=e.data;if(Array.isArray(a))try{let t=a.map(n=>h.newFromPlainObject(n)),r=await s.signTransactions(t);e.source?.postMessage({type:i.signTransactionsResponse,payload:{data:r.map(n=>n.toPlainObject())}},{targetOrigin:e.origin})}catch{throw new Error("Could not sign transactions")}}};export{M as a};
|
|
2
|
+
//# sourceMappingURL=chunk-2FHEBVWZ.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as g}from"./chunk-3S57OP4Z.mjs";import{a as l}from"./chunk-QTKK6OSJ.mjs";import{a as h}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as g}from"./chunk-3S57OP4Z.mjs";import{a as l}from"./chunk-QTKK6OSJ.mjs";import{a as h}from"./chunk-PMOKDTDV.mjs";import{NativeAuthClient as y}from"@multiversx/sdk-native-auth-client";var H=f=>{let{origin:o,apiAddress:i,expirySeconds:r,blockHashShard:s,extraInfo:u,gatewayUrl:d,extraRequestHeaders:k}=h(f),e=new y({origin:o,apiUrl:i,expirySeconds:r,blockHashShard:s,gatewayUrl:d,extraRequestHeaders:k});return{initialize:async t=>{if(!i||!o)return"";let a=()=>e.getCurrentBlockHash(),n=t?.latestBlockInfo;n??=await g({apiAddress:i,blockHashShard:s,getBlockHash:a,noCache:t?.noCache});let{hash:p,timestamp:c}=n,m=e.encodeValue(JSON.stringify({...t?.extraInfo??u,...c?{timestamp:c}:{}}));return`${e.encodeValue(o)}.${p}.${r}.${m}`},getToken:({address:t,token:a,signature:n})=>e.getToken(t,a,n),getTokenExpiration:l}};export{H as a};
|
|
2
|
+
//# sourceMappingURL=chunk-2FJUAWNG.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as i}from"./chunk-QJGFIK7H.mjs";import{a as r}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as i}from"./chunk-QJGFIK7H.mjs";import{a as r}from"./chunk-LJX4MW7B.mjs";var a=n=>(Object.values(r).forEach(o=>{if(o!==n?.skipLoginMethod)switch(o){case r.crossWindow:{let e=i.getInstance();e.isInitialized()&&e.onDestroy();break}default:break}}),null);export{a};
|
|
2
|
+
//# sourceMappingURL=chunk-2Y66XRQK.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-TPJ7KEUB.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-3AN3HJA5.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as S}from"./chunk-EAJBSX6Y.mjs";import{a as s}from"./chunk-NTOY6GTP.mjs";import{c as r,d as a}from"./chunk-2IUBMLF4.mjs";import{s as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as S}from"./chunk-EAJBSX6Y.mjs";import{a as s}from"./chunk-NTOY6GTP.mjs";import{c as r,d as a}from"./chunk-2IUBMLF4.mjs";import{s as e}from"./chunk-DWYHYJNY.mjs";import{a as n}from"./chunk-UERJ6AKK.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-47FDQOU2.mjs.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as t}from"./chunk-DCOMKCXN.mjs";import{c as n}from"./chunk-DWYHYJNY.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-4JCMNQXS.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as T}from"./chunk-Q2Q4XN4M.mjs";import{b as u}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as T}from"./chunk-Q2Q4XN4M.mjs";import{b as u}from"./chunk-LLJ3VLPO.mjs";import{d as m,e as l}from"./chunk-KKP56V4G.mjs";import{q as a}from"./chunk-DWYHYJNY.mjs";import{b as r}from"./chunk-SAAOQW7P.mjs";import{b as t}from"./chunk-GGBMHKR4.mjs";import{io as y}from"socket.io-client";var A=3e3,g=3,w=500,E=1e3,f="batchUpdated",p="connect",N="connect_error",b="disconnect";async function M(i){let{apiAddress:k,websocketUrl:I}=r(a().getState());if(!i)throw new Error("Websocket could not be initialized: address missing");let o=null,n=null,c=e=>{t.status=e,u(e)},d=e=>{o&&clearTimeout(o),o=setTimeout(()=>{m(e)},E)},C=e=>{n&&clearTimeout(n),n=setTimeout(()=>{l(e)},E)},W=()=>{let e=t.instance;e&&(e.off(N),e.off(p),e.off(f),e.off(b),e.close(),console.log("Websocket disconnected.")),c("not_initialized"),t.instance=null,o&&clearTimeout(o),n&&clearTimeout(n)},S=async()=>{c("pending");let e=I??await T(k);if(!e){c("not_initialized");return}t.instance=y(e,{forceNew:!0,reconnection:!0,reconnectionAttempts:g,reconnectionDelay:w,timeout:A,query:{address:i}}),t.instance.onAny(d),t.instance.on(f,C),t.instance.on(p,()=>{console.log("Websocket connected."),c("completed")}),t.instance.on(N,s=>{console.warn("Websocket connect error: ",s.message)}),t.instance.on(b,s=>{console.warn("Websocket disconnected: ",s),c("pending")})};return t.status==="not_initialized"&&!t.instance?.active&&await S(),{closeConnection:W}}export{M as a};
|
|
2
|
+
//# sourceMappingURL=chunk-4MXAQBQ4.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-3AN3HJA5.mjs";import{a as r}from"./chunk-B2UIPHJ3.mjs";var o=()=>{try{return!r()||!e()?!1:window.self!==window.top}catch{return!0}};export{o as a};
|
|
2
|
+
//# sourceMappingURL=chunk-5A2ZB2NK.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as A}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as A}from"./chunk-47FDQOU2.mjs";import{a as I}from"./chunk-EAJBSX6Y.mjs";import{a as b}from"./chunk-Y3BNMQFP.mjs";import{h as f}from"./chunk-R4PAEXYU.mjs";import{b as S}from"./chunk-3ZEUVYQF.mjs";import{a as y}from"./chunk-LPXPAY7D.mjs";import{a as g}from"./chunk-L3MWDI6J.mjs";import{a as h}from"./chunk-Q5HWS7FX.mjs";import{h as u}from"./chunk-2IUBMLF4.mjs";import{s as m}from"./chunk-DWYHYJNY.mjs";import{b as T}from"./chunk-SAAOQW7P.mjs";import w from"axios";var r=class r{constructor(){this.setCallbacks=({onSuccess:a,onFail:t})=>{S({onSuccess:a,onFail:t})};this.send=async a=>{if(a.length===0)throw new Error("No transactions to send");try{if(!I(a))return await this.sendSignedTransactions(a);let t=await this.sendSignedBatchTransactions(a);if(!t.data||t.data.error)throw new Error(t.data?.error??"Failed to send transactions");return t.data.transactions}catch(t){throw t.response?.data?.message??t.message}};this.track=async(a,t={disableToasts:!1})=>{let n=this.sequentialToFlatArray(a).map(e=>({...e,status:e.status??"pending"})),o=g(n),s=y({transactions:n,transactionsDisplayInfo:t.transactionsDisplayInfo,status:o??"sent",sessionInformation:t.sessionInformation});if(t.disableToasts===!0)return s;let i=A(a);return f({toastId:s,totalDuration:i}),s};this.sendSignedTransactions=async a=>{let{apiAddress:t,apiTimeout:n}=T(m());return await Promise.all(a.map(async s=>{let i=await w.post(`${t}/transactions`,s.toPlainObject(),{timeout:Number(n)}),e=i.data.txHash;return{...s.toPlainObject(),...i.data,status:"pending",hash:e}}))};this.sendSignedBatchTransactions=async a=>{let{address:t}=h(),{apiAddress:n,apiTimeout:o}=T(m());if(!t)return{error:"Invalid address provided. You need to be logged in to send transactions"};let s=this.buildBatchId(t),e={transactions:a.map(p=>p.map(c=>c.toPlainObject())),id:s},{data:l}=await w.post(`${n}/batch`,e,{timeout:Number(o)}),B=l.transactions.map(p=>p.map(c=>{let d={...c,status:"pending",hash:c.hash};return b({data:d.data})&&(delete d.senderUsername,delete d.receiverUsername),d}));return{data:{...l,transactions:B}}};this.buildBatchId=a=>`${Date.now().toString()}${u}${a}`;this.sequentialToFlatArray=(a=[])=>this.getIsSequential(a)?a.flat():a;this.getIsSequential=a=>a?.every(t=>Array.isArray(t))}static getInstance(){return r.instance||(r.instance=new r),r.instance}};r.instance=null;var v=r;export{v as a};
|
|
2
|
+
//# sourceMappingURL=chunk-5TKJRIH7.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as f}from"./chunk-FRDR4A7Z.mjs";import{w as g}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as f}from"./chunk-FRDR4A7Z.mjs";import{w as g}from"./chunk-R4PAEXYU.mjs";import{a as c}from"./chunk-77NCTJIH.mjs";import{s as n}from"./chunk-DWYHYJNY.mjs";import{g as a}from"./chunk-UERJ6AKK.mjs";import{e as l}from"./chunk-VNLGNNIL.mjs";import{HWProvider as m}from"@multiversx/sdk-hw-provider";async function A(u){let v=c(),d=u?.shouldInitProvider||!v,o=l(n()),t=a(n()),r=g(),i=new m,I=async()=>{let e=o?.index!=null;if(r instanceof m&&r.isInitialized())return e&&await r.setAddressIndex(o.index),r;if(d&&!await i.init())throw new Error("Failed to initialize Ledger Provider");return e&&await i.setAddressIndex(o.index),i};try{if(!d&&t)return{ledgerProvider:i,ledgerConfig:{version:t.version,dataEnabled:t.hasContractDataEnabled}};let e=await I(),s=await f(e);return{ledgerProvider:e,ledgerConfig:s}}catch(e){throw console.error("Could not initialize ledger app",e),e}}export{A as a};
|
|
2
|
+
//# sourceMappingURL=chunk-6DI7XSHB.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as o}from"./chunk-FMQYLMTU.mjs";import{b as e,c as i}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as o}from"./chunk-FMQYLMTU.mjs";import{b as e,c as i}from"./chunk-LPXPAY7D.mjs";import{j as r}from"./chunk-65L5EBBL.mjs";import{q as n}from"./chunk-DWYHYJNY.mjs";async function E({results:u,hash:c,sessionId:s}){let a=u?.find(t=>t?.returnMessage!=="");i({sessionId:s,transaction:{...a,hash:c,status:"fail",inTransit:!1}});let{transactions:m}=n().getState();m[s].transactions.some(t=>r(t.status))||(e({sessionId:s,status:"fail",errorMessage:a?.returnMessage}),await o({sessionId:s,status:"fail"}))}export{E as a};
|
|
2
|
+
//# sourceMappingURL=chunk-6DW4VXLU.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-LJX4MW7B.mjs";var s={[e.crossWindow]:"MultiversX Web Wallet",[e.extension]:"MultiversX Wallet Extension",[e.walletConnect]:"xPortal App",[e.ledger]:"Ledger",[e.metamask]:"MetaMask Snap",[e.passkey]:"Passkey",[e.webview]:"Webview",[e.none]:""};export{s as a};
|
|
2
|
+
//# sourceMappingURL=chunk-6JSWL75O.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as de}from"./chunk-M3YL36ZL.mjs";import{a as se}from"./chunk-AQ6D3F5K.mjs";import{a as te}from"./chunk-Z745SBSQ.mjs";import{a as U}from"./chunk-USDJ7CAG.mjs";import{a as ie}from"./chunk-5LRQIZ4G.mjs";import{a as re}from"./chunk-6LATG7X5.mjs";import{a as ee}from"./chunk-YUFPUG5O.mjs";import{a as ae}from"./chunk-VEEHHORJ.mjs";import{a as p}from"./chunk-HAA2EO5S.mjs";import{a as Z}from"./chunk-D4BQCSIY.mjs";import{a as ne}from"./chunk-7MZD7YCO.mjs";import{a as oe}from"./chunk-6ILB52XY.mjs";import{a as Q}from"./chunk-QJGFIK7H.mjs";import{b as J}from"./chunk-4Z3DZ2A3.mjs";import{b as I,c as Y}from"./chunk-NRXYSTRW.mjs";import{j as $,l as O,u as M,v as C,w as L}from"./chunk-XVCSSYCP.mjs";import{a as y}from"./chunk-ASVVZSNW.mjs";import{a as P}from"./chunk-C4A4E2FY.mjs";import{a as q}from"./chunk-KI2NE6MI.mjs";import{a as D}from"./chunk-4TBVQD27.mjs";import{a as X}from"./chunk-YUBLXI76.mjs";import{g as K}from"./chunk-2IUBMLF4.mjs";import{a as F,q as j,s as l}from"./chunk-YTR6YMAJ.mjs";import{f as R}from"./chunk-UERJ6AKK.mjs";import{b as E,c as V}from"./chunk-SAAOQW7P.mjs";import{a as B}from"./chunk-VNLGNNIL.mjs";import{b as H,c as G}from"./chunk-6JM4DPOH.mjs";import{a as c}from"./chunk-CDQ2BNUD.mjs";import{a as o}from"./chunk-PLUWBWJ2.mjs";import{IframeLoginTypes as pe}from"@multiversx/sdk-web-wallet-iframe-provider/out/constants";var f=class extends p{constructor({address:e,anchor:r,shouldInitProvider:t}){super(e);this.provider=null;this.config=null;this.ledgerLogin=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");if(!e||typeof e.addressIndex!="number")throw new Error("Missing addressIndex for Ledger login");let{address:r,signature:t}=await this.provider.login({addressIndex:e.addressIndex});return{address:r,signature:t??""}};this.loginOperation=async e=>{if(!this.provider||!this.config)throw new Error("Provider is not initialized.");return await te({options:e,config:this.config,provider:this.provider,login:this.ledgerLogin.bind(this)})};this.initLegderConnectManager=async e=>{if(!!P())return;await U.getInstance().init(e)};this.signTransactions=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");return await this.rebuildProvider(),await ne({transactions:e,handleSign:this.provider.signTransactions.bind(this.provider)})};this.signMessage=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");return await this.rebuildProvider(),await ce({message:e,handleSignMessage:this.provider.signMessage.bind(this.provider)})};this.rebuildProvider=async()=>{try{await this.provider?.getAddress()}catch{try{let{ledgerProvider:r}=await re({shouldInitProvider:!0});this.provider=r}catch(r){throw $({toastId:"ledger-provider-rebuild-error",duration:1e4,icon:"times",iconClassName:"warning",message:"Unlock your device & open the MultiversX App",title:"Ledger unavailable"}),r}}};this.options={anchor:r,shouldInitProvider:t},this._login=this.ledgerLogin.bind(this)}async init(){try{this.initializeAddress(),await this.initializeProvider()}catch{return!1}return!0}logout(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.logout()}getType(){return o.ledger}getAddress(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.getAddress()}setAccount(e){return this.provider?.setAccount(e)}isInitialized(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.isInitialized()}async initializeProvider(){await this.initLegderConnectManager(this.options?.anchor);let e=U.getInstance(),{ledgerProvider:r,ledgerConfig:t}=await new Promise((n,s)=>ie({manager:e,resolve:n,reject:s,shouldInitProvider:this.options?.shouldInitProvider}));this.config=t,this.provider=r}};var ve=3e4,me=5e3,he=3e3,S=class a{constructor(){this.store=j();this.connectionCheckInterval=null;this.recreateProviderInterval=null;this.init=async()=>{this.startCheckConnectionLoop()};this.shouldCheckConnection=()=>{let i=this.store.getState(),{providerType:e}=B(i),r=R(i);return!!(e===o.ledger&&r)};this.startCheckConnectionLoop=()=>{this.connectionCheckInterval||(this.connectionCheckInterval=setInterval(async()=>{let i=J(l());if(!(!this.shouldCheckConnection()||i))try{await L().getProvider().getAddress()}catch{if(O.getInstance().createCustomToast({toastId:"ledger-provider-idle-warning",icon:"times",iconClassName:"warning",message:"Unlock your device to continue signing transactions",title:"Ledger disconnected"}),this.reset(),this.recreateProviderInterval)return;this.recreateProviderInterval=setInterval(this.reconnectProvider,me)}},ve))};this.reconnectProvider=async()=>{if(this.shouldCheckConnection())try{let i=new f({shouldInitProvider:!0});await i.init();let e=new M(i);i.getType=()=>o.ledger,C(e),this.reset(),clearInterval(this.recreateProviderInterval??0),this.recreateProviderInterval=null,O.getInstance().createCustomToast({toastId:"ledger-provider-idle-warning",duration:he,icon:"check",iconClassName:"success",message:"Your device is ready to sign transactions",title:"Ledger reconnected"}),this.startCheckConnectionLoop()}catch{console.log("Unable to reconnect to Ledger")}};this.reset=()=>{clearInterval(this.connectionCheckInterval??0),this.connectionCheckInterval=null}}static getInstance(){return a.instance||(a.instance=new a),a.instance}};var k=class extends p{constructor(e){super(e?.address);this.cancelAction=async()=>{this.provider.cancelAction()};this.signTransactions=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");let{onClose:r,manager:t}=await this.initSignState();try{let n=await this.provider.signTransactions(e)??[];return await oe(n)}catch(n){throw await r({shouldCancelAction:!0}),n}finally{t.closeUI()}};this.signMessage=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");return await g({message:e,handleSignMessage:this.provider.signMessage.bind(this.provider),cancelAction:this.cancelAction,providerType:c.crossWindow})};this.walletAddress=e?.walletAddress,this.provider=Q.getInstance(),this._login=this.provider.login.bind(this.provider)}async init(){return this.initializeAddress(),this.initializeProvider()}async initializeProvider(){let e=E(l()),r=await this.provider.init();return this.provider.setWalletUrl(this.walletAddress??e.walletAddress),this.address&&this.provider.setAddress(this.address),r}logout(){return this.provider.logout()}getType(){return o.crossWindow}getAddress(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.getAddress()}setAccount(e){return this.provider.setAccount(e)}isInitialized(){return this.provider.isInitialized()}};import{ExtensionProvider as ue}from"@multiversx/sdk-extension-provider/out/extensionProvider";var z=class extends p{constructor(e){super(e);this.cancelAction=async()=>{this.provider.cancelAction()};this.signTransactions=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");let{manager:r,onClose:t}=await this.initSignState();try{return await this.provider.signTransactions(e)??[]}catch(n){throw await t({shouldCancelAction:!1}),n}finally{r.closeUI()}};this.signMessage=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");return await g({message:e,handleSignMessage:this.provider.signMessage.bind(this.provider),cancelAction:this.cancelAction,providerType:c.extension})};this.provider=ue.getInstance(),this._login=this.provider.login.bind(this.provider)}async init(){return this.initializeAddress(),this.initializeProvider()}async initializeProvider(){let e=await this.provider.init();return this.address&&this.setAccount({address:this.address}),e}getAddress(){return this.provider.getAddress()}setAccount(e){return this.provider.setAccount(e)}isInitialized(){return this.provider.isInitialized()}logout(){return this.provider.logout()}getType(){return o.extension}};var fe={passkey:o.passkey,metamask:o.metamask},T=class extends p{constructor({type:e,address:r,walletUrl:t}){super(r);this.cancelAction=async()=>{this.provider.cancelAction()};this.signTransactions=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");let{manager:r,onClose:t}=await this.initSignState();try{return await this.provider.signTransactions(e)}catch(n){throw await t({shouldCancelAction:!0}),n}finally{r.closeUI()}};this.signMessage=async e=>{if(!this.provider||!this.type)throw new Error("Provider is not initialized.");return await g({message:e,handleSignMessage:this.provider.signMessage.bind(this.provider),cancelAction:this.cancelAction,providerType:c[this.type]})};this.type=e,this.walletUrl=t??"",this.provider=de.getInstance(),this._login=this.provider.login.bind(this.provider)}init(){return this.initializeAddress(),this.initializeWalletUrl(),this.initializeProvider()}initializeWalletUrl(){if(this.walletUrl)return;let e=E(l());if(!e.iframeWalletAddress)throw new Error("Invalid walletUrl");this.walletUrl=e.iframeWalletAddress}async initializeProvider(){return await this.provider.init(),this.address&&this.setAccount({address:this.address}),this.provider.setLoginType(this.type),this.provider.setWalletUrl(this.walletUrl),!0}logout(){return this.provider.logout()}getType(){return fe[this.type]}getAddress(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.getAddress()}setAccount(e){this.provider.setAccount(e)}isInitialized(){return this.provider.isInitialized()}};import{OptionalOperation as ye}from"@multiversx/sdk-wallet-connect-provider/out";var le=[I.CANCEL_ACTION,I.SIGN_LOGIN_TOKEN],_=class extends p{constructor(e){super();this.provider=null;this.methods=[];this._approval=null;this.cancelActionAbortController=null;this.signTransactions=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");let{manager:r,onClose:t}=await this.initSignState();this.cancelActionAbortController=new AbortController;let n=this.cancelActionAbortController.signal;try{let s=new Promise((h,v)=>{n.addEventListener("abort",()=>{v(new Error("cancelled by user"))})});return await Promise.race([this.provider.signTransactions(e),s])}catch(s){throw await t({shouldCancelAction:!0}),s}finally{r.closeUI()}};this.cancelAction=async()=>{this.sendCustomRequest({method:I.CANCEL_ACTION,action:ye.CANCEL_ACTION}),this.cancelActionAbortController?.abort()};this.signMessage=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");this.cancelActionAbortController=new AbortController;let r=this.cancelActionAbortController.signal,t=new Promise((s,d)=>{r.addEventListener("abort",()=>{d(new Error("cancelled by user"))})});return await Promise.race([g({message:e,handleSignMessage:this.provider.signMessage.bind(this.provider),cancelAction:this.cancelAction,providerType:c.extension}),t])};this.config=e}async init(){try{await this.initializeProvider()}catch{return!1}return!0}logout(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.logout()}getType(){return o.walletConnect}getAddress(){if(!this.provider)throw new Error("Provider is not initialized.");return Promise.resolve(this.provider.getAddress())}setAccount(e){return this.provider?.setAccount(e)}isInitialized(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.isInitialized()}async initializeProvider(){if(await this.initWalletConnectManager(),!this.config)throw new Error("Invalid WalletConnect setup");let{walletConnectProvider:e,dappMethods:r}=await this.createWalletConnectProvider(this.config);this.provider=e,this.methods=r;let{uri:t="",approval:n}=await this.provider.connect({methods:this.methods}),s=this.config.walletConnectDeepLink??D.walletConnectDeepLink;this._approval=n,y.getInstance().updateData({wcURI:t,walletConnectDeepLink:`${s}?wallet-connect=${encodeURIComponent(t)}`})}async initWalletConnectManager(){if(!!P())return;await y.getInstance().init(this.config?.anchor)}async createWalletConnectProvider(e){let r=P(),t=V(l());if(H(l())&&le.push(I.SIGN_NATIVE_AUTH_TOKEN),!e?.walletConnectV2ProjectId)throw new Error("Invalid WalletConnect setup");let v={onClientLogin:()=>{},onClientLogout:()=>{X()},onClientEvent:m=>{}};try{let{walletConnectV2ProjectId:m,walletConnectV2Options:x={},walletConnectV2RelayAddress:W=""}=e,w=new Y(v,t,W,m,x);return await w.init(),{walletConnectProvider:w,dappMethods:le}}catch(m){throw console.error("Unable to connect",m),r&&await this.logout(),m}}async login(e){if(!this.provider)throw new Error("Provider is not initialized. Call createProvider first.");let r=async()=>{if(!this.provider)throw new Error("Provider is not initialized.");try{await this.provider.init();let t=y.getInstance(),{uri:n="",approval:s}=await this.provider.connect({methods:this.methods}),d=this.config.walletConnectDeepLink??D.walletConnectDeepLink;t.updateData({wcURI:n,walletConnectDeepLink:`${d}?wallet-connect=${encodeURIComponent(n)}`});let h=await this.provider.login({approval:s,token:e?.token}),{address:v="",signature:m=""}=h??{};return t.handleClose({isLoginFinished:!!v}),{address:v,signature:m}}catch{return await r()}};if(!this._approval)throw new Error("Approval or login is not initialized");try{let t=await this.provider.login({approval:this._approval.bind(this),token:e?.token}),{address:n="",signature:s=""}=t??{};return y.getInstance().handleClose({isLoginFinished:!!n}),{address:n,signature:s}}catch(t){return console.error("User rejected connection proposal",t),await r()}}async sendCustomRequest({action:e,method:r}){if(!this.provider)throw new Error("Provider is not initialized.");try{await this.provider.sendCustomRequest?.({request:{method:r,params:{action:e}}})}catch(t){console.error("Unable to send event",t)}}};var A=class{static set customProviders(i){this._customProviders=i}static get customProviders(){return this._customProviders}static async create({type:i,anchor:e}){let r=null;switch(i){case o.extension:{r=new z;break}case o.crossWindow:{r=new k;break}case o.ledger:{r=new f({anchor:e}),await S.getInstance().init();break}case o.metamask:{r=new T({type:pe.metamask});break}case o.passkey:{r=new T({type:pe.passkey});break}case o.walletConnect:{let s=G(l());if(!s?.walletConnectV2ProjectId)throw new Error("Invalid WalletConnect setup");r=new _({anchor:e,...s});break}case o.webview:{r=new ae;break}default:{let s=q();for(let d of this._customProviders)d.type===i&&(r=await d.constructor({address:s,anchor:e}));break}}if(!r)throw new Error("Unable to create provider");await r.init();let t=new M(r);C(t);let n=[o.crossWindow,o.metamask,o.passkey].includes(i);return se(n?{skipLoginMethod:i}:null),t}static async destroy(){L().cancelLogin(),C(null),F(o.none)}};A._customProviders=[];var Pe=(a,i)=>a.some(e=>e.type===i);async function g({message:a,handleSignMessage:i,cancelAction:e,providerType:r}){return await new Promise(async(n,s)=>{let{manager:d,onClose:h}=await Z({cancelAction:e}),v=Object.values(A.customProviders),m=v.reduce((u,N)=>(u[N.type]=N.name,u),{}),x={...c,...m},W=async()=>{await h({shouldCancelAction:!0}),s({message:"Signing canceled"})};d.subscribeToEventBus("CLOSE_PENDING_TRANSACTIONS",W);let w=Pe(v,r)?r:o.none;d.updateData({name:x[w],type:w});try{let u=await i(a);n(u)}catch(u){await h({shouldCancelAction:!0}),s(u)}finally{d.closeUI()}})}async function ce({message:a,handleSignMessage:i}){try{return await g({message:a,handleSignMessage:i,providerType:c.ledger})}catch(e){let{errorMessage:r}=ee(e);throw r?{message:r}:e}}export{ce as a,f as b,S as c,A as d,g as e,k as f,z as g,T as h,_ as i};
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as de}from"./chunk-M3YL36ZL.mjs";import{a as se}from"./chunk-2Y66XRQK.mjs";import{a as te}from"./chunk-TF67ZK65.mjs";import{a as U}from"./chunk-OAKDIMYH.mjs";import{a as ie}from"./chunk-BECHXPBC.mjs";import{a as re}from"./chunk-6DI7XSHB.mjs";import{a as ee}from"./chunk-YUFPUG5O.mjs";import{a as ae}from"./chunk-VT5BFUDT.mjs";import{a as p}from"./chunk-AH5RW56M.mjs";import{a as Z}from"./chunk-ZSJNTJKG.mjs";import{a as ne}from"./chunk-CRC6EHJB.mjs";import{a as oe}from"./chunk-RNWJHZLH.mjs";import{a as Q}from"./chunk-QJGFIK7H.mjs";import{b as J}from"./chunk-4Z3DZ2A3.mjs";import{b as I,c as Y}from"./chunk-NRXYSTRW.mjs";import{j as $,l as O,u as M,v as C,w as L}from"./chunk-R4PAEXYU.mjs";import{a as y}from"./chunk-QF3ACWOH.mjs";import{a as P}from"./chunk-77NCTJIH.mjs";import{a as q}from"./chunk-LNCOC6DZ.mjs";import{a as D}from"./chunk-4TBVQD27.mjs";import{a as X}from"./chunk-KOA4KAE3.mjs";import{g as K}from"./chunk-2IUBMLF4.mjs";import{a as F,q as j,s as l}from"./chunk-DWYHYJNY.mjs";import{f as R}from"./chunk-UERJ6AKK.mjs";import{b as E,c as V}from"./chunk-SAAOQW7P.mjs";import{a as B}from"./chunk-VNLGNNIL.mjs";import{b as H,c as G}from"./chunk-6JM4DPOH.mjs";import{a as c}from"./chunk-6JSWL75O.mjs";import{a as n}from"./chunk-LJX4MW7B.mjs";import{IframeLoginTypes as pe}from"@multiversx/sdk-web-wallet-iframe-provider/out/constants";var f=class extends p{constructor({address:e,anchor:r,shouldInitProvider:t}){super(e);this.provider=null;this.config=null;this.ledgerLogin=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");if(!e||typeof e.addressIndex!="number")throw new Error("Missing addressIndex for Ledger login");let{address:r,signature:t}=await this.provider.login({addressIndex:e.addressIndex});return{address:r,signature:t??""}};this.loginOperation=async e=>{if(!this.provider||!this.config)throw new Error("Provider is not initialized.");return await te({options:e,config:this.config,provider:this.provider,login:this.ledgerLogin.bind(this)})};this.initLegderConnectManager=async e=>{if(!!P())return;await U.getInstance().init(e)};this.signTransactions=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");return await this.rebuildProvider(),await ne({transactions:e,handleSign:this.provider.signTransactions.bind(this.provider)})};this.signMessage=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");return await this.rebuildProvider(),await ce({message:e,handleSignMessage:this.provider.signMessage.bind(this.provider)})};this.rebuildProvider=async()=>{try{await this.provider?.getAddress()}catch{try{let{ledgerProvider:r}=await re({shouldInitProvider:!0});this.provider=r}catch(r){throw $({toastId:"ledger-provider-rebuild-error",duration:1e4,icon:"times",iconClassName:"warning",message:"Unlock your device & open the MultiversX App",title:"Ledger unavailable"}),r}}};this.options={anchor:r,shouldInitProvider:t},this._login=this.ledgerLogin.bind(this)}async init(){try{this.initializeAddress(),await this.initializeProvider()}catch{return!1}return!0}logout(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.logout()}getType(){return n.ledger}getAddress(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.getAddress()}setAccount(e){return this.provider?.setAccount(e)}isInitialized(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.isInitialized()}async initializeProvider(){await this.initLegderConnectManager(this.options?.anchor);let e=U.getInstance(),{ledgerProvider:r,ledgerConfig:t}=await new Promise((o,s)=>ie({manager:e,resolve:o,reject:s,shouldInitProvider:this.options?.shouldInitProvider}));this.config=t,this.provider=r}};var ve=3e4,me=5e3,he=3e3,S=class a{constructor(){this.store=j();this.connectionCheckInterval=null;this.recreateProviderInterval=null;this.init=async()=>{this.startCheckConnectionLoop()};this.shouldCheckConnection=()=>{let i=this.store.getState(),{providerType:e}=B(i),r=R(i);return!!(e===n.ledger&&r)};this.startCheckConnectionLoop=()=>{this.connectionCheckInterval||(this.connectionCheckInterval=setInterval(async()=>{let i=J(l());if(!(!this.shouldCheckConnection()||i))try{await L().getProvider().getAddress()}catch{if(O.getInstance().createCustomToast({toastId:"ledger-provider-idle-warning",icon:"times",iconClassName:"warning",message:"Unlock your device to continue signing transactions",title:"Ledger disconnected"}),this.reset(),this.recreateProviderInterval)return;this.recreateProviderInterval=setInterval(this.reconnectProvider,me)}},ve))};this.reconnectProvider=async()=>{if(this.shouldCheckConnection())try{let i=new f({shouldInitProvider:!0});await i.init();let e=new M(i);i.getType=()=>n.ledger,C(e),this.reset(),clearInterval(this.recreateProviderInterval??0),this.recreateProviderInterval=null,O.getInstance().createCustomToast({toastId:"ledger-provider-idle-warning",duration:he,icon:"check",iconClassName:"success",message:"Your device is ready to sign transactions",title:"Ledger reconnected"}),this.startCheckConnectionLoop()}catch{console.log("Unable to reconnect to Ledger")}};this.reset=()=>{clearInterval(this.connectionCheckInterval??0),this.connectionCheckInterval=null}}static getInstance(){return a.instance||(a.instance=new a),a.instance}};var z=class extends p{constructor(e){super(e?.address);this.cancelAction=async()=>{this.provider.cancelAction()};this.signTransactions=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");let{onClose:r,manager:t}=await this.initSignState();try{let o=await this.provider.signTransactions(e)??[];return await oe(o)}catch(o){throw await r({shouldCancelAction:!0}),o}finally{t.closeUI()}};this.signMessage=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");return await g({message:e,handleSignMessage:this.provider.signMessage.bind(this.provider),cancelAction:this.cancelAction,providerType:c.crossWindow})};this.walletAddress=e?.walletAddress,this.provider=Q.getInstance(),this._login=this.provider.login.bind(this.provider)}async init(){return this.initializeAddress(),this.initializeProvider()}async initializeProvider(){let e=E(l()),r=await this.provider.init();return this.provider.setWalletUrl(this.walletAddress??e.walletAddress),this.address&&this.provider.setAddress(this.address),r}logout(){return this.provider.logout()}getType(){return n.crossWindow}getAddress(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.getAddress()}setAccount(e){return this.provider.setAccount(e)}isInitialized(){return this.provider.isInitialized()}};import{ExtensionProvider as ue}from"@multiversx/sdk-extension-provider/out/extensionProvider";var k=class extends p{constructor(e){super(e);this.cancelAction=async()=>{this.provider.cancelAction()};this.signTransactions=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");let{manager:r,onClose:t}=await this.initSignState();try{return await this.provider.signTransactions(e)??[]}catch(o){throw await t({shouldCancelAction:!1}),o}finally{r.closeUI()}};this.signMessage=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");return await g({message:e,handleSignMessage:this.provider.signMessage.bind(this.provider),cancelAction:this.cancelAction,providerType:c.extension})};this.provider=ue.getInstance(),this._login=this.provider.login.bind(this.provider)}async init(){return this.initializeAddress(),this.initializeProvider()}async initializeProvider(){let e=await this.provider.init();return this.address&&this.setAccount({address:this.address}),e}getAddress(){return this.provider.getAddress()}setAccount(e){return this.provider.setAccount(e)}isInitialized(){return this.provider.isInitialized()}logout(){return this.provider.logout()}getType(){return n.extension}};var fe={passkey:n.passkey,metamask:n.metamask},T=class extends p{constructor({type:e,address:r,walletUrl:t}){super(r);this.cancelAction=async()=>{this.provider.cancelAction()};this.signTransactions=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");let{manager:r,onClose:t}=await this.initSignState();try{return await this.provider.signTransactions(e)}catch(o){throw await t({shouldCancelAction:!0}),o}finally{r.closeUI()}};this.signMessage=async e=>{if(!this.provider||!this.type)throw new Error("Provider is not initialized.");return await g({message:e,handleSignMessage:this.provider.signMessage.bind(this.provider),cancelAction:this.cancelAction,providerType:c[this.type]})};this.type=e,this.walletUrl=t??"",this.provider=de.getInstance(),this._login=this.provider.login.bind(this.provider)}init(){return this.initializeAddress(),this.initializeWalletUrl(),this.initializeProvider()}initializeWalletUrl(){if(this.walletUrl)return;let e=E(l());if(!e.iframeWalletAddress)throw new Error("Invalid walletUrl");this.walletUrl=e.iframeWalletAddress}async initializeProvider(){return await this.provider.init(),this.address&&this.setAccount({address:this.address}),this.provider.setLoginType(this.type),this.provider.setWalletUrl(this.walletUrl),!0}logout(){return this.provider.logout()}getType(){return fe[this.type]}getAddress(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.getAddress()}setAccount(e){this.provider.setAccount(e)}isInitialized(){return this.provider.isInitialized()}};import{OptionalOperation as ye}from"@multiversx/sdk-wallet-connect-provider/out";var le=[I.CANCEL_ACTION,I.SIGN_LOGIN_TOKEN],_=class extends p{constructor(e){super();this.provider=null;this.methods=[];this._approval=null;this.cancelActionAbortController=null;this.signTransactions=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");let{manager:r,onClose:t}=await this.initSignState();this.cancelActionAbortController=new AbortController;let o=this.cancelActionAbortController.signal;try{let s=new Promise((h,v)=>{o.addEventListener("abort",()=>{v(new Error("cancelled by user"))})});return await Promise.race([this.provider.signTransactions(e),s])}catch(s){throw await t({shouldCancelAction:!0}),s}finally{r.closeUI()}};this.cancelAction=async()=>{this.sendCustomRequest({method:I.CANCEL_ACTION,action:ye.CANCEL_ACTION}),this.cancelActionAbortController?.abort()};this.signMessage=async e=>{if(!this.provider)throw new Error("Provider is not initialized.");this.cancelActionAbortController=new AbortController;let r=this.cancelActionAbortController.signal,t=new Promise((s,d)=>{r.addEventListener("abort",()=>{d(new Error("cancelled by user"))})});return await Promise.race([g({message:e,handleSignMessage:this.provider.signMessage.bind(this.provider),cancelAction:this.cancelAction,providerType:c.extension}),t])};this.config=e}async init(){try{await this.initializeProvider()}catch{return!1}return!0}logout(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.logout()}getType(){return n.walletConnect}getAddress(){if(!this.provider)throw new Error("Provider is not initialized.");return Promise.resolve(this.provider.getAddress())}setAccount(e){return this.provider?.setAccount(e)}isInitialized(){if(!this.provider)throw new Error("Provider is not initialized.");return this.provider.isInitialized()}async initializeProvider(){if(await this.initWalletConnectManager(),!this.config)throw new Error("Invalid WalletConnect setup");let{walletConnectProvider:e,dappMethods:r}=await this.createWalletConnectProvider(this.config);this.provider=e,this.methods=r;let{uri:t="",approval:o}=await this.provider.connect({methods:this.methods}),s=this.config.walletConnectDeepLink??D.walletConnectDeepLink;this._approval=o,y.getInstance().updateData({wcURI:t,walletConnectDeepLink:`${s}?wallet-connect=${encodeURIComponent(t)}`})}async initWalletConnectManager(){if(!!P())return;await y.getInstance().init(this.config?.anchor)}async createWalletConnectProvider(e){let r=P(),t=V(l());if(H(l())&&le.push(I.SIGN_NATIVE_AUTH_TOKEN),!e?.walletConnectV2ProjectId)throw new Error("Invalid WalletConnect setup");let v={onClientLogin:()=>{},onClientLogout:()=>{X()},onClientEvent:m=>{}};try{let{walletConnectV2ProjectId:m,walletConnectV2Options:x={},walletConnectV2RelayAddress:W=""}=e,w=new Y(v,t,W,m,x);return await w.init(),{walletConnectProvider:w,dappMethods:le}}catch(m){throw console.error("Unable to connect",m),r&&await this.logout(),m}}async login(e){if(!this.provider)throw new Error("Provider is not initialized. Call createProvider first.");let r=async()=>{if(!this.provider)throw new Error("Provider is not initialized.");try{await this.provider.init();let t=y.getInstance(),{uri:o="",approval:s}=await this.provider.connect({methods:this.methods}),d=this.config.walletConnectDeepLink??D.walletConnectDeepLink;t.updateData({wcURI:o,walletConnectDeepLink:`${d}?wallet-connect=${encodeURIComponent(o)}`});let h=await this.provider.login({approval:s,token:e?.token}),{address:v="",signature:m=""}=h??{};return t.handleClose({isLoginFinished:!!v}),{address:v,signature:m}}catch{return await r()}};if(!this._approval)throw new Error("Approval or login is not initialized");try{let t=await this.provider.login({approval:this._approval.bind(this),token:e?.token}),{address:o="",signature:s=""}=t??{};return y.getInstance().handleClose({isLoginFinished:!!o}),{address:o,signature:s}}catch(t){return console.error("User rejected connection proposal",t),await r()}}async sendCustomRequest({action:e,method:r}){if(!this.provider)throw new Error("Provider is not initialized.");try{await this.provider.sendCustomRequest?.({request:{method:r,params:{action:e}}})}catch(t){console.error("Unable to send event",t)}}};var A=class{static set customProviders(i){this._customProviders=i}static get customProviders(){return this._customProviders}static async create({type:i,anchor:e}){let r=null;switch(i){case n.extension:{r=new k;break}case n.crossWindow:{r=new z;break}case n.ledger:{r=new f({anchor:e}),await S.getInstance().init();break}case n.metamask:{r=new T({type:pe.metamask});break}case n.passkey:{r=new T({type:pe.passkey});break}case n.walletConnect:{let s=G(l());if(!s?.walletConnectV2ProjectId)throw new Error("Invalid WalletConnect setup");r=new _({anchor:e,...s});break}case n.webview:{r=new ae;break}default:{let s=q();for(let d of this._customProviders)d.type===i&&(r=await d.constructor({address:s,anchor:e}));break}}if(!r)throw new Error("Unable to create provider");await r.init();let t=new M(r);C(t);let o=n.crossWindow===i;return se(o?{skipLoginMethod:i}:null),t}static async destroy(){L().cancelLogin(),C(null),F(n.none)}};A._customProviders=[];var Pe=(a,i)=>a.some(e=>e.type===i);async function g({message:a,handleSignMessage:i,cancelAction:e,providerType:r}){return await new Promise(async(o,s)=>{let{manager:d,onClose:h}=await Z({cancelAction:e}),v=Object.values(A.customProviders),m=v.reduce((u,N)=>(u[N.type]=N.name,u),{}),x={...c,...m},W=async()=>{await h({shouldCancelAction:!0}),s({message:"Signing canceled"})};d.subscribeToEventBus("CLOSE_PENDING_TRANSACTIONS",W);let w=Pe(v,r)?r:n.none;d.updateData({name:x[w],type:w});try{let u=await i(a);o(u)}catch(u){await h({shouldCancelAction:!0}),s(u)}finally{d.closeUI()}})}async function ce({message:a,handleSignMessage:i}){try{return await g({message:a,handleSignMessage:i,providerType:c.ledger})}catch(e){let{errorMessage:r}=ee(e);throw r?{message:r}:e}}export{ce as a,f as b,S as c,A as d,g as e,z as f,k as g,T as h,_ as i};
|
|
2
|
+
//# sourceMappingURL=chunk-726BASBO.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/providers/ProviderFactory.ts", "../../src/providers/strategies/LedgerProviderStrategy/LedgerProviderStrategy.ts", "../../src/managers/internal/LedgerIdleStateManager/LedgerIdleStateManager.ts", "../../src/providers/strategies/CrossWindowProviderStrategy/CrossWindowProviderStrategy.ts", "../../src/providers/strategies/ExtensionProviderStrategy/ExtensionProviderStrategy.ts", "../../src/providers/strategies/IframeProviderStrategy/IframeProviderStrategy.ts", "../../src/providers/strategies/WalletConnectProviderStrategy/WalletConnectProviderStrategy.ts", "../../src/providers/strategies/helpers/signMessage/signMessage.ts", "../../src/providers/strategies/LedgerProviderStrategy/helpers/signLedgerMessage.ts"],
|
|
4
|
+
"sourcesContent": ["import { IframeLoginTypes } from '@multiversx/sdk-web-wallet-iframe-provider/out/constants';\nimport { LedgerIdleStateManager } from 'managers/internal/LedgerIdleStateManager/LedgerIdleStateManager';\nimport { getAddress } from 'methods/account/getAddress';\nimport {\n CrossWindowProviderStrategy,\n ExtensionProviderStrategy,\n IframeProviderStrategy,\n LedgerProviderStrategy,\n WalletConnectProviderStrategy,\n WalletConnectV2Error\n} from 'providers/strategies';\nimport { setProviderType } from 'store/actions/loginInfo/loginInfoActions';\nimport { walletConnectConfigSelector } from 'store/selectors/configSelectors';\nimport { getState } from 'store/store';\nimport { DappProvider } from './DappProvider/DappProvider';\nimport {\n getAccountProvider,\n setAccountProvider\n} from './helpers/accountProvider';\nimport { clearInitiatedLogins } from './helpers/clearInitiatedLogins';\nimport { WebviewProviderStrategy } from './strategies/WebviewProviderStrategy';\nimport {\n ICustomProvider,\n IProvider,\n IProviderFactory,\n ProviderTypeEnum\n} from './types/providerFactory.types';\n\nexport class ProviderFactory {\n private static _customProviders: ICustomProvider[] = [];\n\n public static set customProviders(providers: ICustomProvider[]) {\n this._customProviders = providers;\n }\n\n public static get customProviders() {\n return this._customProviders;\n }\n\n public static async create({\n type,\n anchor\n }: IProviderFactory): Promise<DappProvider> {\n let createdProvider: IProvider | null = null;\n\n switch (type) {\n case ProviderTypeEnum.extension: {\n createdProvider = new ExtensionProviderStrategy();\n\n break;\n }\n\n case ProviderTypeEnum.crossWindow: {\n createdProvider = new CrossWindowProviderStrategy();\n\n break;\n }\n\n case ProviderTypeEnum.ledger: {\n createdProvider = new LedgerProviderStrategy({ anchor });\n\n const ledgerIdleStateManager = LedgerIdleStateManager.getInstance();\n await ledgerIdleStateManager.init();\n\n break;\n }\n\n case ProviderTypeEnum.metamask: {\n createdProvider = new IframeProviderStrategy({\n type: IframeLoginTypes.metamask\n });\n\n break;\n }\n\n case ProviderTypeEnum.passkey: {\n createdProvider = new IframeProviderStrategy({\n type: IframeLoginTypes.passkey\n });\n\n break;\n }\n case ProviderTypeEnum.walletConnect: {\n const walletConnectConfig = walletConnectConfigSelector(getState());\n\n if (!walletConnectConfig?.walletConnectV2ProjectId) {\n throw new Error(WalletConnectV2Error.invalidConfig);\n }\n\n createdProvider = new WalletConnectProviderStrategy({\n anchor,\n ...walletConnectConfig\n });\n\n break;\n }\n case ProviderTypeEnum.webview: {\n createdProvider = new WebviewProviderStrategy();\n break;\n }\n\n default: {\n const address = getAddress();\n\n for (const customProvider of this._customProviders) {\n if (customProvider.type === type) {\n createdProvider = await customProvider.constructor({\n address,\n anchor\n });\n }\n }\n break;\n }\n }\n\n if (!createdProvider) {\n throw new Error('Unable to create provider');\n }\n\n await createdProvider.init();\n\n const dappProvider = new DappProvider(createdProvider);\n setAccountProvider(dappProvider);\n\n const shouldClearInitiatedLogins = ProviderTypeEnum.crossWindow === type;\n\n // Clear initiated logins and skip the login method if it's crossWindow or metamask\n clearInitiatedLogins(\n shouldClearInitiatedLogins ? { skipLoginMethod: type } : null\n );\n\n return dappProvider;\n }\n\n public static async destroy() {\n const provider = getAccountProvider();\n provider.cancelLogin();\n setAccountProvider(null);\n setProviderType(ProviderTypeEnum.none);\n }\n}\n", "import { HWProvider } from '@multiversx/sdk-hw-provider';\n\nimport { CANCEL_TRANSACTION_TOAST_DEFAULT_DURATION } from 'constants/transactions.constants';\nimport { Message, Transaction } from 'lib/sdkCore';\nimport { IDAppProviderAccount } from 'lib/sdkDappUtils';\nimport { LedgerConnectStateManager } from 'managers/internal/LedgerConnectStateManager/LedgerConnectStateManager';\nimport { ToastIconsEnum } from 'managers/internal/ToastManager/helpers/getToastDataStateByStatus';\nimport { getIsLoggedIn } from 'methods/account/getIsLoggedIn';\nimport {\n ProviderTypeEnum,\n ProviderType\n} from 'providers/types/providerFactory.types';\nimport { createCustomToast } from 'store/actions/toasts/toastsActions';\nimport { ProviderErrorsEnum } from 'types/provider.types';\nimport { getLedgerProvider } from './helpers';\nimport { authenticateLedgerAccount } from './helpers/authenticateLedgerAccount';\nimport { initializeLedgerProvider } from './helpers/initializeLedgerProvider';\nimport { signLedgerMessage } from './helpers/signLedgerMessage';\nimport { LedgerConfigType } from './types/ledgerProvider.types';\nimport {\n BaseProviderStrategy,\n LoginOptionsTypes\n} from '../BaseProviderStrategy/BaseProviderStrategy';\nimport { signTransactions } from '../helpers/signTransactions/signTransactions';\n\ntype LedgerProviderStrategyOptionsType = {\n anchor?: HTMLElement;\n shouldInitProvider?: boolean;\n};\n\ntype LedgerProviderStrategyType = LedgerProviderStrategyOptionsType & {\n address?: string;\n};\n\nexport class LedgerProviderStrategy extends BaseProviderStrategy {\n private provider: HWProvider | null = null;\n private config: LedgerConfigType | null = null;\n private readonly options?: LedgerProviderStrategyOptionsType;\n\n constructor({\n address,\n anchor,\n shouldInitProvider\n }: LedgerProviderStrategyType) {\n super(address);\n this.options = { anchor, shouldInitProvider };\n this._login = this.ledgerLogin.bind(this);\n }\n\n async init(): Promise<boolean> {\n try {\n this.initializeAddress();\n await this.initializeProvider();\n } catch {\n return false;\n }\n\n return true;\n }\n\n logout(): Promise<boolean> {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n return this.provider.logout();\n }\n\n getType(): ProviderType {\n return ProviderTypeEnum.ledger;\n }\n\n getAddress(): Promise<string | undefined> {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n return this.provider.getAddress();\n }\n\n setAccount(account: IDAppProviderAccount): void {\n return this.provider?.setAccount(account);\n }\n\n isInitialized(): boolean {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n return this.provider.isInitialized();\n }\n\n private async initializeProvider() {\n await this.initLegderConnectManager(this.options?.anchor);\n const ledgerConnectManager = LedgerConnectStateManager.getInstance();\n\n const { ledgerProvider, ledgerConfig } = await new Promise<\n Awaited<ReturnType<typeof getLedgerProvider>>\n >((resolve, reject) =>\n initializeLedgerProvider({\n manager: ledgerConnectManager,\n resolve,\n reject,\n shouldInitProvider: this.options?.shouldInitProvider\n })\n );\n\n this.config = ledgerConfig;\n this.provider = ledgerProvider;\n }\n\n private readonly ledgerLogin = async (\n options?: LoginOptionsTypes & { addressIndex?: number }\n ): Promise<{ address: string; signature: string }> => {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n if (!options || typeof options.addressIndex !== 'number') {\n throw new Error('Missing addressIndex for Ledger login');\n }\n const { address, signature } = await this.provider.login({\n addressIndex: options.addressIndex\n });\n return {\n address,\n signature: signature ?? ''\n };\n };\n\n public override loginOperation = async (options?: LoginOptionsTypes) => {\n if (!this.provider || !this.config) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n return await authenticateLedgerAccount({\n options,\n config: this.config,\n provider: this.provider,\n login: this.ledgerLogin.bind(this)\n });\n };\n\n private readonly initLegderConnectManager = async (anchor?: HTMLElement) => {\n const shouldInitiateLogin = !getIsLoggedIn();\n\n if (!shouldInitiateLogin) {\n return;\n }\n\n const ledgerConnectManager = LedgerConnectStateManager.getInstance();\n await ledgerConnectManager.init(anchor);\n };\n\n signTransactions = async (transactions: Transaction[]) => {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n await this.rebuildProvider();\n\n const signedTransactions = await signTransactions({\n transactions,\n handleSign: this.provider.signTransactions.bind(this.provider)\n });\n\n return signedTransactions;\n };\n\n signMessage = async (message: Message): Promise<Message> => {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n await this.rebuildProvider();\n\n const signedMessage = await signLedgerMessage({\n message,\n handleSignMessage: this.provider.signMessage.bind(this.provider)\n });\n\n return signedMessage;\n };\n\n /**\n * Makes sure the device is accessible and if not, tries to initialize a new provider\n */\n private readonly rebuildProvider = async () => {\n try {\n await this.provider?.getAddress(); // can communicate with device\n } catch (_err) {\n try {\n const { ledgerProvider } = await getLedgerProvider({\n shouldInitProvider: true\n });\n this.provider = ledgerProvider;\n } catch (error) {\n createCustomToast({\n toastId: 'ledger-provider-rebuild-error',\n duration: CANCEL_TRANSACTION_TOAST_DEFAULT_DURATION,\n icon: ToastIconsEnum.times,\n iconClassName: 'warning',\n message: 'Unlock your device & open the MultiversX App',\n title: 'Ledger unavailable'\n });\n throw error;\n }\n }\n };\n}\n", "import { DappProvider } from 'providers/DappProvider';\nimport {\n getAccountProvider,\n setAccountProvider\n} from 'providers/helpers/accountProvider';\nimport { LedgerProviderStrategy } from 'providers/strategies/LedgerProviderStrategy/LedgerProviderStrategy';\nimport { ProviderTypeEnum } from 'providers/types/providerFactory.types';\nimport { isLoggedInSelector, loginInfoSelector } from 'store/selectors';\nimport { isSidePanelOpenSelector } from 'store/selectors/uiSelectors';\nimport { getState, getStore } from 'store/store';\nimport { ToastIconsEnum } from '../ToastManager/helpers/getToastDataStateByStatus';\nimport { ToastManager } from '../ToastManager/ToastManager';\n\nconst LEDGER_IDLE_STATE_CHECK_INTERVAL = 30_000;\nconst LEDGER_IDLE_STATE_RECONNECT_INTERVAL = 5_000;\nconst RECONNECT_SUCCESS_DURATION = 3000;\n\nexport class LedgerIdleStateManager {\n private static instance: LedgerIdleStateManager;\n private store = getStore();\n private connectionCheckInterval: ReturnType<typeof setInterval> | null = null;\n private recreateProviderInterval: ReturnType<typeof setInterval> | null =\n null;\n\n public static getInstance(): LedgerIdleStateManager {\n if (!LedgerIdleStateManager.instance) {\n LedgerIdleStateManager.instance = new LedgerIdleStateManager();\n }\n return LedgerIdleStateManager.instance;\n }\n\n private constructor() {}\n\n public init = async () => {\n this.startCheckConnectionLoop();\n };\n\n private readonly shouldCheckConnection = (): boolean => {\n const state = this.store.getState();\n const { providerType } = loginInfoSelector(state);\n const isLoggedIn = isLoggedInSelector(state);\n return Boolean(providerType === ProviderTypeEnum.ledger && isLoggedIn);\n };\n\n private readonly startCheckConnectionLoop = () => {\n if (this.connectionCheckInterval) {\n return;\n }\n\n this.connectionCheckInterval = setInterval(async () => {\n const isSigningProcess = isSidePanelOpenSelector(getState());\n\n if (!this.shouldCheckConnection() || isSigningProcess) {\n return;\n }\n\n try {\n const ledgerProvider = getAccountProvider().getProvider();\n await ledgerProvider.getAddress();\n } catch (_error) {\n ToastManager.getInstance().createCustomToast({\n toastId: 'ledger-provider-idle-warning',\n icon: ToastIconsEnum.times,\n iconClassName: 'warning',\n message: 'Unlock your device to continue signing transactions',\n title: 'Ledger disconnected'\n });\n this.reset();\n if (this.recreateProviderInterval) {\n return;\n }\n this.recreateProviderInterval = setInterval(\n this.reconnectProvider,\n LEDGER_IDLE_STATE_RECONNECT_INTERVAL\n );\n }\n }, LEDGER_IDLE_STATE_CHECK_INTERVAL);\n };\n\n private readonly reconnectProvider = async () => {\n if (!this.shouldCheckConnection()) {\n return;\n }\n\n try {\n const createdProvider = new LedgerProviderStrategy({\n shouldInitProvider: true\n });\n\n await createdProvider.init();\n\n const dappProvider = new DappProvider(createdProvider);\n createdProvider.getType = () => ProviderTypeEnum.ledger;\n setAccountProvider(dappProvider);\n\n this.reset();\n clearInterval(this.recreateProviderInterval ?? 0);\n this.recreateProviderInterval = null;\n\n ToastManager.getInstance().createCustomToast({\n toastId: 'ledger-provider-idle-warning',\n duration: RECONNECT_SUCCESS_DURATION,\n icon: ToastIconsEnum.check,\n iconClassName: 'success',\n message: 'Your device is ready to sign transactions',\n title: 'Ledger reconnected'\n });\n this.startCheckConnectionLoop();\n } catch (_err) {\n console.log('Unable to reconnect to Ledger');\n }\n };\n\n public reset = () => {\n clearInterval(this.connectionCheckInterval ?? 0);\n this.connectionCheckInterval = null;\n };\n}\n", "import { providerLabels } from 'constants/providerFactory.constants';\nimport { Message, Transaction } from 'lib/sdkCore';\nimport { IDAppProviderAccount } from 'lib/sdkDappUtils';\nimport { CrossWindowProvider } from 'lib/sdkWebWalletCrossWindowProvider';\nimport {\n ProviderTypeEnum,\n ProviderType\n} from 'providers/types/providerFactory.types';\nimport { networkSelector } from 'store/selectors/networkSelectors';\nimport { getState } from 'store/store';\nimport { ProviderErrorsEnum } from 'types/provider.types';\nimport { BaseProviderStrategy } from '../BaseProviderStrategy/BaseProviderStrategy';\nimport { signMessage } from '../helpers/signMessage/signMessage';\nimport { guardTransactions } from '../helpers/signTransactions/helpers/guardTransactions/guardTransactions';\n\ntype CrossWindowProviderProps = {\n address?: string;\n walletAddress?: string;\n};\n\nexport class CrossWindowProviderStrategy extends BaseProviderStrategy {\n private readonly provider: CrossWindowProvider;\n private readonly walletAddress?: string;\n\n constructor(config?: CrossWindowProviderProps) {\n super(config?.address);\n this.walletAddress = config?.walletAddress;\n this.provider = CrossWindowProvider.getInstance();\n this._login = this.provider.login.bind(this.provider);\n }\n\n async init(): Promise<boolean> {\n this.initializeAddress();\n return this.initializeProvider();\n }\n\n private async initializeProvider() {\n const network = networkSelector(getState());\n\n const isProviderInitialized = await this.provider.init();\n\n this.provider.setWalletUrl(this.walletAddress ?? network.walletAddress);\n\n if (this.address) {\n this.provider.setAddress(this.address);\n }\n\n return isProviderInitialized;\n }\n\n logout(): Promise<boolean> {\n return this.provider.logout();\n }\n\n getType(): ProviderType {\n return ProviderTypeEnum.crossWindow;\n }\n\n getAddress(): Promise<string | undefined> {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n return this.provider.getAddress();\n }\n\n setAccount(account: IDAppProviderAccount): void {\n return this.provider.setAccount(account);\n }\n\n isInitialized(): boolean {\n return this.provider.isInitialized();\n }\n\n cancelAction = async () => {\n this.provider.cancelAction();\n };\n\n signTransactions = async (transactions: Transaction[]) => {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n const { onClose, manager } = await this.initSignState();\n\n try {\n const signedTransactions: Transaction[] =\n (await this.provider.signTransactions(transactions)) ?? [];\n\n const optionallyGuardedTransactions =\n await guardTransactions(signedTransactions);\n\n return optionallyGuardedTransactions;\n } catch (error) {\n await onClose({ shouldCancelAction: true });\n\n throw error;\n } finally {\n manager.closeUI();\n }\n };\n\n signMessage = async (message: Message) => {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n const signedMessage = await signMessage({\n message,\n handleSignMessage: this.provider.signMessage.bind(this.provider),\n cancelAction: this.cancelAction,\n providerType: providerLabels.crossWindow\n });\n\n return signedMessage;\n };\n}\n", "import { ExtensionProvider } from '@multiversx/sdk-extension-provider/out/extensionProvider';\nimport { providerLabels } from 'constants/providerFactory.constants';\nimport { Message, Transaction } from 'lib/sdkCore';\nimport { IDAppProviderAccount } from 'lib/sdkDappUtils';\nimport {\n ProviderTypeEnum,\n ProviderType\n} from 'providers/types/providerFactory.types';\nimport { ProviderErrorsEnum } from 'types/provider.types';\nimport { BaseProviderStrategy } from '../BaseProviderStrategy/BaseProviderStrategy';\nimport { signMessage } from '../helpers/signMessage/signMessage';\n\nexport class ExtensionProviderStrategy extends BaseProviderStrategy {\n private readonly provider: ExtensionProvider;\n\n constructor(address?: string) {\n super(address);\n this.provider = ExtensionProvider.getInstance();\n this._login = this.provider.login.bind(this.provider);\n }\n\n async init(): Promise<boolean> {\n this.initializeAddress();\n return this.initializeProvider();\n }\n\n private async initializeProvider() {\n const initialized = await this.provider.init();\n\n if (this.address) {\n this.setAccount({ address: this.address });\n }\n\n return initialized;\n }\n\n getAddress(): Promise<string | undefined> {\n return this.provider.getAddress();\n }\n\n setAccount(account: IDAppProviderAccount): void {\n return this.provider.setAccount(account);\n }\n\n isInitialized(): boolean {\n return this.provider.isInitialized();\n }\n\n logout(): Promise<boolean> {\n return this.provider.logout();\n }\n\n getType(): ProviderType {\n return ProviderTypeEnum.extension;\n }\n\n cancelAction = async () => {\n this.provider.cancelAction();\n };\n\n signTransactions = async (transactions: Transaction[]) => {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n const { manager, onClose } = await this.initSignState();\n\n try {\n const signedTransactions: Transaction[] =\n (await this.provider.signTransactions(transactions)) ?? [];\n\n return signedTransactions;\n } catch (error) {\n await onClose({ shouldCancelAction: false });\n throw error;\n } finally {\n manager.closeUI();\n }\n };\n\n signMessage = async (message: Message) => {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n const signedMessage = await signMessage({\n message,\n handleSignMessage: this.provider.signMessage.bind(this.provider),\n cancelAction: this.cancelAction,\n providerType: providerLabels.extension\n });\n\n return signedMessage;\n };\n}\n", "import { IframeLoginTypes } from '@multiversx/sdk-web-wallet-iframe-provider/out/constants';\n\nimport { providerLabels } from 'constants/providerFactory.constants';\nimport { Message, Transaction } from 'lib/sdkCore';\nimport { IDAppProviderAccount } from 'lib/sdkDappUtils';\nimport { IframeProvider } from 'lib/sdkWebWalletIframeProvider';\nimport {\n ProviderTypeEnum,\n ProviderType\n} from 'providers/types/providerFactory.types';\nimport { networkSelector } from 'store/selectors/networkSelectors';\nimport { getState } from 'store/store';\nimport { ProviderErrorsEnum } from 'types/provider.types';\nimport { IframeProviderType } from './types';\nimport { BaseProviderStrategy } from '../BaseProviderStrategy/BaseProviderStrategy';\nimport { signMessage } from '../helpers/signMessage/signMessage';\n\ntype IframeProviderStrategyType =\n | typeof ProviderTypeEnum.passkey\n | typeof ProviderTypeEnum.metamask;\n\nconst IFRAME_PROVIDER_MAP: Record<\n IframeLoginTypes,\n IframeProviderStrategyType\n> = {\n passkey: ProviderTypeEnum.passkey,\n metamask: ProviderTypeEnum.metamask\n};\n\nexport class IframeProviderStrategy extends BaseProviderStrategy {\n private readonly provider: IframeProvider;\n private readonly type: IframeLoginTypes;\n private walletUrl: string;\n\n constructor({ type, address, walletUrl }: IframeProviderType) {\n super(address);\n this.type = type;\n this.walletUrl = walletUrl ?? '';\n this.provider = IframeProvider.getInstance();\n this._login = this.provider.login.bind(this.provider);\n }\n\n init(): Promise<boolean> {\n this.initializeAddress();\n this.initializeWalletUrl();\n return this.initializeProvider();\n }\n\n private initializeWalletUrl() {\n if (this.walletUrl) {\n return;\n }\n\n const network = networkSelector(getState());\n\n if (!network.iframeWalletAddress) {\n throw new Error('Invalid walletUrl');\n }\n\n this.walletUrl = network.iframeWalletAddress;\n }\n\n private async initializeProvider() {\n await this.provider.init();\n\n if (this.address) {\n this.setAccount({ address: this.address });\n }\n\n this.provider.setLoginType(this.type);\n this.provider.setWalletUrl(this.walletUrl);\n\n return true;\n }\n\n logout(): Promise<boolean> {\n return this.provider.logout();\n }\n\n getType(): ProviderType {\n return IFRAME_PROVIDER_MAP[this.type];\n }\n\n getAddress(): Promise<string | undefined> {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n return this.provider.getAddress();\n }\n\n setAccount(account: IDAppProviderAccount): void {\n this.provider.setAccount(account);\n }\n\n isInitialized(): boolean {\n return this.provider.isInitialized();\n }\n\n cancelAction = async () => {\n this.provider.cancelAction();\n };\n\n signTransactions = async (transactions: Transaction[]) => {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n const { manager, onClose } = await this.initSignState();\n\n try {\n const signedTransactions: Transaction[] =\n await this.provider.signTransactions(transactions);\n\n return signedTransactions;\n } catch (error) {\n await onClose({ shouldCancelAction: true });\n throw error;\n } finally {\n manager.closeUI();\n }\n };\n\n signMessage = async (message: Message) => {\n if (!this.provider || !this.type) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n const signedMessage = await signMessage({\n message,\n handleSignMessage: this.provider.signMessage.bind(this.provider),\n cancelAction: this.cancelAction,\n providerType: providerLabels[this.type]\n });\n\n return signedMessage;\n };\n}\n", "import {\n SessionEventTypes,\n SessionTypes,\n OptionalOperation\n} from '@multiversx/sdk-wallet-connect-provider/out';\nimport { providerLabels } from 'constants/providerFactory.constants';\nimport { fallbackWalletConnectConfigurations } from 'constants/walletConnect.constants';\nimport { Message, Transaction } from 'lib/sdkCore';\nimport { IDAppProviderAccount } from 'lib/sdkDappUtils';\nimport { WalletConnectStateManager } from 'managers/internal/WalletConnectStateManager/WalletConnectStateManager';\nimport { getIsLoggedIn } from 'methods/account/getIsLoggedIn';\nimport {\n ProviderTypeEnum,\n ProviderType\n} from 'providers/types/providerFactory.types';\nimport { logoutAction } from 'store/actions';\nimport { chainIdSelector, nativeAuthConfigSelector } from 'store/selectors';\nimport { getState } from 'store/store';\nimport { ProviderErrorsEnum } from 'types/provider.types';\nimport {\n WalletConnectOptionalMethodsEnum,\n WalletConnectV2Provider\n} from 'utils/walletconnect/__sdkWalletconnectProvider';\nimport { WalletConnectV2Error, WalletConnectConfig } from './types';\nimport { BaseProviderStrategy } from '../BaseProviderStrategy/BaseProviderStrategy';\nimport { signMessage } from '../helpers/signMessage/signMessage';\n\nconst dappMethods: string[] = [\n WalletConnectOptionalMethodsEnum.CANCEL_ACTION,\n WalletConnectOptionalMethodsEnum.SIGN_LOGIN_TOKEN\n];\n\ntype WalletConnectProviderStrategyConfigType = WalletConnectConfig & {\n anchor?: HTMLElement;\n};\n\nexport class WalletConnectProviderStrategy extends BaseProviderStrategy {\n private provider: WalletConnectV2Provider | null = null;\n private readonly config: WalletConnectProviderStrategyConfigType;\n private methods: string[] = [];\n private _approval: (() => Promise<SessionTypes.Struct>) | null = null;\n protected cancelActionAbortController: AbortController | null = null;\n\n constructor(config: WalletConnectProviderStrategyConfigType) {\n super();\n this.config = config;\n }\n\n async init(): Promise<boolean> {\n try {\n await this.initializeProvider();\n } catch {\n return false;\n }\n\n return true;\n }\n\n logout(): Promise<boolean> {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n return this.provider.logout();\n }\n\n getType(): ProviderType {\n return ProviderTypeEnum.walletConnect;\n }\n\n getAddress(): Promise<string | undefined> {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n return Promise.resolve(this.provider.getAddress());\n }\n\n setAccount(account: IDAppProviderAccount): void {\n return this.provider?.setAccount(account);\n }\n\n isInitialized(): boolean {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n return this.provider.isInitialized();\n }\n\n private async initializeProvider() {\n await this.initWalletConnectManager();\n\n if (!this.config) {\n throw new Error(WalletConnectV2Error.invalidConfig);\n }\n\n const { walletConnectProvider, dappMethods: dAppMethods } =\n await this.createWalletConnectProvider(this.config);\n\n this.provider = walletConnectProvider;\n this.methods = dAppMethods;\n\n const { uri = '', approval } = await this.provider.connect({\n methods: this.methods\n });\n\n const walletConnectDeepLink =\n this.config.walletConnectDeepLink ??\n fallbackWalletConnectConfigurations.walletConnectDeepLink;\n\n this._approval = approval;\n const walletConnectManager = WalletConnectStateManager.getInstance();\n walletConnectManager.updateData({\n wcURI: uri,\n walletConnectDeepLink: `${walletConnectDeepLink}?wallet-connect=${encodeURIComponent(uri)}`\n });\n }\n\n private async initWalletConnectManager() {\n const shouldInitiateLogin = !getIsLoggedIn();\n\n if (!shouldInitiateLogin) {\n return;\n }\n\n const walletConnectManager = WalletConnectStateManager.getInstance();\n await walletConnectManager.init(this.config?.anchor);\n }\n\n private async createWalletConnectProvider(config: WalletConnectConfig) {\n const isLoggedIn = getIsLoggedIn();\n const chainId = chainIdSelector(getState());\n const nativeAuthConfig = nativeAuthConfigSelector(getState());\n\n if (nativeAuthConfig) {\n dappMethods.push(WalletConnectOptionalMethodsEnum.SIGN_NATIVE_AUTH_TOKEN);\n }\n\n if (!config?.walletConnectV2ProjectId) {\n throw new Error(WalletConnectV2Error.invalidConfig);\n }\n\n const handleOnLogin = () => {};\n\n const handleOnLogout = () => {\n logoutAction();\n };\n\n const handleOnEvent = (_event: SessionEventTypes['event']) => {};\n\n const providerHandlers = {\n onClientLogin: handleOnLogin,\n onClientLogout: handleOnLogout,\n onClientEvent: handleOnEvent\n };\n\n try {\n const {\n walletConnectV2ProjectId,\n walletConnectV2Options = {},\n walletConnectV2RelayAddress = ''\n } = config;\n const walletConnectProvider = new WalletConnectV2Provider(\n providerHandlers,\n chainId,\n walletConnectV2RelayAddress,\n walletConnectV2ProjectId,\n walletConnectV2Options\n );\n\n await walletConnectProvider.init();\n\n return { walletConnectProvider, dappMethods };\n } catch (err) {\n console.error(WalletConnectV2Error.connectError, err);\n\n if (isLoggedIn) {\n await this.logout();\n }\n\n throw err;\n }\n }\n\n async login(options?: { token?: string }): Promise<{\n address: string;\n signature: string;\n }> {\n if (!this.provider) {\n throw new Error(\n 'Provider is not initialized. Call createProvider first.'\n );\n }\n\n const reconnect = async (): Promise<{\n address: string;\n signature: string;\n }> => {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n try {\n await this.provider.init();\n const walletConnectManager = WalletConnectStateManager.getInstance();\n\n const { uri = '', approval: wcApproval } = await this.provider.connect({\n methods: this.methods\n });\n\n const walletConnectDeepLink =\n this.config.walletConnectDeepLink ??\n fallbackWalletConnectConfigurations.walletConnectDeepLink;\n\n walletConnectManager.updateData({\n wcURI: uri,\n walletConnectDeepLink: `${walletConnectDeepLink}?wallet-connect=${encodeURIComponent(uri)}`\n });\n\n const providerInfo = await this.provider.login({\n approval: wcApproval,\n token: options?.token\n });\n\n const { address = '', signature = '' } = providerInfo ?? {};\n\n walletConnectManager.handleClose({ isLoginFinished: Boolean(address) });\n return { address, signature };\n } catch {\n return await reconnect();\n }\n };\n\n if (!this._approval) {\n throw new Error('Approval or login is not initialized');\n }\n\n try {\n const providerData = await this.provider.login({\n approval: this._approval.bind(this),\n token: options?.token\n });\n\n const { address = '', signature = '' } = providerData ?? {};\n\n const walletConnectManager = WalletConnectStateManager.getInstance();\n walletConnectManager.handleClose({ isLoginFinished: Boolean(address) });\n return { address, signature };\n } catch (error) {\n console.error(WalletConnectV2Error.userRejected, error);\n return await reconnect();\n }\n }\n\n signTransactions = async (transactions: Transaction[]) => {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n const { manager, onClose } = await this.initSignState();\n\n this.cancelActionAbortController = new AbortController();\n const signal = this.cancelActionAbortController.signal;\n\n try {\n const abortPromise = new Promise<never>((_, reject) => {\n signal.addEventListener('abort', () => {\n reject(new Error('cancelled by user'));\n });\n });\n\n const signedTransactions: Transaction[] = await Promise.race([\n this.provider.signTransactions(transactions),\n abortPromise\n ]);\n\n return signedTransactions;\n } catch (error) {\n await onClose({ shouldCancelAction: true });\n throw error;\n } finally {\n manager.closeUI();\n }\n };\n\n cancelAction = async () => {\n this.sendCustomRequest({\n method: WalletConnectOptionalMethodsEnum.CANCEL_ACTION,\n action: OptionalOperation.CANCEL_ACTION\n });\n\n this.cancelActionAbortController?.abort();\n };\n\n signMessage = async (message: Message) => {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n this.cancelActionAbortController = new AbortController();\n const signal = this.cancelActionAbortController.signal;\n\n const abortPromise = new Promise<never>((_, reject) => {\n signal.addEventListener('abort', () => {\n reject(new Error('cancelled by user'));\n });\n });\n\n const signedMessage = await Promise.race([\n signMessage({\n message,\n handleSignMessage: this.provider.signMessage.bind(this.provider),\n cancelAction: this.cancelAction,\n providerType: providerLabels.extension\n }),\n abortPromise\n ]);\n\n return signedMessage;\n };\n\n private async sendCustomRequest({\n action,\n method\n }: {\n action: OptionalOperation;\n method: WalletConnectOptionalMethodsEnum;\n }) {\n if (!this.provider) {\n throw new Error(ProviderErrorsEnum.notInitialized);\n }\n\n try {\n await this.provider.sendCustomRequest?.({\n request: {\n method,\n params: { action }\n }\n });\n } catch (error) {\n console.error(WalletConnectV2Error.actionError, error);\n }\n }\n}\n", "import { providerLabels } from 'constants/providerFactory.constants';\nimport { Message } from 'lib/sdkCore';\nimport { PendingTransactionsEventsEnum } from 'managers/internal/PendingTransactionsStateManager/types/pendingTransactions.types';\nimport { ProviderFactory } from 'providers/ProviderFactory';\nimport {\n ProviderType,\n ProviderTypeEnum,\n ICustomProvider\n} from 'providers/types/providerFactory.types';\nimport { SigningWarningsEnum } from 'types/enums.types';\nimport { getPendingTransactionsHandlers } from '../getPendingTransactionsHandlers';\n\ntype SignMessageWithModalPropsType<T> = {\n message: Message;\n handleSignMessage: (message: Message) => Promise<Message>;\n cancelAction?: () => Promise<T> | undefined;\n providerType: string;\n};\n\nconst isProviderType = (\n allProviders: ICustomProvider[],\n type: string\n): type is ProviderType =>\n allProviders.some((provider) => provider.type === type);\n\nexport async function signMessage<T>({\n message,\n handleSignMessage,\n cancelAction,\n providerType\n}: SignMessageWithModalPropsType<T>): Promise<Message> {\n const signedMsg = await new Promise<Awaited<Message>>(\n async (resolve, reject) => {\n const { manager, onClose } = await getPendingTransactionsHandlers({\n cancelAction\n });\n\n const allProviders = Object.values(ProviderFactory.customProviders);\n const allCustomProviderLabels = allProviders.reduce(\n (acc, provider) => {\n acc[provider.type] = provider.name;\n return acc;\n },\n {} as Record<ProviderType, string>\n );\n\n const allProviderLabels = {\n ...providerLabels,\n ...allCustomProviderLabels\n };\n\n const handleClose = async () => {\n await onClose({ shouldCancelAction: true });\n reject({ message: SigningWarningsEnum.cancelled });\n };\n\n manager.subscribeToEventBus(\n PendingTransactionsEventsEnum.CLOSE,\n handleClose\n );\n\n const providerKey = isProviderType(allProviders, providerType)\n ? providerType\n : ProviderTypeEnum.none;\n\n manager.updateData({\n name: allProviderLabels[providerKey],\n type: providerKey\n });\n\n try {\n const signedMessage = await handleSignMessage(message);\n resolve(signedMessage);\n } catch (err) {\n await onClose({ shouldCancelAction: true });\n reject(err);\n } finally {\n manager.closeUI();\n }\n }\n );\n return signedMsg;\n}\n", "import { providerLabels } from 'constants/providerFactory.constants';\nimport { Message } from 'lib/sdkCore';\nimport { getLedgerErrorCodes } from './getLedgerErrorCodes';\nimport { signMessage } from '../../helpers/signMessage/signMessage';\n\nexport async function signLedgerMessage({\n message,\n handleSignMessage\n}: {\n message: Message;\n handleSignMessage: (msg: Message) => Promise<Message>;\n}): Promise<Message> {\n try {\n const signedMessage = await signMessage({\n message,\n handleSignMessage: handleSignMessage,\n providerType: providerLabels.ledger\n });\n return signedMessage;\n } catch (error) {\n const { errorMessage } = getLedgerErrorCodes(error);\n throw errorMessage ? { message: errorMessage } : error;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["IframeLoginTypes", "LedgerProviderStrategy", "BaseProviderStrategy", "address", "anchor", "shouldInitProvider", "options", "signature", "authenticateLedgerAccount", "getIsLoggedIn", "LedgerConnectStateManager", "transactions", "signTransactions", "message", "signLedgerMessage", "ledgerProvider", "getLedgerProvider", "error", "createCustomToast", "ProviderTypeEnum", "account", "ledgerConnectManager", "ledgerConfig", "resolve", "reject", "initializeLedgerProvider", "LEDGER_IDLE_STATE_CHECK_INTERVAL", "LEDGER_IDLE_STATE_RECONNECT_INTERVAL", "RECONNECT_SUCCESS_DURATION", "LedgerIdleStateManager", "_LedgerIdleStateManager", "getStore", "state", "providerType", "loginInfoSelector", "isLoggedIn", "isLoggedInSelector", "ProviderTypeEnum", "isSigningProcess", "isSidePanelOpenSelector", "getState", "getAccountProvider", "ToastManager", "createdProvider", "LedgerProviderStrategy", "dappProvider", "DappProvider", "setAccountProvider", "CrossWindowProviderStrategy", "BaseProviderStrategy", "config", "transactions", "onClose", "manager", "signedTransactions", "guardTransactions", "error", "message", "signMessage", "providerLabels", "CrossWindowProvider", "network", "networkSelector", "getState", "isProviderInitialized", "ProviderTypeEnum", "account", "ExtensionProvider", "ExtensionProviderStrategy", "BaseProviderStrategy", "address", "transactions", "manager", "onClose", "error", "message", "signMessage", "providerLabels", "ExtensionProvider", "initialized", "account", "ProviderTypeEnum", "IFRAME_PROVIDER_MAP", "ProviderTypeEnum", "IframeProviderStrategy", "BaseProviderStrategy", "type", "address", "walletUrl", "transactions", "manager", "onClose", "error", "message", "signMessage", "providerLabels", "IframeProvider", "network", "networkSelector", "getState", "account", "OptionalOperation", "dappMethods", "WalletConnectOptionalMethodsEnum", "WalletConnectProviderStrategy", "BaseProviderStrategy", "config", "transactions", "manager", "onClose", "signal", "abortPromise", "_", "reject", "error", "OptionalOperation", "message", "signMessage", "providerLabels", "ProviderTypeEnum", "account", "walletConnectProvider", "dAppMethods", "uri", "approval", "walletConnectDeepLink", "fallbackWalletConnectConfigurations", "WalletConnectStateManager", "getIsLoggedIn", "isLoggedIn", "chainId", "chainIdSelector", "getState", "nativeAuthConfigSelector", "providerHandlers", "logoutAction", "_event", "walletConnectV2ProjectId", "walletConnectV2Options", "walletConnectV2RelayAddress", "WalletConnectV2Provider", "err", "options", "reconnect", "walletConnectManager", "wcApproval", "providerInfo", "address", "signature", "providerData", "action", "method", "ProviderFactory", "providers", "type", "anchor", "createdProvider", "ProviderTypeEnum", "ExtensionProviderStrategy", "CrossWindowProviderStrategy", "LedgerProviderStrategy", "LedgerIdleStateManager", "IframeProviderStrategy", "IframeLoginTypes", "walletConnectConfig", "walletConnectConfigSelector", "getState", "WalletConnectProviderStrategy", "WebviewProviderStrategy", "address", "getAddress", "customProvider", "dappProvider", "DappProvider", "setAccountProvider", "shouldClearInitiatedLogins", "clearInitiatedLogins", "getAccountProvider", "setProviderType", "isProviderType", "allProviders", "type", "provider", "signMessage", "message", "handleSignMessage", "cancelAction", "providerType", "resolve", "reject", "manager", "onClose", "getPendingTransactionsHandlers", "ProviderFactory", "allCustomProviderLabels", "acc", "allProviderLabels", "providerLabels", "handleClose", "providerKey", "ProviderTypeEnum", "signedMessage", "err", "signLedgerMessage", "message", "handleSignMessage", "signMessage", "providerLabels", "error", "errorMessage", "getLedgerErrorCodes"]
|
|
7
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as u}from"./chunk-TQA3JDNV.mjs";import{s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as u}from"./chunk-TQA3JDNV.mjs";import{s}from"./chunk-DWYHYJNY.mjs";import{e as a}from"./chunk-UERJ6AKK.mjs";function x(n){let e=s(),o=u(e),c=a(e),t=Object.keys(o).map(Number).reduce((r,m)=>{let i=o[m]?.transactions||[];return Math.max(r,...i.map(l=>l.nonce),0)},0);return t>0&&(t+=1),n==null?Math.max(t,c):Math.max(t,n.nonce,c)}export{x as a};
|
|
2
|
+
//# sourceMappingURL=chunk-72BFMMSI.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{d as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{d as s}from"./chunk-726BASBO.mjs";import{a as u}from"./chunk-SFAWPLJB.mjs";import{s as c}from"./chunk-DWYHYJNY.mjs";import{b as d}from"./chunk-SAAOQW7P.mjs";import{a as v}from"./chunk-6JSWL75O.mjs";import{a}from"./chunk-LJX4MW7B.mjs";var i=class i extends u{constructor(){super({uiTag:"mvx-unlock-panel",uiDataUpdateEvent:"OPEN"});this.initialData={providers:null,walletAddress:null};this.openUnlockPanel=async()=>{let{walletAddress:e}=d(c());this.data={providers:this.getProvidersList(),walletAddress:e},await this.openUI(),this.notifyDataUpdate()};this.setupEventListeners=async()=>{this.eventBus&&(this.subscribeToEventBus("LOGIN",this.handleLogin),this.subscribeToEventBus("CANCEL_LOGIN",this.handleCancelLogin),this.subscribeToEventBus("CLOSE",this.handleCloseUI))};this.handleCloseUI=async e=>{!e?.isLoginFinished&&i.onClose&&i.onClose(),this.closeUI()};this.handleLogin=async({type:e,anchor:o})=>{if(!i.loginHandler)throw new Error("Login callback not initialized. Please call `init()` first.");try{this.isSimpleLoginCallback(i.loginHandler)?(await(await s.create({type:e,anchor:o})).login(),i.loginHandler()):i.loginHandler({type:e,anchor:o}),await this.handleCloseUI({isLoginFinished:!0})}catch(t){console.error(t),this.eventBus?.publish("CANCEL_IN_PROVIDER",this.data)}};this.handleCancelLogin=async()=>{await s.destroy()};this.isSimpleLoginCallback=e=>e.length===0;this.data=this.initialData}static getInstance(){return i.instance||(i.instance=new i),i.instance}static init(e){return this.loginHandler=e.loginHandler,this.allowedProviders=e.allowedProviders,e.onClose&&(this.onClose=e.onClose),this.getInstance()}getProvidersList(){let e=s.customProviders,t=[...Object.values(a).filter(n=>![a.none,a.webview].includes(n)),...e.map(n=>n.type)],P=e.reduce((n,r)=>(n[r.type]=r.name,n),{}),l={...v,...P};return(i.allowedProviders?i?.allowedProviders.filter(n=>t.includes(n)):t).map(n=>{let r=e.find(g=>g.type===n);return r||{name:n in l?l[n]:n,type:n}})}};i.loginHandler=null,i.onClose=null,i.allowedProviders=null;var p=i;export{p as a};
|
|
2
|
+
//# sourceMappingURL=chunk-7HP3FIAW.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as o}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as o}from"./chunk-TPJ7KEUB.mjs";var i=String(o?.navigator?.userAgent),t=/^((?!chrome|android).)*safari/i.test(i),r=/firefox/i.test(i)&&/windows/i.test(i),n=t||r;export{t as a,n as b};
|
|
2
|
+
//# sourceMappingURL=chunk-7XW3S67Y.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-ZSJNTJKG.mjs";import{a as e}from"./chunk-LNCOC6DZ.mjs";import{a as i}from"./chunk-6JSWL75O.mjs";var a=class{constructor(o){this.address="";this._login=null;this.loginAbortController=null;this.cancelLogin=()=>{this.loginAbortController&&this.loginAbortController.abort(),this.cancelAction?.(),this.loginAbortController=null};this.loginOperation=async o=>{if(!this._login)throw new Error("Provider is not initialized.");let r=await this._login(o);if(!r?.address)throw new Error("Provider is not initialized.");return{...r,address:r.address,signature:r.signature??""}};this.initializeAddress=()=>{if(this.address)return;let o=e();o&&(this.address=o)};this.cancelAction=void 0;this.address=o??""}getAccount(){throw new Error("Method not implemented.")}signTransaction(o,r){throw new Error("Method not implemented.")}async login(o){if(!this._login)throw new Error("Provider is not initialized.");this.loginAbortController&&this.loginAbortController.abort();let r=new AbortController;this.loginAbortController=r;let t=r.signal;try{let n=new Promise((p,c)=>{t.addEventListener("abort",()=>{c(new Error("Login cancelled"))})}),l=await Promise.race([this.loginOperation(o),n]);return this.loginAbortController=null,l}catch(n){throw this.loginAbortController=null,n}}async initSignState(){let{onClose:o,manager:r}=await s({cancelAction:this.cancelAction?.bind(this)}),t=this.getType();return r.subscribeToEventBus("CLOSE_PENDING_TRANSACTIONS",o),r.updateData({name:i[t],type:t}),{onClose:o,manager:r}}};export{a};
|
|
2
|
+
//# sourceMappingURL=chunk-AH5RW56M.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as l}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as l}from"./chunk-6DI7XSHB.mjs";import{a}from"./chunk-YUFPUG5O.mjs";import{a as c}from"./chunk-77NCTJIH.mjs";var p="Check if the MultiversX App is open on Ledger";async function v({manager:e,resolve:n,reject:d,shouldInitProvider:s}){let i=!c(),t=()=>v({manager:e,resolve:n,reject:d,shouldInitProvider:s}),o=()=>d("Device unavailable");try{e?.updateAccountScreen({isLoading:!0}),e&&i&&e.subscribeToProviderInit({handleRetry:t,handleCancel:o});let r=await l({shouldInitProvider:s});e&&i&&e.unsubscribeFromProviderInit({handleRetry:t,handleCancel:o}),n(r)}catch(r){if(!i)throw r;let{errorMessage:u,defaultErrorMessage:g}=a(r);e?.updateConnectScreen({error:u??g??p}),e&&e.subscribeToProviderInit({handleRetry:t,handleCancel:o})}}export{v as a};
|
|
2
|
+
//# sourceMappingURL=chunk-BECHXPBC.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as i}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as i}from"./chunk-XEENI7BQ.mjs";import{a}from"./chunk-LNCOC6DZ.mjs";import{a as u}from"./chunk-KOA4KAE3.mjs";import{c as n}from"./chunk-JYIAIJ37.mjs";import{a as s}from"./chunk-TPJ7KEUB.mjs";var c=(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&&c(r,s.localStorage);try{return u(),n.forEach(g=>g()),n.clear(),i.closeConnectionRef?.(),await o.logout()}catch(e){return console.error("Logging out error:",e),!1}}export{L as a};
|
|
2
|
+
//# sourceMappingURL=chunk-BPKM2DQN.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as B}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as B}from"./chunk-LSBQBQSE.mjs";import{a as b}from"./chunk-KN26DF7H.mjs";import{a as k}from"./chunk-QXC4D3AC.mjs";import{a as D}from"./chunk-SUCBDFIP.mjs";import{a as I}from"./chunk-PHOF3Z5D.mjs";import{a as _}from"./chunk-RNWJHZLH.mjs";import{a as R}from"./chunk-YY724VZR.mjs";import{a as j}from"./chunk-URJQWHBM.mjs";import{a as A}from"./chunk-J7WJREOM.mjs";import{a as O}from"./chunk-TKZHFVMQ.mjs";import{s as x}from"./chunk-DWYHYJNY.mjs";import{b as v}from"./chunk-SAAOQW7P.mjs";import{a as G,c as U,f as F}from"./chunk-PJWJZHIS.mjs";import{a as w}from"./chunk-NTEMINYA.mjs";import{c as N}from"./chunk-MGFIOCA4.mjs";async function Dn({transactions:z=[],handleSign:H,guardTransactions:K=_}){let{account:{address:y,shard:h,username:E}}=B(),g=v(x()),C=O(),{allTransactions:r,parsedTransactionsByDataField:L}=R(z),p=[],n=A.getInstance();if(await n.openUI(),!n)throw new Error("Unable to establish connection with sign screens");let W=async()=>{await b(),n.closeUI()};return n.subscribeToEventBus("CLOSE_SIGN_TRANSACTIONS",W),new Promise(async(X,M)=>{let d=[],Y=await k({baseURL:g.apiAddress});n.notifyDataUpdate(),n.initializeGasPriceMap(r.map(a=>a.transaction));let l=Y?.price,t=0,T=async()=>{let c=r[t]?.transaction,i=Number(c.nonce);try{n.updateIsLoading(!0);let{commonData:o,tokenTransaction:e,fungibleTransaction:s}=await D({allTransactions:r,currentScreenIndex:t,egldLabel:C,network:g,gasPriceData:n.ppuMap[i],price:l,address:y,username:E,shard:h,signedIndexes:p,parsedTransactionsByDataField:L});e&&n.updateTokenTransaction(e),s&&n.updateNonFungibleTransaction(s.type,s),n.updateCommonData(o)}catch(o){throw console.error(`Error fetching common data for transaction at index ${t}:`,o),o}finally{n.updateIsLoading(!1)}},$=()=>{t>0&&(t--,T())},q=(a=0)=>{let i=r[t].transaction,o=Number(i.nonce);n.updateGasPriceMap({nonce:o,ppu:a}),n.updateCommonData({ppu:a});let e=i.toPlainObject(),s=I({transaction:e,gasPriceData:n.ppuMap[o]}),P=w.newFromPlainObject({...e,gasPrice:s}),u=j({transaction:P,price:l}),m=F({input:s.toString(),decimals:U,addCommas:!0,digits:G});n.updateCommonData({feeLimit:u.feeLimitFormatted,feeInFiatLimit:u.feeInFiatLimit,gasPrice:m,ppu:a})},J=async()=>{M(new Error("Transaction signing cancelled by user")),await b(),n.closeUI()},f=()=>{t<n.transactionsCount-1&&(t++,T())},Q=async()=>{let c=r[t].transaction,i=Number(c.nonce),{commonData:o}=await D({allTransactions:r,currentScreenIndex:t,egldLabel:C,network:g,gasPriceData:n.ppuMap[i],price:l,address:y,username:E,shard:h,signedIndexes:p,parsedTransactionsByDataField:L});if(!o.needsSigning)return p.push(t),f();let e=c.toPlainObject(),s=e.nonce,P=I({transaction:e,gasPriceData:n.ppuMap[s]}),u=w.newFromPlainObject({...e,gasPrice:P});try{let m=await H([u]);m&&(p.push(t),d.push(m[0]));let nn=t===r.length-1,tn=r.filter(S=>S.needsSigning),an=d.length===tn.length;if(nn&&an){let S=await K(d);return n.closeUI(),X(S)}f()}catch(m){n.closeUI(),M(m)}},V=new Map([["NEXT_SIGN_TRANSACTIONS",f],["CONFIRM_SIGN_TRANSACTIONS",Q],["CLOSE_SIGN_TRANSACTIONS",J],["BACK_SIGN_TRANSACTIONS",$],["SET_PPU_SIGN_TRANSACTIONS",q]]);function Z(){for(let[a,c]of V)n.subscribeToEventBus(a,c)}Z(),await T()})}export{Dn as a};
|
|
2
|
+
//# sourceMappingURL=chunk-CRC6EHJB.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-WKWVAY3B.mjs";async function g({originalLoginToken:i,extraInfoData:n,address:o}){let e=await t({loginToken:i,extraInfoData:n}),s=n.multisig||n.impersonate||o;return{address:e!=null?s:o,modifiedLoginToken:e}}export{g as a};
|
|
2
|
+
//# sourceMappingURL=chunk-DCOMKCXN.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as s,f as a}from"./chunk-UERJ6AKK.mjs";import{f as p}from"./chunk-VNLGNNIL.mjs";import{a as d,b as L}from"./chunk-NLRDRI7Q.mjs";import{a as k}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as s,f as a}from"./chunk-UERJ6AKK.mjs";import{f as p}from"./chunk-VNLGNNIL.mjs";import{a as d,b as L}from"./chunk-NLRDRI7Q.mjs";import{a as k}from"./chunk-HSIBZ2L5.mjs";import{a as v}from"./chunk-KRWR77QE.mjs";import{b as y}from"./chunk-A7FTKX2A.mjs";import{a as c,b as g}from"./chunk-WZGG2YKQ.mjs";import{a as m,b as f}from"./chunk-M7BM6QPB.mjs";import{a as T}from"./chunk-CYCS3K6Q.mjs";import{a as S,b as u}from"./chunk-VKEESSBI.mjs";import{a as x}from"./chunk-2DNGCNYM.mjs";import{a as I}from"./chunk-NB7A4C7L.mjs";import{c as l}from"./chunk-NTEMINYA.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=c,e.loginInfo=m,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=a(e),n=p(e),{address:i,publicKey:M}=s(e);if(i&&M!==new l(i).toHex()&&A(e),!t)return;if(n==null){w(H());return}let P=Date.now();n-P<0&&(w(null),o().setState(A))};var z=(e,t)=>{C(e)};var W=e=>{let t=J(V(h(N((...n)=>({network:x(...n),account:g(...n),loginInfo:f(...n),config:T(...n),transactions:L(...n),toasts:u(...n),cache:y(...n),ui:I(...n)})),{name:"sdk-dapp-store",storage:O(e)})));return t.subscribe(z),t},r,D=e=>{r=e},o=()=>(r||D(W(()=>new v)),r),pe=(e=k)=>{let t=W(e);return D(t),t},le=()=>o().getState();var me=e=>o().setState(({loginInfo:t})=>{t.providerType=e},!1,"setProviderType"),fe=e=>o().setState(({loginInfo:t})=>{t.tokenLogin=e},!1,"setTokenLogin"),Se=e=>o().setState(({loginInfo:t})=>{if(t.tokenLogin!=null){t.tokenLogin.loginToken=e;return}t.tokenLogin={loginToken:e}},!1,"setLoginToken"),ue=e=>o().setState(({loginInfo:t})=>{t?.tokenLogin!=null&&(t.tokenLogin.signature=e)},!1,"setTokenLoginSignature"),de=e=>o().setState(({loginInfo:t})=>{t.walletConnectLogin=e},!1,"setWalletConnectLogin"),Le=e=>o().setState(({loginInfo:t})=>{t.ledgerLogin=e},!1,"setLedgerLogin"),xe=e=>o().setState(({loginInfo:t})=>{t.isWalletConnectV2Initialized=e},!1,"setIsWalletConnectV2Initialized"),E=()=>o().setState(({loginInfo:e})=>{e.loginExpiresAt=null},!1,"removeLoginExpiresAt"),b=e=>o().setState(({loginInfo:t})=>{t.loginExpiresAt=e},!1,"addLoginExpiresAt");export{me as a,fe as b,Se as c,ue as d,de as e,Le as f,xe as g,E as h,b as i,A as j,H as k,w as l,C as m,z as n,W as o,D as p,o as q,pe as r,le as s};
|
|
2
|
+
//# sourceMappingURL=chunk-DWYHYJNY.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as o}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as o}from"./chunk-LNCOC6DZ.mjs";import{c as e,g as s}from"./chunk-NTEMINYA.mjs";async function m({message:r,provider:a,options:n}){let g=o(),i=new s({address:new e(g),data:r.data});return await a.signMessage(i,n)}export{m as a};
|
|
2
|
+
//# sourceMappingURL=chunk-G26BK7D7.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-TPJ7KEUB.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-HGZQIUMH.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-TPJ7KEUB.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-HQ3MXZM2.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-NQ2ACSWO.mjs";import o from"axios";var n="transactions/ppu";async function l(a,s){let r=`${e(s)}/${n}/${a}`;try{let{data:t}=await o.get(r);return t?{[a]:{lastBlock:t.lastBlock,fast:t.fast,faster:t.faster}}:null}catch(t){return console.error("Error fetching gas station metadata from:",r,t),null}}export{l as a};
|
|
2
|
+
//# sourceMappingURL=chunk-ILMJWCA5.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as I}from"./chunk-GDKW3NI7.mjs";import{a as l}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as I}from"./chunk-GDKW3NI7.mjs";import{a as l}from"./chunk-3Z2ACTV6.mjs";import{a as f}from"./chunk-TKZHFVMQ.mjs";import{j as m,k as d,l as p,n as u}from"./chunk-65L5EBBL.mjs";import{a as T}from"./chunk-X25IIGUZ.mjs";var q=async({toastList:S,transactionsSessions:g,account:o,existingCompletedTransactions:y=[]})=>{let n=[],a=[...y],r=l(),F=f();for(let t of S.transactionToasts){let e=g[t.toastId];if(!e?.status)continue;let{status:s,transactions:C,transactionsDisplayInfo:P}=e,x=await T({transactions:C,address:o.address,explorerAddress:r,egldLabel:F}),A=u(s),E=p(s),L=d(s),i=A||E||L,v=m(s),{startTime:R,endTime:b}=t;if(i&&a.some(h=>h.toastId===t.toastId))continue;let c=I({toastId:t.toastId,address:o.address,status:s,transactions:x,transactionsDisplayInfo:P,explorerAddress:r,startTime:R,endTime:b});i&&a.push(c),v&&n.push(c)}return{pendingTransactionToasts:n,completedTransactionToasts:a}};export{q as a};
|
|
2
|
+
//# sourceMappingURL=chunk-J6R5G7CE.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-SFAWPLJB.mjs";import{c as e}from"./chunk-MGFIOCA4.mjs";var o=class i extends s{constructor(){super({uiDataUpdateEvent:"DATA_UPDATE_SIGN_TRANSACTIONS",uiTag:"mvx-sign-transactions-panel"});this.addressesPerPage=10;this._ppuMap={};this.initialData={commonData:{transactionsCount:0,currentIndexToSign:0,egldLabel:"",currentIndex:0,ppuOptions:[],address:"",origin:""},tokenTransaction:null,nftTransaction:null,sftTransaction:null};this.data={...this.initialData}}static getInstance(){return i.instance||(i.instance=new i),i.instance}get transactionsCount(){return this.data.commonData.transactionsCount}initializeGasPriceMap(a){let t=0;a.filter(n=>n!=null).forEach(n=>{let r=n?Number(n.gasPrice):0;this.updateGasPriceMap({nonce:Number(n.nonce),ppu:t,initialGasPrice:r})}),this.updateCommonData({ppu:t})}updateGasPriceMap({nonce:a,ppu:t,initialGasPrice:n}){this._ppuMap[a]={...this._ppuMap[a],ppu:t},n&&(this._ppuMap[a].initialGasPrice=n)}updateCommonData(a){this.data.commonData={...this.data.commonData,...a},this.notifyDataUpdate()}updateIsLoading(a){this.data.isLoading=a,this.notifyDataUpdate()}updateTokenTransaction(a){this.data.tokenTransaction=a,this.data.sftTransaction=null,this.data.nftTransaction=null,this.notifyDataUpdate()}updateNonFungibleTransaction(a,t){switch(a){case"NonFungibleESDT":this.data.nftTransaction=t,this.data.tokenTransaction=null,this.data.sftTransaction=null;break;case"SemiFungibleESDT":this.data.sftTransaction=t,this.data.nftTransaction=null,this.data.tokenTransaction=null;break;default:break}this.notifyDataUpdate()}get currentScreenIndex(){return this.data.commonData.currentIndex}get ppuMap(){return this._ppuMap}async setupEventListeners(){this.eventBus&&this.subscribeToEventBus("CLOSE_SIGN_TRANSACTIONS",this.closeUI.bind(this))}};export{o as a};
|
|
2
|
+
//# sourceMappingURL=chunk-J7WJREOM.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-TPJ7KEUB.mjs";import{createJSONStorage as o}from"zustand/middleware";var r={persistReducersStorageType:"localStorage"},i=e?o(()=>e[r.persistReducersStorageType]):void 0,p=new Map,n=3e3;export{r as a,i as b,p as c,n as d};
|
|
2
|
+
//# sourceMappingURL=chunk-JYIAIJ37.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-SFAWPLJB.mjs";var e=class n extends t{constructor(){super({uiDataUpdateEvent:"DATA_UPDATE_PENDING_TRANSACTIONS",uiTag:"mvx-pending-transactions-panel"});this.initialData=null;this.data=this.initialData}static getInstance(){return n.instance||(n.instance=new n),n.instance}isPendingTransactionsOpen(){return this.isOpen}async setupEventListeners(){this.eventBus&&this.subscribeToEventBus("CLOSE_PENDING_TRANSACTIONS",this.closeUI.bind(this))}};export{e as a};
|
|
2
|
+
//# sourceMappingURL=chunk-K4MA6VJX.mjs.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a}from"./chunk-DLWDO7M6.mjs";import{d as v}from"./chunk-726BASBO.mjs";import{v as m}from"./chunk-R4PAEXYU.mjs";import{s as n}from"./chunk-DWYHYJNY.mjs";import{d as s}from"./chunk-VNLGNNIL.mjs";import{a as i}from"./chunk-LJX4MW7B.mjs";import{a as p}from"./chunk-5A2ZB2NK.mjs";async function g(){let t=a(),d=p(),r=s(n()),e=d||t?i.webview:r,c=Object.values(i).includes(r);if(r&&!c&&(e=r),!e)return;let o=await v.create({type:e});if(!o)throw new Error("Provider not found");(t||e===i.webview&&o.isInitialized())&&await o.login(),m(o)}export{g as a};
|
|
2
|
+
//# sourceMappingURL=chunk-KDOO7OCC.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/providers/helpers/restoreProvider.ts"],
|
|
4
|
+
"sourcesContent": ["import { isMobileWebview } from 'lib/sdkWebviewProvider';\nimport {\n ProviderBaseType,\n ProviderTypeEnum\n} from 'providers/types/providerFactory.types';\nimport { providerTypeSelector } from 'store/selectors';\nimport { getState } from 'store/store';\nimport { getIsInIframe } from 'utils/window/getIsInIframe';\nimport { setAccountProvider } from './accountProvider';\nimport { ProviderFactory } from '../ProviderFactory';\n\nexport async function restoreProvider() {\n const isMobileView = isMobileWebview();\n const isInIframe = getIsInIframe();\n const providerType = providerTypeSelector(getState());\n\n let type =\n isInIframe || isMobileView ? ProviderTypeEnum.webview : providerType;\n\n const isBaseProvider = Object.values(ProviderTypeEnum).includes(\n providerType as ProviderBaseType\n );\n // Check if provider exist and is not base\n const isCustomProvider = providerType && !isBaseProvider;\n\n // Prioritize customProvider if it serves as a provider inside an iframe\n if (isCustomProvider) {\n type = providerType;\n }\n\n if (!type) {\n return;\n }\n\n const provider = await ProviderFactory.create({\n type\n });\n\n if (!provider) {\n throw new Error('Provider not found');\n }\n\n /*\n Check if the app is running in webview and the provider is already initialized.\n - true: the app is embedded within another dApp (e.g., inside an iframe) and perform login using the provider.\n - false: the parent is not a dApp and proceed with initializing the current app as a standalone iframe.\n */\n if (\n isMobileView ||\n (type === ProviderTypeEnum.webview && provider.isInitialized())\n ) {\n await provider.login();\n }\n\n setAccountProvider(provider);\n}\n"],
|
|
5
|
+
"mappings": "0RAWA,eAAsBA,GAAkB,CACtC,IAAMC,EAAeC,EAAgB,EAC/BC,EAAaC,EAAc,EAC3BC,EAAeC,EAAqBC,EAAS,CAAC,EAEhDC,EACFL,GAAcF,EAAeQ,EAAiB,QAAUJ,EAEpDK,EAAiB,OAAO,OAAOD,CAAgB,EAAE,SACrDJ,CACF,EASA,GAPyBA,GAAgB,CAACK,IAIxCF,EAAOH,GAGL,CAACG,EACH,OAGF,IAAMG,EAAW,MAAMC,EAAgB,OAAO,CAC5C,KAAAJ,CACF,CAAC,EAED,GAAI,CAACG,EACH,MAAM,IAAI,MAAM,oBAAoB,GASpCV,GACCO,IAASC,EAAiB,SAAWE,EAAS,cAAc,IAE7D,MAAMA,EAAS,MAAM,EAGvBE,EAAmBF,CAAQ,CAC7B",
|
|
6
|
+
"names": ["restoreProvider", "isMobileView", "isMobileWebview", "isInIframe", "getIsInIframe", "providerType", "providerTypeSelector", "getState", "type", "ProviderTypeEnum", "isBaseProvider", "provider", "ProviderFactory", "setAccountProvider"]
|
|
7
|
+
}
|