@multiversx/sdk-dapp 5.0.13 → 5.1.0
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-2STEP3VA.mjs +2 -0
- package/out/__chunks__/{chunk-CJYTBE3E.mjs → chunk-3HADWDDI.mjs} +2 -2
- package/out/__chunks__/{chunk-QQAW7UC2.mjs → chunk-3L7HZ2SO.mjs} +2 -2
- package/out/__chunks__/{chunk-OMSCPNRR.mjs → chunk-4LYEVUGN.mjs} +2 -2
- package/out/__chunks__/{chunk-RM4VHHXR.mjs → chunk-5KVNYLOM.mjs} +2 -2
- package/out/__chunks__/{chunk-RM4VHHXR.mjs.map → chunk-5KVNYLOM.mjs.map} +2 -2
- package/out/__chunks__/{chunk-TOGQL2M5.mjs → chunk-66FC7DN2.mjs} +2 -2
- package/out/__chunks__/chunk-6A7TDVVR.mjs +2 -0
- package/out/__chunks__/{chunk-ROH2QHUK.mjs → chunk-6JRZP7XR.mjs} +2 -2
- package/out/__chunks__/{chunk-3F3QCMGL.mjs → chunk-6SNUC4WD.mjs} +2 -2
- package/out/__chunks__/{chunk-HCGAZMW2.mjs → chunk-77XEEKKC.mjs} +2 -2
- package/out/__chunks__/chunk-7CELSV4S.mjs +2 -0
- package/out/__chunks__/chunk-7CELSV4S.mjs.map +7 -0
- package/out/__chunks__/{chunk-BDXSVYER.mjs → chunk-7ZGMZIYA.mjs} +2 -2
- package/out/__chunks__/{chunk-HWO7E325.mjs → chunk-A4KMW3VA.mjs} +2 -2
- package/out/__chunks__/{chunk-5DEHHVDS.mjs → chunk-AE72PVLM.mjs} +2 -2
- package/out/__chunks__/{chunk-5JYNGKVQ.mjs → chunk-AKS4K5LK.mjs} +2 -2
- package/out/__chunks__/{chunk-X4CDTS57.mjs → chunk-AMSHQJ6K.mjs} +2 -2
- package/out/__chunks__/{chunk-CIVS2YDU.mjs → chunk-ARPLTX4I.mjs} +2 -2
- package/out/__chunks__/{chunk-BIIJSMXB.mjs → chunk-BFU632AR.mjs} +2 -2
- package/out/__chunks__/{chunk-HIUWEH2W.mjs → chunk-BNBD3WVN.mjs} +2 -2
- package/out/__chunks__/{chunk-OINVR4SF.mjs → chunk-BP7QTGW5.mjs} +2 -2
- package/out/__chunks__/{chunk-ROZAXUMC.mjs → chunk-BQX7MJR6.mjs} +2 -2
- package/out/__chunks__/{chunk-EC3CUSWI.mjs → chunk-BWYXCYFI.mjs} +2 -2
- package/out/__chunks__/chunk-CAHVJ3IF.mjs +2 -0
- package/out/__chunks__/{chunk-ZHOATTZ2.mjs → chunk-CDIHVT44.mjs} +2 -2
- package/out/__chunks__/{chunk-DX6OA75E.mjs → chunk-CGBCYY3B.mjs} +2 -2
- package/out/__chunks__/chunk-CJLUSPT2.mjs +2 -0
- package/out/__chunks__/chunk-CJLUSPT2.mjs.map +7 -0
- package/out/__chunks__/{chunk-JUSK5MVD.mjs → chunk-CK4X6HSF.mjs} +2 -2
- package/out/__chunks__/{chunk-BEPW7QRT.mjs → chunk-COTPJZL3.mjs} +2 -2
- package/out/__chunks__/chunk-D2JYGLAC.mjs +2 -0
- package/out/__chunks__/{chunk-JIXJ3S3H.mjs → chunk-D54LWE3V.mjs} +2 -2
- package/out/__chunks__/{chunk-FNYBJAH3.mjs → chunk-DNFWIYZH.mjs} +2 -2
- package/out/__chunks__/{chunk-NDUDQZDL.mjs → chunk-EB37CLFR.mjs} +2 -2
- package/out/__chunks__/{chunk-3YBH7N5W.mjs → chunk-EQBJVKBR.mjs} +2 -2
- package/out/__chunks__/{chunk-QO2DNBMF.mjs → chunk-EV4KV3JC.mjs} +2 -2
- package/out/__chunks__/{chunk-KEUKJKQV.mjs → chunk-FIG2TQL2.mjs} +2 -2
- package/out/__chunks__/{chunk-JUXIROQH.mjs → chunk-FLBKETEZ.mjs} +2 -2
- package/out/__chunks__/{chunk-7HGOYM67.mjs → chunk-FODKR5LN.mjs} +2 -2
- package/out/__chunks__/chunk-GTRD4HFY.mjs +2 -0
- package/out/__chunks__/{chunk-4IS7AY5Q.mjs.map → chunk-GTRD4HFY.mjs.map} +1 -1
- package/out/__chunks__/{chunk-BDOJEJNA.mjs → chunk-HVS56RA5.mjs} +2 -2
- package/out/__chunks__/{chunk-FFUT67H3.mjs → chunk-HXTDJ2E6.mjs} +2 -2
- package/out/__chunks__/{chunk-ZTQR4O4A.mjs → chunk-HZKGE7EY.mjs} +2 -2
- package/out/__chunks__/{chunk-3L6GBV7L.mjs → chunk-HZMRXLHX.mjs} +2 -2
- package/out/__chunks__/{chunk-WBEMK5QL.mjs → chunk-IXDSHQ6O.mjs} +2 -2
- package/out/__chunks__/chunk-JRC47VFQ.mjs +2 -0
- package/out/__chunks__/chunk-KCUBSEZI.mjs +2 -0
- package/out/__chunks__/chunk-KMG6WM6K.mjs +2 -0
- package/out/__chunks__/{chunk-TSETF6SY.mjs → chunk-KTJGX4HU.mjs} +2 -2
- package/out/__chunks__/{chunk-GQOTAVAR.mjs → chunk-L5CHO4VF.mjs} +2 -2
- package/out/__chunks__/{chunk-HBQQS6GA.mjs → chunk-LGAWIVRO.mjs} +2 -2
- package/out/__chunks__/{chunk-TVXFF2PG.mjs → chunk-LMJDCKJN.mjs} +2 -2
- package/out/__chunks__/{chunk-FQNOEYHK.mjs → chunk-LOCNDNZE.mjs} +2 -2
- package/out/__chunks__/{chunk-WXCST3O7.mjs → chunk-LYZ5P6TZ.mjs} +2 -2
- package/out/__chunks__/{chunk-IOTYH724.mjs → chunk-LZLJ6HJT.mjs} +2 -2
- package/out/__chunks__/{chunk-OIWRUY4C.mjs → chunk-M2DFHKKK.mjs} +2 -2
- package/out/__chunks__/{chunk-T3FY4DQE.mjs → chunk-M6WW53TK.mjs} +2 -2
- package/out/__chunks__/{chunk-T3FY4DQE.mjs.map → chunk-M6WW53TK.mjs.map} +1 -1
- package/out/__chunks__/chunk-M7CRSX65.mjs +2 -0
- package/out/__chunks__/{chunk-NLZHVYZR.mjs → chunk-MA5C5FRG.mjs} +2 -2
- package/out/__chunks__/chunk-MGOTSAGH.mjs +2 -0
- package/out/__chunks__/{chunk-57AGUNU6.mjs → chunk-MS44NLMW.mjs} +2 -2
- package/out/__chunks__/{chunk-534QBNPX.mjs → chunk-MUIRAORV.mjs} +2 -2
- package/out/__chunks__/{chunk-D5DHIEIM.mjs → chunk-MXKLHEGP.mjs} +2 -2
- package/out/__chunks__/{chunk-AGUGUYQS.mjs → chunk-NK5Y3RLY.mjs} +2 -2
- package/out/__chunks__/{chunk-YNXPGS77.mjs → chunk-NTOY6GTP.mjs} +2 -2
- package/out/__chunks__/chunk-NZYB675D.mjs +2 -0
- package/out/__chunks__/{chunk-X6MN67NW.mjs → chunk-O7LCTC4K.mjs} +2 -2
- package/out/__chunks__/chunk-O7LCTC4K.mjs.map +7 -0
- package/out/__chunks__/chunk-OIIBPMNU.mjs +2 -0
- package/out/__chunks__/chunk-PGCTCWAW.mjs +2 -0
- package/out/__chunks__/{chunk-WSBN47MX.mjs.map → chunk-PGCTCWAW.mjs.map} +2 -2
- package/out/__chunks__/{chunk-JIF5QHA5.mjs → chunk-PIS56ZD4.mjs} +2 -2
- package/out/__chunks__/chunk-PPMUAFM4.mjs +2 -0
- package/out/__chunks__/{chunk-WJHF6NNO.mjs → chunk-Q3C46OSS.mjs} +2 -2
- package/out/__chunks__/chunk-QI4FCSOB.mjs +2 -0
- package/out/__chunks__/{chunk-44IN6A4I.mjs → chunk-R2EQDN33.mjs} +2 -2
- package/out/__chunks__/{chunk-NNBLC3DP.mjs → chunk-R32N5WCS.mjs} +2 -2
- package/out/__chunks__/{chunk-LYUN4G56.mjs → chunk-R43WJEH6.mjs} +2 -2
- package/out/__chunks__/{chunk-PFMOMLPA.mjs → chunk-RGFZEURF.mjs} +2 -2
- package/out/__chunks__/{chunk-7TUX3TKQ.mjs → chunk-RMARAUR3.mjs} +2 -2
- package/out/__chunks__/chunk-RW55WHHB.mjs +2 -0
- package/out/__chunks__/{chunk-3WNAFMEK.mjs → chunk-SHKZVFEF.mjs} +2 -2
- package/out/__chunks__/chunk-SK4EBR2Z.mjs +2 -0
- package/out/__chunks__/{chunk-ZLE5VUWG.mjs → chunk-SLOQOCEU.mjs} +2 -2
- package/out/__chunks__/chunk-SUBC3H4J.mjs +2 -0
- package/out/__chunks__/{chunk-FKBLKOLI.mjs.map → chunk-SUBC3H4J.mjs.map} +2 -2
- package/out/__chunks__/{chunk-ZIMECN23.mjs → chunk-TA6TNNXH.mjs} +2 -2
- package/out/__chunks__/{chunk-KASFKR36.mjs → chunk-TSWPPFHW.mjs} +2 -2
- package/out/__chunks__/{chunk-6BJS5QNF.mjs → chunk-U2Z42SAP.mjs} +2 -2
- package/out/__chunks__/{chunk-EJV4GLIF.mjs → chunk-UEFAPILB.mjs} +2 -2
- package/out/__chunks__/{chunk-AL5D2VEW.mjs → chunk-VLYPDZLN.mjs} +2 -2
- package/out/__chunks__/{chunk-IFWUP3FX.mjs → chunk-WDMNEF3T.mjs} +2 -2
- package/out/__chunks__/{chunk-6RRVRDXX.mjs → chunk-X5HSYTDN.mjs} +2 -2
- package/out/__chunks__/{chunk-ZLS3BN2I.mjs → chunk-XCKTWIKV.mjs} +2 -2
- package/out/__chunks__/{chunk-N7UPPFCH.mjs → chunk-XGK3JR3Z.mjs} +2 -2
- package/out/__chunks__/{chunk-OD4ANAAQ.mjs → chunk-XHKNB4IP.mjs} +2 -2
- package/out/__chunks__/chunk-XNF5QLFW.mjs +2 -0
- package/out/__chunks__/{chunk-HPC5WEQQ.mjs → chunk-XSS5NOQJ.mjs} +2 -2
- package/out/__chunks__/chunk-YZV64TMH.mjs +2 -0
- package/out/__chunks__/chunk-ZI7JADBP.mjs +2 -0
- package/out/__chunks__/chunk-ZI7JADBP.mjs.map +7 -0
- package/out/__chunks__/{chunk-RRKNYQ6D.mjs → chunk-ZS4EBCWC.mjs} +2 -2
- package/out/__chunks__/{chunk-RRKNYQ6D.mjs.map → chunk-ZS4EBCWC.mjs.map} +2 -2
- package/out/__chunks__/chunk-ZUJ5KE7O.mjs +2 -0
- package/out/__chunks__/{chunk-UQ6DOBYK.mjs → chunk-ZZZCOFQ7.mjs} +2 -2
- package/out/apiCalls/account/getAccountFromApi.mjs +1 -1
- package/out/apiCalls/account/getScamAddressData.mjs +1 -1
- package/out/apiCalls/account/index.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/getPersistedToken.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/apiCalls/utils/axiosFetcher.mjs +1 -1
- package/out/apiCalls/utils/axiosInstance.cjs.map +2 -2
- package/out/apiCalls/utils/axiosInstance.mjs +1 -1
- package/out/apiCalls/utils/index.mjs +1 -1
- package/out/constants/browser.constants.mjs +1 -1
- package/out/constants/index.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.mjs +1 -1
- package/out/methods/initApp/websocket/initializeWebsocketConnection.mjs +1 -1
- package/out/methods/initApp/websocket/registerWebsocket.mjs +1 -1
- package/out/methods/loginInfo/getLoginInfo.mjs +1 -1
- package/out/methods/network/getEgldLabel.mjs +1 -1
- package/out/methods/network/getExplorerAddress.mjs +1 -1
- package/out/methods/network/getNetworkConfig.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/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.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.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.mjs +1 -1
- package/out/providers/helpers/accountProvider.mjs +1 -1
- package/out/providers/helpers/cancelCrossWindowAction.mjs +1 -1
- package/out/providers/helpers/restoreProvider.mjs +1 -1
- package/out/providers/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.cjs +1 -1
- package/out/providers/strategies/helpers/signMessage/signMessage.cjs.map +2 -2
- 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/getMultiEsdtTransferData/getMultiEsdtTransferData.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/getMultiEsdtTransferData/helpers/getTokenFromData.cjs +2 -2
- package/out/providers/strategies/helpers/signTransactions/helpers/getMultiEsdtTransferData/helpers/getTokenFromData.cjs.map +2 -2
- package/out/providers/strategies/helpers/signTransactions/helpers/getMultiEsdtTransferData/helpers/getTokenFromData.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/getMultiEsdtTransferData/helpers/parseMultiEsdtTransferDataForMultipleTransactions.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/guardTransactions/getTransactionsNeedGuardianSigning.cjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/guardTransactions/getTransactionsNeedGuardianSigning.cjs.map +2 -2
- package/out/providers/strategies/helpers/signTransactions/helpers/guardTransactions/getTransactionsNeedGuardianSigning.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/guardTransactions/guardTransactions.cjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/guardTransactions/guardTransactions.cjs.map +2 -2
- 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/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.cjs +1 -1
- package/out/store/actions/sharedActions/sharedActions.cjs.map +2 -2
- 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.cjs +1 -1
- package/out/store/middleware/logoutMiddleware.cjs.map +2 -2
- package/out/store/middleware/logoutMiddleware.mjs +1 -1
- package/out/store/storage/index.mjs +1 -1
- package/out/store/storage/storageCallback.mjs +1 -1
- package/out/store/store.cjs +3 -3
- package/out/store/store.cjs.map +2 -2
- package/out/store/store.mjs +1 -1
- package/out/utils/ComponentFactory.mjs +1 -1
- package/out/utils/account/fetchAccount.mjs +1 -1
- package/out/utils/account/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/getTokenFromData.cjs +2 -2
- package/out/utils/transactions/getInterpretedTransaction/helpers/getTokenFromData.cjs.map +2 -2
- package/out/utils/transactions/getInterpretedTransaction/helpers/getTokenFromData.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/getTransactionAsset.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/helpers/mapTransactionToListItem.mjs +1 -1
- package/out/utils/transactions/getTransactionsHistory/index.mjs +1 -1
- package/out/utils/transactions/index.mjs +1 -1
- package/out/utils/validation/index.mjs +1 -1
- package/out/utils/validation/isContract.cjs +1 -1
- package/out/utils/validation/isContract.cjs.map +2 -2
- package/out/utils/validation/isContract.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 +14 -14
- package/out/__chunks__/chunk-4IS7AY5Q.mjs +0 -2
- package/out/__chunks__/chunk-6FXEHNGW.mjs +0 -2
- package/out/__chunks__/chunk-73MKFMKP.mjs +0 -2
- package/out/__chunks__/chunk-76PSW6FH.mjs +0 -2
- package/out/__chunks__/chunk-76PSW6FH.mjs.map +0 -7
- package/out/__chunks__/chunk-BUHXFBUA.mjs +0 -2
- package/out/__chunks__/chunk-DTEI5SBP.mjs +0 -2
- package/out/__chunks__/chunk-ETSUQ2R4.mjs +0 -2
- package/out/__chunks__/chunk-FKBLKOLI.mjs +0 -2
- package/out/__chunks__/chunk-FM6JYAAR.mjs +0 -2
- package/out/__chunks__/chunk-FZ72N7LX.mjs +0 -2
- package/out/__chunks__/chunk-H3PQUL5M.mjs +0 -2
- package/out/__chunks__/chunk-HFEXCIZ2.mjs +0 -2
- package/out/__chunks__/chunk-LSKZWWBZ.mjs +0 -2
- package/out/__chunks__/chunk-O2ZZO4AS.mjs +0 -2
- package/out/__chunks__/chunk-O2ZZO4AS.mjs.map +0 -7
- package/out/__chunks__/chunk-OTHNSSYN.mjs +0 -2
- package/out/__chunks__/chunk-P6PCRGOG.mjs +0 -2
- package/out/__chunks__/chunk-RFBR7WI3.mjs +0 -2
- package/out/__chunks__/chunk-RVCCJBPE.mjs +0 -2
- package/out/__chunks__/chunk-UK5MEKBE.mjs +0 -2
- package/out/__chunks__/chunk-UK5MEKBE.mjs.map +0 -7
- package/out/__chunks__/chunk-V73SALVM.mjs +0 -2
- package/out/__chunks__/chunk-VTF5A3OJ.mjs +0 -2
- package/out/__chunks__/chunk-VVHC6HV6.mjs +0 -2
- package/out/__chunks__/chunk-WSBN47MX.mjs +0 -2
- package/out/__chunks__/chunk-X6MN67NW.mjs.map +0 -7
- package/out/__chunks__/chunk-YARUDMWQ.mjs +0 -2
- /package/out/__chunks__/{chunk-OTHNSSYN.mjs.map → chunk-2STEP3VA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-CJYTBE3E.mjs.map → chunk-3HADWDDI.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-QQAW7UC2.mjs.map → chunk-3L7HZ2SO.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OMSCPNRR.mjs.map → chunk-4LYEVUGN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-TOGQL2M5.mjs.map → chunk-66FC7DN2.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HFEXCIZ2.mjs.map → chunk-6A7TDVVR.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ROH2QHUK.mjs.map → chunk-6JRZP7XR.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-3F3QCMGL.mjs.map → chunk-6SNUC4WD.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HCGAZMW2.mjs.map → chunk-77XEEKKC.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-BDXSVYER.mjs.map → chunk-7ZGMZIYA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HWO7E325.mjs.map → chunk-A4KMW3VA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5DEHHVDS.mjs.map → chunk-AE72PVLM.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5JYNGKVQ.mjs.map → chunk-AKS4K5LK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-X4CDTS57.mjs.map → chunk-AMSHQJ6K.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-CIVS2YDU.mjs.map → chunk-ARPLTX4I.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-BIIJSMXB.mjs.map → chunk-BFU632AR.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HIUWEH2W.mjs.map → chunk-BNBD3WVN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OINVR4SF.mjs.map → chunk-BP7QTGW5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ROZAXUMC.mjs.map → chunk-BQX7MJR6.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-EC3CUSWI.mjs.map → chunk-BWYXCYFI.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ETSUQ2R4.mjs.map → chunk-CAHVJ3IF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZHOATTZ2.mjs.map → chunk-CDIHVT44.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-DX6OA75E.mjs.map → chunk-CGBCYY3B.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-JUSK5MVD.mjs.map → chunk-CK4X6HSF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-BEPW7QRT.mjs.map → chunk-COTPJZL3.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-LSKZWWBZ.mjs.map → chunk-D2JYGLAC.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-JIXJ3S3H.mjs.map → chunk-D54LWE3V.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FNYBJAH3.mjs.map → chunk-DNFWIYZH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-NDUDQZDL.mjs.map → chunk-EB37CLFR.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-3YBH7N5W.mjs.map → chunk-EQBJVKBR.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-QO2DNBMF.mjs.map → chunk-EV4KV3JC.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-KEUKJKQV.mjs.map → chunk-FIG2TQL2.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-JUXIROQH.mjs.map → chunk-FLBKETEZ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-7HGOYM67.mjs.map → chunk-FODKR5LN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-BDOJEJNA.mjs.map → chunk-HVS56RA5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FFUT67H3.mjs.map → chunk-HXTDJ2E6.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZTQR4O4A.mjs.map → chunk-HZKGE7EY.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-3L6GBV7L.mjs.map → chunk-HZMRXLHX.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-WBEMK5QL.mjs.map → chunk-IXDSHQ6O.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-V73SALVM.mjs.map → chunk-JRC47VFQ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-VVHC6HV6.mjs.map → chunk-KCUBSEZI.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-73MKFMKP.mjs.map → chunk-KMG6WM6K.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-TSETF6SY.mjs.map → chunk-KTJGX4HU.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-GQOTAVAR.mjs.map → chunk-L5CHO4VF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HBQQS6GA.mjs.map → chunk-LGAWIVRO.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-TVXFF2PG.mjs.map → chunk-LMJDCKJN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FQNOEYHK.mjs.map → chunk-LOCNDNZE.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-WXCST3O7.mjs.map → chunk-LYZ5P6TZ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-IOTYH724.mjs.map → chunk-LZLJ6HJT.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OIWRUY4C.mjs.map → chunk-M2DFHKKK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-VTF5A3OJ.mjs.map → chunk-M7CRSX65.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-NLZHVYZR.mjs.map → chunk-MA5C5FRG.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-H3PQUL5M.mjs.map → chunk-MGOTSAGH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-57AGUNU6.mjs.map → chunk-MS44NLMW.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-534QBNPX.mjs.map → chunk-MUIRAORV.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-D5DHIEIM.mjs.map → chunk-MXKLHEGP.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-AGUGUYQS.mjs.map → chunk-NK5Y3RLY.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-YNXPGS77.mjs.map → chunk-NTOY6GTP.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-6FXEHNGW.mjs.map → chunk-NZYB675D.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FZ72N7LX.mjs.map → chunk-OIIBPMNU.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-JIF5QHA5.mjs.map → chunk-PIS56ZD4.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-DTEI5SBP.mjs.map → chunk-PPMUAFM4.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-WJHF6NNO.mjs.map → chunk-Q3C46OSS.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-RFBR7WI3.mjs.map → chunk-QI4FCSOB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-44IN6A4I.mjs.map → chunk-R2EQDN33.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-NNBLC3DP.mjs.map → chunk-R32N5WCS.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-LYUN4G56.mjs.map → chunk-R43WJEH6.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-PFMOMLPA.mjs.map → chunk-RGFZEURF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-7TUX3TKQ.mjs.map → chunk-RMARAUR3.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-P6PCRGOG.mjs.map → chunk-RW55WHHB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-3WNAFMEK.mjs.map → chunk-SHKZVFEF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-YARUDMWQ.mjs.map → chunk-SK4EBR2Z.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZLE5VUWG.mjs.map → chunk-SLOQOCEU.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZIMECN23.mjs.map → chunk-TA6TNNXH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-KASFKR36.mjs.map → chunk-TSWPPFHW.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-6BJS5QNF.mjs.map → chunk-U2Z42SAP.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-EJV4GLIF.mjs.map → chunk-UEFAPILB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-AL5D2VEW.mjs.map → chunk-VLYPDZLN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-IFWUP3FX.mjs.map → chunk-WDMNEF3T.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-6RRVRDXX.mjs.map → chunk-X5HSYTDN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZLS3BN2I.mjs.map → chunk-XCKTWIKV.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-N7UPPFCH.mjs.map → chunk-XGK3JR3Z.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OD4ANAAQ.mjs.map → chunk-XHKNB4IP.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FM6JYAAR.mjs.map → chunk-XNF5QLFW.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HPC5WEQQ.mjs.map → chunk-XSS5NOQJ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-BUHXFBUA.mjs.map → chunk-YZV64TMH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-RVCCJBPE.mjs.map → chunk-ZUJ5KE7O.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-UQ6DOBYK.mjs.map → chunk-ZZZCOFQ7.mjs.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as ae}from"./chunk-G4Z3ZQR6.mjs";import{a as se}from"./chunk-M3YL36ZL.mjs";import{a as te}from"./chunk-JIXJ3S3H.mjs";import{a as U}from"./chunk-534QBNPX.mjs";import{a as ie}from"./chunk-DX6OA75E.mjs";import{a as re}from"./chunk-NLZHVYZR.mjs";import{a as I}from"./chunk-73MKFMKP.mjs";import{a as ee}from"./chunk-YUFPUG5O.mjs";import{a as de}from"./chunk-TOGQL2M5.mjs";import{a as p}from"./chunk-HPC5WEQQ.mjs";import{a as Z}from"./chunk-CJYTBE3E.mjs";import{a as ne}from"./chunk-FQNOEYHK.mjs";import{a as oe}from"./chunk-WSBN47MX.mjs";import{a as Q}from"./chunk-QJGFIK7H.mjs";import{b as J}from"./chunk-4Z3DZ2A3.mjs";import{b as C,c as Y}from"./chunk-NRXYSTRW.mjs";import{j as $,l as O,r as M,s as P,t as L}from"./chunk-ZLS3BN2I.mjs";import{a as y}from"./chunk-57AGUNU6.mjs";import{g as K}from"./chunk-CAA4VJRH.mjs";import{a as q}from"./chunk-H3PQUL5M.mjs";import{a as D}from"./chunk-4TBVQD27.mjs";import{a as X}from"./chunk-O2ZZO4AS.mjs";import{a as F,q as j,s as l}from"./chunk-76PSW6FH.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(!!I())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,P(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=se.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=[C.CANCEL_ACTION,C.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:C.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(!!I())return;await y.getInstance().init(this.config?.anchor)}async createWalletConnectProvider(e){let r=I(),t=V(l());if(H(l())&&le.push(C.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 de;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);P(t);let n=[o.crossWindow,o.metamask,o.passkey].includes(i);return ae(n?{skipLoginMethod:i}:null),t}static async destroy(){L().cancelLogin(),P(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 ae}from"./chunk-G4Z3ZQR6.mjs";import{a as se}from"./chunk-M3YL36ZL.mjs";import{a as te}from"./chunk-D54LWE3V.mjs";import{a as U}from"./chunk-MUIRAORV.mjs";import{a as ie}from"./chunk-CGBCYY3B.mjs";import{a as re}from"./chunk-MA5C5FRG.mjs";import{a as I}from"./chunk-KMG6WM6K.mjs";import{a as ee}from"./chunk-YUFPUG5O.mjs";import{a as de}from"./chunk-66FC7DN2.mjs";import{a as p}from"./chunk-XSS5NOQJ.mjs";import{a as Z}from"./chunk-3HADWDDI.mjs";import{a as ne}from"./chunk-LOCNDNZE.mjs";import{a as oe}from"./chunk-PGCTCWAW.mjs";import{a as Q}from"./chunk-QJGFIK7H.mjs";import{b as J}from"./chunk-4Z3DZ2A3.mjs";import{b as C,c as Y}from"./chunk-NRXYSTRW.mjs";import{j as $,l as O,r as M,s as P,t as L}from"./chunk-XCKTWIKV.mjs";import{a as y}from"./chunk-MS44NLMW.mjs";import{g as K}from"./chunk-CAA4VJRH.mjs";import{a as q}from"./chunk-MGOTSAGH.mjs";import{a as D}from"./chunk-4TBVQD27.mjs";import{a as X}from"./chunk-CJLUSPT2.mjs";import{a as F,q as j,s as l}from"./chunk-ZI7JADBP.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(!!I())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,P(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=se.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=[C.CANCEL_ACTION,C.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:C.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(!!I())return;await y.getInstance().init(this.config?.anchor)}async createWalletConnectProvider(e){let r=I(),t=V(l());if(H(l())&&le.push(C.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 de;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);P(t);let n=[o.crossWindow,o.metamask,o.passkey].includes(i);return ae(n?{skipLoginMethod:i}:null),t}static async destroy(){L().cancelLogin(),P(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-M6WW53TK.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
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 ProviderType,\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 = (\n [\n ProviderTypeEnum.crossWindow,\n ProviderTypeEnum.metamask,\n ProviderTypeEnum.passkey\n ] as readonly ProviderType[]\n ).includes(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 {\n ProviderType,\n ProviderTypeEnum,\n ICustomProvider\n} from 'providers/types/providerFactory.types';\nimport { SigningWarningsEnum } from 'types/enums.types';\nimport { getPendingTransactionsHandlers } from '../getPendingTransactionsHandlers';\nimport { ProviderFactory } from 'providers/ProviderFactory';\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"],
|
|
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 ProviderType,\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 = (\n [\n ProviderTypeEnum.crossWindow,\n ProviderTypeEnum.metamask,\n ProviderTypeEnum.passkey\n ] as readonly ProviderType[]\n ).includes(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
5
|
"mappings": "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",
|
|
6
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
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as g}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as g}from"./chunk-KMG6WM6K.mjs";import{a as f}from"./chunk-FRDR4A7Z.mjs";import{t as c}from"./chunk-XCKTWIKV.mjs";import{s as n}from"./chunk-ZI7JADBP.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=g(),d=u?.shouldInitProvider||!v,o=l(n()),t=a(n()),r=c(),i=new m,I=async()=>{let e=o?.index!=null;if(r instanceof m&&r.isInitialized())return e&&await r.setAddressIndex(o.index),r;if(d&&!await i.init())throw new Error("Failed to initialize Ledger Provider");return e&&await i.setAddressIndex(o.index),i};try{if(!d&&t)return{ledgerProvider:i,ledgerConfig:{version:t.version,dataEnabled:t.hasContractDataEnabled}};let e=await I(),s=await f(e);return{ledgerProvider:e,ledgerConfig:s}}catch(e){throw console.error("Could not initialize ledger app",e),e}}export{A as a};
|
|
2
|
+
//# sourceMappingURL=chunk-MA5C5FRG.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-TSWPPFHW.mjs";var n=class t extends e{constructor(){super({uiDataUpdateEvent:"DATA_UPDATE",uiTag:"mvx-wallet-connect"});this.initialData={wcURI:"",walletConnectDeepLink:""};this.data={...this.initialData}}static getInstance(){return t.instance||(t.instance=new t),t.instance}handleClose(a){a?.isLoginFinished||(this.anchor?this.anchor.dispatchEvent(new CustomEvent("ANCHOR_CLOSE",{composed:!1,bubbles:!1})):this.destroy())}async setupEventListeners(){this.eventBus&&(this.eventBus.subscribe("CLOSE",this.handleClose.bind(this)),this.eventBus.subscribe("UI_DISCONNECTED",this.destroy.bind(this)))}};export{n as a};
|
|
2
|
+
//# sourceMappingURL=chunk-MS44NLMW.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as i}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as i}from"./chunk-TSWPPFHW.mjs";var c=class n extends i{constructor(){super({uiDataUpdateEvent:"DATA_UPDATE",uiTag:"mvx-ledger-connect"});this.addressesPerPage=10;this.allAccounts=[];this.initialConnectScreenData={};this.connectScreenData={...this.initialConnectScreenData};this.initialAccountScreenData={accounts:this.allAccounts,startIndex:0,addressesPerPage:this.addressesPerPage,isLoading:!0};this.accountScreenData={...this.initialAccountScreenData};this.initialConfirmScreenData={selectedAddress:"",explorerLink:""};this.confirmScreenData={...this.initialConfirmScreenData};this.initialData={connectScreenData:this.initialConnectScreenData,accountScreenData:this.initialAccountScreenData,confirmScreenData:this.initialConfirmScreenData};this.data=this.getInitialData()}static getInstance(){return n.instance||(n.instance=new n),n.instance}updateAllAccounts(e){this.allAccounts=e,this.accountScreenData.accounts=e}updateStartIndex(e){this.accountScreenData.startIndex=e}updateConnectScreen(e){this.connectScreenData={...this.connectScreenData,...e},this.data.confirmScreenData=null,this.data.accountScreenData=null,this.data.connectScreenData=this.connectScreenData,this.notifyDataUpdate()}updateAccountScreen(e){this.accountScreenData={...this.accountScreenData,...e},this.data.confirmScreenData=null,this.data.accountScreenData=this.accountScreenData,this.notifyDataUpdate()}updateConfirmScreen(e){this.confirmScreenData={...this.confirmScreenData,...e},this.data.accountScreenData=null,this.data.confirmScreenData=this.confirmScreenData,this.notifyDataUpdate()}getAccountScreenData(){return this.data.accountScreenData}getConfirmScreenData(){return this.data.confirmScreenData}getAllAccounts(){return this.allAccounts}subscribeToProviderInit({handleRetry:e,handleCancel:t}){this.eventBus&&(this.eventBus.subscribe("CONNECT_DEVICE",e),this.eventBus.subscribe("CLOSE",t),this.eventBus.subscribe("UI_DISCONNECTED",this.destroy.bind(this)))}unsubscribeFromProviderInit({handleRetry:e,handleCancel:t}){this.eventBus&&(this.eventBus.unsubscribe("CONNECT_DEVICE",e),this.eventBus.unsubscribe("CLOSE",t),this.eventBus.unsubscribe("UI_DISCONNECTED",this.destroy.bind(this)))}subscribeToAuthEvents({handleCancel:e,handleAccessWallet:t,handleGoToPage:a}){this.eventBus&&(this.eventBus.subscribe("CLOSE",e),this.eventBus.subscribe("ACCESS_WALLET",t),this.eventBus.subscribe("GO_TO_PAGE",a))}unsubscribeFromAuthEvents({handleCancel:e,handleAccessWallet:t,handleGoToPage:a}){this.eventBus&&(this.eventBus.unsubscribe("CLOSE",e),this.eventBus.unsubscribe("ACCESS_WALLET",t),this.eventBus.unsubscribe("GO_TO_PAGE",a))}handleClose(){this.anchor?this.anchor?.dispatchEvent(new CustomEvent("ANCHOR_CLOSE",{composed:!1,bubbles:!1})):this.destroy()}resetData(){this.accountScreenData={...this.initialAccountScreenData},this.confirmScreenData={...this.initialConfirmScreenData},this.connectScreenData={...this.initialConnectScreenData},super.resetData()}async setupEventListeners(){this.eventBus&&this.eventBus.subscribe("CLOSE",this.handleClose.bind(this))}};export{c as a};
|
|
2
|
+
//# sourceMappingURL=chunk-MUIRAORV.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as o}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as o}from"./chunk-GTRD4HFY.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-MXKLHEGP.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as m}from"./chunk-54B3EIZC.mjs";import{a as T}from"./chunk-QJ7MRSGB.mjs";import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as m}from"./chunk-54B3EIZC.mjs";import{a as T}from"./chunk-QJ7MRSGB.mjs";import{a as e}from"./chunk-7CELSV4S.mjs";var C=({receiver:n,sender:a,senderAssets:l,receiverAssets:u,transactionAssets:s,showDefaultState:f=!1,status:r})=>{let i=n===a,I=i?e(a):e(n),g=T({senderAssets:l,receiverAssets:u,userIsReceiver:i}),[t]=s??[],p=s.length>1,S=t?.type==="NonFungibleESDT",o=t?.type==="SemiFungibleESDT",A=s?.every(d=>t&&d.assetTicker===t.assetTicker)??!1,F=m(r),c=r==="pending";return(c||F)&&!f?{icon:c?"faHourglass":"faTimes"}:p&&!A?{icon:"faCoins"}:t?.assetImage?{imageUrl:t.assetImage}:S||o?{text:o?"sft":"nft"}:I?{imageUrl:g||void 0}:null};export{C as a};
|
|
2
|
+
//# sourceMappingURL=chunk-NK5Y3RLY.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-U4ZCGUVE.mjs";import{c as o}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-U4ZCGUVE.mjs";import{c as o}from"./chunk-7CELSV4S.mjs";var u=(r,s=1)=>r?.length?r.reduce((e,{receiver:a,data:i})=>{let n=o({receiver:a,data:i??""});return n==null?e:e&&t({receiverAddress:n,senderShard:s})},!0):!0;export{u as a};
|
|
2
|
+
//# sourceMappingURL=chunk-NTOY6GTP.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{buildAxiosFetch as u}from"@lifeomic/axios-fetch";import i from"axios";var r=u(i),n=async(t,o)=>{if(!t.ok)throw new Error(`HTTP error! Status: ${t.status}`);let e=t.clone().json(),[c]=await Promise.all([e]);return{data:c,status:t.status,statusText:t.statusText,headers:t.headers,config:o}};async function
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{buildAxiosFetch as u}from"@lifeomic/axios-fetch";import i from"axios";var r=u(i),n=async(t,o)=>{if(!t.ok)throw new Error(`HTTP error! Status: ${t.status}`);let e=t.clone().json(),[c]=await Promise.all([e]);return{data:c,status:t.status,statusText:t.statusText,headers:t.headers,config:o}};async function d(t,o,s){try{let e=await r(t,{method:"POST",body:o?JSON.stringify(o):void 0,headers:{"Content-Type":"application/json",...s?.headers||{}},...s});return n(e,s)}catch(e){throw console.error("Fetch Error:",e),e}}async function h(t,o){try{let s=await r(t,o);if(!s.ok)throw new Error(`HTTP error! Status: ${s.status}`);return n(s,o)}catch(s){throw console.error("Fetch Error:",s),s}}async function R(t,o,s){try{let e=await r(t,{method:"PATCH",body:o?JSON.stringify(o):void 0,headers:s?.headers||{},...s});if(!e.ok)throw new Error(`HTTP error! Status: ${e.status}`);return n(e,s)}catch(e){throw console.error("Fetch Error:",e),e}}var a=i.create();a.get=h;a.post=d;a.patch=R;export{a};
|
|
2
|
+
//# sourceMappingURL=chunk-O7LCTC4K.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/apiCalls/utils/axiosInstance.ts"],
|
|
4
|
+
"sourcesContent": ["import { buildAxiosFetch } from '@lifeomic/axios-fetch';\nimport axios, { AxiosRequestConfig, AxiosResponse } from 'axios';\n\ntype RequestInit = {\n method?: string;\n headers?: Record<string, string>;\n body?: string;\n [key: string]: any;\n};\n\n// Needs to be used beacause an async call made after cross-window user interaction makes the dapp unresponsive\n\nconst fetch = buildAxiosFetch(axios);\n\nconst getFormattedAxiosResponse = async <T>(response: Response, config?: T) => {\n if (!response.ok) {\n throw new Error(`HTTP error! Status: ${response.status}`);\n }\n\n // Clone the response to be able to read it twice (for status and data)\n const clonedResponse = response.clone();\n\n // Parse the JSON body asynchronously\n const jsonPromise = clonedResponse.json();\n\n // Return the standardized response object\n const [responseData] = await Promise.all([jsonPromise]);\n return {\n data: responseData,\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n config\n };\n};\n\nasync function customPost<T = any, R = AxiosResponse<T, any>, D = any>(\n url: string,\n data?: D,\n config?: AxiosRequestConfig<D> | undefined\n): Promise<R> {\n try {\n const response = await fetch(url, {\n method: 'POST',\n body: data ? JSON.stringify(data) : undefined,\n headers: {\n 'Content-Type': 'application/json',\n ...(config?.headers || {})\n },\n ...config\n } as RequestInit);\n\n return getFormattedAxiosResponse(response, config) as unknown as Promise<R>;\n } catch (error) {\n console.error('Fetch Error:', error);\n throw error;\n }\n}\n\nasync function customGet<T = any, R = AxiosResponse<T, any>, D = any>(\n url: string,\n config?: AxiosRequestConfig<D> | undefined\n): Promise<R> {\n try {\n const response = await fetch(url, config as RequestInit);\n if (!response.ok) {\n throw new Error(`HTTP error! Status: ${response.status}`);\n }\n\n return getFormattedAxiosResponse(response, config) as unknown as Promise<R>;\n } catch (error) {\n console.error('Fetch Error:', error);\n throw error;\n }\n}\n\nasync function customPatch<T = any, R = AxiosResponse<T, any>, D = any>(\n url: string,\n data?: D,\n config?: AxiosRequestConfig<D> | undefined\n): Promise<R> {\n try {\n const response = await fetch(url, {\n method: 'PATCH',\n body: data ? JSON.stringify(data) : undefined,\n headers: config?.headers || {},\n ...config\n } as RequestInit);\n\n if (!response.ok) {\n throw new Error(`HTTP error! Status: ${response.status}`);\n }\n\n return getFormattedAxiosResponse(response, config) as unknown as Promise<R>;\n } catch (error) {\n console.error('Fetch Error:', error);\n throw error;\n }\n}\n\nconst axiosInstance = axios.create();\naxiosInstance.get = customGet;\naxiosInstance.post = customPost;\naxiosInstance.patch = customPatch;\n\nexport { axiosInstance };\n"],
|
|
5
|
+
"mappings": "AAAA,OAAS,mBAAAA,MAAuB,wBAChC,OAAOC,MAAkD,QAWzD,IAAMC,EAAQF,EAAgBC,CAAK,EAE7BE,EAA4B,MAAUC,EAAoBC,IAAe,CAC7E,GAAI,CAACD,EAAS,GACZ,MAAM,IAAI,MAAM,uBAAuBA,EAAS,MAAM,EAAE,EAO1D,IAAME,EAHiBF,EAAS,MAAM,EAGH,KAAK,EAGlC,CAACG,CAAY,EAAI,MAAM,QAAQ,IAAI,CAACD,CAAW,CAAC,EACtD,MAAO,CACL,KAAMC,EACN,OAAQH,EAAS,OACjB,WAAYA,EAAS,WACrB,QAASA,EAAS,QAClB,OAAAC,CACF,CACF,EAEA,eAAeG,EACbC,EACAC,EACAL,EACY,CACZ,GAAI,CACF,IAAMD,EAAW,MAAMF,EAAMO,EAAK,CAChC,OAAQ,OACR,KAAMC,EAAO,KAAK,UAAUA,CAAI,EAAI,OACpC,QAAS,CACP,eAAgB,mBAChB,GAAIL,GAAQ,SAAW,CAAC,CAC1B,EACA,GAAGA,CACL,CAAgB,EAEhB,OAAOF,EAA0BC,EAAUC,CAAM,CACnD,OAASM,EAAO,CACd,cAAQ,MAAM,eAAgBA,CAAK,EAC7BA,CACR,CACF,CAEA,eAAeC,EACbH,EACAJ,EACY,CACZ,GAAI,CACF,IAAMD,EAAW,MAAMF,EAAMO,EAAKJ,CAAqB,EACvD,GAAI,CAACD,EAAS,GACZ,MAAM,IAAI,MAAM,uBAAuBA,EAAS,MAAM,EAAE,EAG1D,OAAOD,EAA0BC,EAAUC,CAAM,CACnD,OAASM,EAAO,CACd,cAAQ,MAAM,eAAgBA,CAAK,EAC7BA,CACR,CACF,CAEA,eAAeE,EACbJ,EACAC,EACAL,EACY,CACZ,GAAI,CACF,IAAMD,EAAW,MAAMF,EAAMO,EAAK,CAChC,OAAQ,QACR,KAAMC,EAAO,KAAK,UAAUA,CAAI,EAAI,OACpC,QAASL,GAAQ,SAAW,CAAC,EAC7B,GAAGA,CACL,CAAgB,EAEhB,GAAI,CAACD,EAAS,GACZ,MAAM,IAAI,MAAM,uBAAuBA,EAAS,MAAM,EAAE,EAG1D,OAAOD,EAA0BC,EAAUC,CAAM,CACnD,OAASM,EAAO,CACd,cAAQ,MAAM,eAAgBA,CAAK,EAC7BA,CACR,CACF,CAEA,IAAMG,EAAgBb,EAAM,OAAO,EACnCa,EAAc,IAAMF,EACpBE,EAAc,KAAON,EACrBM,EAAc,MAAQD",
|
|
6
|
+
"names": ["buildAxiosFetch", "axios", "fetch", "getFormattedAxiosResponse", "response", "config", "jsonPromise", "responseData", "customPost", "url", "data", "error", "customGet", "customPatch", "axiosInstance"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as s}from"./chunk-SUBC3H4J.mjs";import{a as t}from"./chunk-U64LDJTG.mjs";import{a as n}from"./chunk-ZUJ5KE7O.mjs";import{s as e}from"./chunk-ZI7JADBP.mjs";import{b as o}from"./chunk-SAAOQW7P.mjs";var w=async r=>{let{isGuarded:i}=n();if(!s({isGuarded:i,transactions:r}))return r;let a=r[0].sender.toBech32(),{walletAddress:d}=o(e());return await(await t({address:a,walletUrl:d}))?.guardTransactions(r)||[]};export{w as a};
|
|
2
|
+
//# sourceMappingURL=chunk-PGCTCWAW.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/providers/strategies/helpers/signTransactions/helpers/guardTransactions/guardTransactions.ts"],
|
|
4
|
-
"sourcesContent": ["import { Transaction } from 'lib/sdkCore';\nimport { getAccount } from 'methods/account/getAccount';\nimport { networkSelector } from 'store/selectors';\nimport { getState } from 'store/store';\nimport { getCrossWindowProvider } from './getCrossWindowProvider';\nimport { getTransactionsNeedGuardianSigning } from './getTransactionsNeedGuardianSigning';\n\n/*\n Performs guard transactions if needed\n*/\nexport const guardTransactions = async (transactions: Transaction[]) => {\n const { isGuarded } = getAccount();\n\n const needs2FAsigning = getTransactionsNeedGuardianSigning({\n isGuarded,\n transactions\n });\n\n if (!needs2FAsigning) {\n return transactions;\n }\n\n const sender = transactions[0].
|
|
5
|
-
"mappings": "6MAUO,IAAMA,EAAoB,MAAOC,GAAgC,CACtE,GAAM,CAAE,UAAAC,CAAU,EAAIC,EAAW,EAOjC,GAAI,CALoBC,EAAmC,CACzD,UAAAF,EACA,aAAAD,CACF,CAAC,EAGC,OAAOA,EAGT,IAAMI,EAASJ,EAAa,CAAC,EAAE,
|
|
4
|
+
"sourcesContent": ["import { Transaction } from 'lib/sdkCore';\nimport { getAccount } from 'methods/account/getAccount';\nimport { networkSelector } from 'store/selectors';\nimport { getState } from 'store/store';\nimport { getCrossWindowProvider } from './getCrossWindowProvider';\nimport { getTransactionsNeedGuardianSigning } from './getTransactionsNeedGuardianSigning';\n\n/*\n Performs guard transactions if needed\n*/\nexport const guardTransactions = async (transactions: Transaction[]) => {\n const { isGuarded } = getAccount();\n\n const needs2FAsigning = getTransactionsNeedGuardianSigning({\n isGuarded,\n transactions\n });\n\n if (!needs2FAsigning) {\n return transactions;\n }\n\n const sender = transactions[0].sender.toBech32();\n const { walletAddress } = networkSelector(getState());\n\n const provider = await getCrossWindowProvider({\n address: sender,\n walletUrl: walletAddress\n });\n\n const guardedTransactions = await provider?.guardTransactions(transactions);\n return guardedTransactions || [];\n};\n"],
|
|
5
|
+
"mappings": "6MAUO,IAAMA,EAAoB,MAAOC,GAAgC,CACtE,GAAM,CAAE,UAAAC,CAAU,EAAIC,EAAW,EAOjC,GAAI,CALoBC,EAAmC,CACzD,UAAAF,EACA,aAAAD,CACF,CAAC,EAGC,OAAOA,EAGT,IAAMI,EAASJ,EAAa,CAAC,EAAE,OAAO,SAAS,EACzC,CAAE,cAAAK,CAAc,EAAIC,EAAgBC,EAAS,CAAC,EAQpD,OAD4B,MALX,MAAMC,EAAuB,CAC5C,QAASJ,EACT,UAAWC,CACb,CAAC,IAE2C,kBAAkBL,CAAY,GAC5C,CAAC,CACjC",
|
|
6
6
|
"names": ["guardTransactions", "transactions", "isGuarded", "getAccount", "getTransactionsNeedGuardianSigning", "sender", "walletAddress", "networkSelector", "getState", "getCrossWindowProvider"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-O7LCTC4K.mjs";import{s as m}from"./chunk-ZI7JADBP.mjs";import{b as a}from"./chunk-SAAOQW7P.mjs";import{o as r,u as i}from"./chunk-KD2IQ32V.mjs";import{a as c}from"./chunk-3FXHIV6O.mjs";async function b({tokenId:o}){let t=a(m()),{isNft:k}=c(o),n=o,p=k?r:i;if(!n)return{tokenDecimals:Number(t.decimals),tokenLabel:"",tokenAvatar:""};try{let{data:e}=await s.get(`${t.apiAddress}/${p}/${n}`),f=e?e?.decimals:Number(t.decimals),l=e?e?.name:"",d=e?e?.assets?.svgUrl??e?.media?.[0]?.thumbnailUrl:"";return{tokenDecimals:f,tokenLabel:l,type:e?.type,tokenAvatar:d,identifier:e?.identifier,assets:e?.assets,esdtPrice:e?.price,ticker:e?.ticker,name:e?.name}}catch(e){return{error:`Error fetching token ${n}: ${e.toString()}`,tokenDecimals:Number(t.decimals),tokenLabel:"",tokenAvatar:"",identifier:n}}}export{b as a};
|
|
2
|
+
//# sourceMappingURL=chunk-PIS56ZD4.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-CDIHVT44.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-Q3C46OSS.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as u}from"./chunk-L3MWDI6J.mjs";import{q as i}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as u}from"./chunk-L3MWDI6J.mjs";import{q as i}from"./chunk-ZI7JADBP.mjs";var g=({transactions:s,transactionsDisplayInfo:a,status:e,sessionInformation:t})=>{let o=Date.now().toString();return i().setState(({transactions:n})=>{n[o]={transactions:s,status:e,transactionsDisplayInfo:a,interpretedTransactions:{},sessionInformation:t}},!1,"createTransactionsSession"),o},T=({sessionId:s,status:a,errorMessage:e})=>{i().setState(({transactions:t})=>{t[s].status=a,t[s].errorMessage=e},!1,"updateTransactionsSession")},y=({sessionId:s,transaction:a})=>{let e=null;return i().setState(({transactions:t})=>{let o=t[s]?.transactions;if(o!=null){t[s].transactions=o.map(r=>r.hash===a.hash?{...r,...a??{}}:r);let n=u([...t[s].transactions]);n&&(T({sessionId:s,status:n}),e=n)}},!1,"updateTransactionStatus"),e},h=()=>{i().setState(({transactions:s,toasts:a})=>{let t=Object.keys(s).filter(n=>{let r=s[n];if(!r)return!1;let{status:c}=r;return!(c==="pending"||c==="signed"||c==="sent")});t.forEach(n=>{delete s[n]});let o=a.transactionToasts.filter(n=>!t.includes(n.toastId));a.transactionToasts=o},!1,"clearCompletedTransactions")};export{g as a,T as b,y as c,h as d};
|
|
2
|
+
//# sourceMappingURL=chunk-R2EQDN33.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as w}from"./chunk-QXC4D3AC.mjs";import{a as g}from"./chunk-YGI3KXMZ.mjs";import{a as b}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as w}from"./chunk-QXC4D3AC.mjs";import{a as g}from"./chunk-YGI3KXMZ.mjs";import{a as b}from"./chunk-KCUBSEZI.mjs";import{a as m}from"./chunk-NZYB675D.mjs";import{f}from"./chunk-PJWJZHIS.mjs";import x from"bignumber.js";var F=async({manager:e,provider:d})=>{if(!e||!d)throw new Error("Provider is not initialized.");let{network:u}=b(),s=e.getAccountScreenData()?.startIndex||0,r=e.getAllAccounts(),a=await w({baseURL:u.apiAddress}),l=o=>o.index>=s&&o.index<s+e.addressesPerPage,I=r.reduce((o,n)=>Object.assign(o,{[n.index]:n}),{}),A=r.filter(l),y=!!I[s];if(e.updateAccountScreen({isLoading:!y}),A.length>0){e.updateAccountScreen({accounts:A});return}try{let o=Math.floor(s/e.addressesPerPage),n=await d.getAccounts(o,e.addressesPerPage),L=n.map((t,c)=>({address:t,balance:"...",index:c+s})),P=[...r,...L],h=n.map(t=>m({address:t,baseURL:u.apiAddress})),j=await Promise.all(h),i=P.reduce((t,c)=>Object.assign(t,{[c.address]:c}),{});j.forEach(t=>{if(!t||!a||!a.price)return;let c=new x(t.balance),S=c.dividedBy(x(10).pow(18)).toFormat(4).toString();if(c.isNaN())return;let U=g({amount:f({input:t.balance}),usd:a?.price});i[t.address].balance=S,i[t.address].usdValue=U});let p=Object.values(i).sort((t,c)=>t.index-c.index),O=p.filter(l);e.updateAllAccounts(p),e.updateAccountScreen({accounts:O,isLoading:!1})}catch(o){console.error("Failed to fetch accounts:",o)}};export{F as a};
|
|
2
|
+
//# sourceMappingURL=chunk-R32N5WCS.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-FODKR5LN.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-R43WJEH6.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-GTRD4HFY.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-RGFZEURF.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-CDIHVT44.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-RMARAUR3.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as S}from"./chunk-EAJBSX6Y.mjs";import{a as s}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-CAA4VJRH.mjs";import{s as e}from"./chunk-ZI7JADBP.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-SHKZVFEF.mjs.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as o}from"./chunk-ZZZCOFQ7.mjs";import{b as s}from"./chunk-TQA3JDNV.mjs";import{s as n}from"./chunk-ZI7JADBP.mjs";async function f(){let t=s(n());if(Object.keys(t).length>0)for(let[e,{transactions:c}]of Object.entries(t))await o({sessionId:e,transactionBatch:c})}export{f as a};
|
|
2
|
+
//# sourceMappingURL=chunk-SK4EBR2Z.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as c}from"./chunk-3GGBXXXJ.mjs";import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as c}from"./chunk-3GGBXXXJ.mjs";import{a as e}from"./chunk-O7LCTC4K.mjs";import{a as n}from"./chunk-KD2IQ32V.mjs";import{k as i}from"./chunk-ULUZWP2P.mjs";var a=({address:r,baseURL:o})=>{let t=c(o),s=`${t}/${n}/${r}?withGuardianInfo=true`;return e.get(s,{baseURL:t,timeout:i})},g=async({address:r,baseURL:o})=>{if(!r)return null;try{let{data:t}=await a({address:r,baseURL:o});return t}catch{console.error("error fetching configuration for ",r)}return null};export{a,g as b};
|
|
2
|
+
//# sourceMappingURL=chunk-SLOQOCEU.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/providers/strategies/helpers/signTransactions/helpers/guardTransactions/getTransactionsNeedGuardianSigning.ts"],
|
|
4
|
-
"sourcesContent": ["import { Transaction } from 'lib/sdkCore';\n\nexport const getTransactionsNeedGuardianSigning = ({\n transactions,\n isGuarded\n}: {\n transactions: Transaction[];\n isGuarded?: boolean;\n}) => {\n if (!isGuarded || transactions.length === 0) {\n return false;\n }\n\n const allSigned = transactions.every((tx) =>\n Boolean(tx.
|
|
5
|
-
"mappings": "AAEO,IAAMA,EAAqC,CAAC,CACjD,aAAAC,EACA,UAAAC,CACF,IAIM,CAACA,GAAaD,EAAa,SAAW,EACjC,GAOF,CAJWA,EAAa,MAAOE,GACpC,EAAQA,EAAG,
|
|
4
|
+
"sourcesContent": ["import { Transaction } from 'lib/sdkCore';\n\nexport const getTransactionsNeedGuardianSigning = ({\n transactions,\n isGuarded\n}: {\n transactions: Transaction[];\n isGuarded?: boolean;\n}) => {\n if (!isGuarded || transactions.length === 0) {\n return false;\n }\n\n const allSigned = transactions.every((tx) =>\n Boolean(tx.guardianSignature.toString())\n );\n\n return !allSigned;\n};\n"],
|
|
5
|
+
"mappings": "AAEO,IAAMA,EAAqC,CAAC,CACjD,aAAAC,EACA,UAAAC,CACF,IAIM,CAACA,GAAaD,EAAa,SAAW,EACjC,GAOF,CAJWA,EAAa,MAAOE,GACpC,EAAQA,EAAG,kBAAkB,SAAS,CACxC",
|
|
6
6
|
"names": ["getTransactionsNeedGuardianSigning", "transactions", "isGuarded", "tx"]
|
|
7
7
|
}
|