@multiversx/sdk-dapp 5.2.12 → 5.2.13
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-27GL7FOR.mjs +2 -0
- package/out/__chunks__/{chunk-XQL64G6I.mjs → chunk-2M5PQ7VQ.mjs} +2 -2
- package/out/__chunks__/{chunk-2IANAIWP.mjs → chunk-3BOE7KMH.mjs} +2 -2
- package/out/__chunks__/{chunk-K2QNLOBA.mjs → chunk-3IZTM5SH.mjs} +2 -2
- package/out/__chunks__/chunk-3TQYETUQ.mjs +2 -0
- package/out/__chunks__/chunk-3ULRTEGS.mjs +2 -0
- package/out/__chunks__/{chunk-CUMVG6S5.mjs → chunk-3XTDNJEI.mjs} +2 -2
- package/out/__chunks__/{chunk-CIUJ7Q6E.mjs → chunk-43L6QQVQ.mjs} +2 -2
- package/out/__chunks__/{chunk-ZNCLQODX.mjs → chunk-46HT52TD.mjs} +2 -2
- package/out/__chunks__/{chunk-FCB3AT5J.mjs → chunk-4HACE72D.mjs} +2 -2
- package/out/__chunks__/{chunk-U3CB72I3.mjs → chunk-4YZ6ES24.mjs} +2 -2
- package/out/__chunks__/chunk-5WVYRVED.mjs +2 -0
- package/out/__chunks__/{chunk-P6DSLB4K.mjs → chunk-6BL2PJRI.mjs} +2 -2
- package/out/__chunks__/{chunk-EPRQ5A6W.mjs → chunk-7KOIS7OQ.mjs} +2 -2
- package/out/__chunks__/{chunk-QT3PF6MA.mjs → chunk-A2OUGIST.mjs} +2 -2
- package/out/__chunks__/{chunk-R2OXRDF3.mjs → chunk-A32SSEM7.mjs} +2 -2
- package/out/__chunks__/{chunk-OZYD32IW.mjs → chunk-ACNCA5WT.mjs} +2 -2
- package/out/__chunks__/{chunk-OTSQGZLA.mjs → chunk-AGXERDYF.mjs} +2 -2
- package/out/__chunks__/chunk-ARG4BCVP.mjs +2 -0
- package/out/__chunks__/{chunk-WMSBYBUV.mjs → chunk-BDOEZAQW.mjs} +2 -2
- package/out/__chunks__/{chunk-SY2OIXRY.mjs → chunk-BF2EIXYA.mjs} +2 -2
- package/out/__chunks__/{chunk-WTCCK3ZP.mjs → chunk-BMBBSWIO.mjs} +2 -2
- package/out/__chunks__/chunk-BPJEBZSS.mjs +2 -0
- package/out/__chunks__/{chunk-IRQV762M.mjs → chunk-CD7S5WQ2.mjs} +2 -2
- package/out/__chunks__/{chunk-5IJGFJ7A.mjs → chunk-CO55WDEX.mjs} +2 -2
- package/out/__chunks__/chunk-CTCIWUCQ.mjs +2 -0
- package/out/__chunks__/chunk-CZEUFCPN.mjs +2 -0
- package/out/__chunks__/chunk-CZEUFCPN.mjs.map +7 -0
- package/out/__chunks__/{chunk-GKM7KNTV.mjs → chunk-FDKQ5GBZ.mjs} +2 -2
- package/out/__chunks__/{chunk-P5BMCXKE.mjs → chunk-FDN3ZMJB.mjs} +2 -2
- package/out/__chunks__/{chunk-AWV2BT4N.mjs → chunk-FUSW6F2O.mjs} +2 -2
- package/out/__chunks__/{chunk-6V32BQRW.mjs → chunk-GEPV5HLA.mjs} +2 -2
- package/out/__chunks__/{chunk-5MSC5VEJ.mjs → chunk-GPRR7WIH.mjs} +2 -2
- package/out/__chunks__/{chunk-3PTO3UT5.mjs → chunk-GRGJ3KFV.mjs} +2 -2
- package/out/__chunks__/{chunk-ZJ7L5STS.mjs → chunk-GUZERYYB.mjs} +2 -2
- package/out/__chunks__/{chunk-I3C6RYN6.mjs → chunk-H3PMAMO7.mjs} +2 -2
- package/out/__chunks__/{chunk-2FRFDBKB.mjs → chunk-HA5UXXYU.mjs} +2 -2
- package/out/__chunks__/{chunk-EUJRQFQG.mjs → chunk-HAHEJ5MG.mjs} +2 -2
- package/out/__chunks__/{chunk-XJPDM2YR.mjs → chunk-HKZI76PK.mjs} +2 -2
- package/out/__chunks__/{chunk-OAVLO5YR.mjs → chunk-HM3DDWL2.mjs} +2 -2
- package/out/__chunks__/{chunk-SV3NP6BV.mjs → chunk-JDIGAG2K.mjs} +2 -2
- package/out/__chunks__/chunk-JFP2BITI.mjs +2 -0
- package/out/__chunks__/chunk-JFP2BITI.mjs.map +7 -0
- package/out/__chunks__/chunk-JH4L2BAI.mjs +2 -0
- package/out/__chunks__/{chunk-JPMLMIQR.mjs → chunk-JH7DXVOH.mjs} +2 -2
- package/out/__chunks__/{chunk-JPMLMIQR.mjs.map → chunk-JH7DXVOH.mjs.map} +2 -2
- package/out/__chunks__/{chunk-7I7SJXVG.mjs → chunk-JICJ7JNX.mjs} +2 -2
- package/out/__chunks__/{chunk-5BYHDDZU.mjs → chunk-JIWOIKIN.mjs} +2 -2
- package/out/__chunks__/{chunk-UKFG6RD4.mjs → chunk-JO4RFE6Y.mjs} +2 -2
- package/out/__chunks__/chunk-JU3JK7ZW.mjs +2 -0
- package/out/__chunks__/{chunk-GRZU3CBF.mjs → chunk-KAZ44D6B.mjs} +2 -2
- package/out/__chunks__/{chunk-T4GLMTGR.mjs → chunk-KW67U7EN.mjs} +2 -2
- package/out/__chunks__/chunk-KXJUK6CN.mjs +2 -0
- package/out/__chunks__/{chunk-YG6GGSSN.mjs.map → chunk-KXJUK6CN.mjs.map} +1 -1
- package/out/__chunks__/chunk-LHLSK6R3.mjs +2 -0
- package/out/__chunks__/{chunk-FJD2WVYA.mjs → chunk-LKYNZMTI.mjs} +2 -2
- package/out/__chunks__/{chunk-IUCITH6E.mjs → chunk-LMULG6DX.mjs} +2 -2
- package/out/__chunks__/chunk-M2SIVB52.mjs +2 -0
- package/out/__chunks__/chunk-MDVHLIC7.mjs +2 -0
- package/out/__chunks__/{chunk-GECW34DV.mjs → chunk-MH24PY4N.mjs} +2 -2
- package/out/__chunks__/{chunk-6KJDFL4X.mjs → chunk-MPQUPJUO.mjs} +2 -2
- package/out/__chunks__/{chunk-DGANJCHG.mjs → chunk-MT3MZ6SJ.mjs} +2 -2
- package/out/__chunks__/chunk-N72FHB5Q.mjs +2 -0
- package/out/__chunks__/chunk-N72FHB5Q.mjs.map +7 -0
- package/out/__chunks__/{chunk-KC6QWZ4R.mjs → chunk-NCH6SFZ2.mjs} +2 -2
- package/out/__chunks__/chunk-ND5SC5UK.mjs +2 -0
- package/out/__chunks__/{chunk-XLBZPLWQ.mjs → chunk-NE6ED6BJ.mjs} +2 -2
- package/out/__chunks__/{chunk-YLGQ3PM4.mjs → chunk-NMVLXQXY.mjs} +2 -2
- package/out/__chunks__/{chunk-HWWLVGYU.mjs → chunk-OVD6R5BF.mjs} +2 -2
- package/out/__chunks__/{chunk-N4CXXF6R.mjs → chunk-QAKIMRWO.mjs} +2 -2
- package/out/__chunks__/chunk-QY6K7L4I.mjs +2 -0
- package/out/__chunks__/{chunk-JSA535AB.mjs.map → chunk-QY6K7L4I.mjs.map} +3 -3
- package/out/__chunks__/{chunk-JOX3TPDC.mjs → chunk-RXQEMX7U.mjs} +2 -2
- package/out/__chunks__/{chunk-XU7FAZR4.mjs → chunk-SBQYWA6T.mjs} +2 -2
- package/out/__chunks__/{chunk-PR2UXLUQ.mjs → chunk-SPP2AXFW.mjs} +2 -2
- package/out/__chunks__/{chunk-YVVVV5XJ.mjs → chunk-TAA22QOF.mjs} +2 -2
- package/out/__chunks__/chunk-TAFDGCRA.mjs +2 -0
- package/out/__chunks__/{chunk-YDKZQMFY.mjs → chunk-TC5SHARG.mjs} +2 -2
- package/out/__chunks__/{chunk-MWOVK6GV.mjs → chunk-TEIODZEN.mjs} +2 -2
- package/out/__chunks__/chunk-TP6GGLNS.mjs +2 -0
- package/out/__chunks__/{chunk-6TAFMLIP.mjs → chunk-U22RR2MN.mjs} +2 -2
- package/out/__chunks__/{chunk-EELETY3Z.mjs → chunk-UB3WTGGF.mjs} +2 -2
- package/out/__chunks__/chunk-UGA4OJPD.mjs +2 -0
- package/out/__chunks__/{chunk-BFYSNMGP.mjs → chunk-UK2P24V6.mjs} +2 -2
- package/out/__chunks__/{chunk-EXE2PPR4.mjs → chunk-VJN2RF4O.mjs} +2 -2
- package/out/__chunks__/{chunk-3V7L7VMK.mjs → chunk-VTPHR6O5.mjs} +2 -2
- package/out/__chunks__/{chunk-KONLNCQL.mjs → chunk-VVMACGAC.mjs} +2 -2
- package/out/__chunks__/{chunk-KONLNCQL.mjs.map → chunk-VVMACGAC.mjs.map} +2 -2
- package/out/__chunks__/chunk-XPQSGRUF.mjs +2 -0
- package/out/__chunks__/{chunk-2BKGSHOR.mjs → chunk-YBEBQWOE.mjs} +2 -2
- package/out/__chunks__/{chunk-NAQ3AWXW.mjs → chunk-ZHRGANG5.mjs} +2 -2
- package/out/__chunks__/{chunk-SJWV7RWT.mjs → chunk-ZVAP4GAJ.mjs} +2 -2
- package/out/apiCalls/account/getScamAddressData.mjs +1 -1
- package/out/apiCalls/configuration/getCleanApiAddress.mjs +1 -1
- package/out/apiCalls/configuration/getGasStationMetadata.mjs +1 -1
- package/out/apiCalls/index.mjs +1 -1
- package/out/apiCalls/tokens/getPersistedTokenDetails.mjs +1 -1
- package/out/apiCalls/tokens/getTokenDetails.mjs +1 -1
- package/out/apiCalls/tokens/index.mjs +1 -1
- package/out/apiCalls/transactions/getServerTransactionsByHashes.mjs +1 -1
- package/out/apiCalls/transactions/getTransactionByHash.mjs +1 -1
- package/out/apiCalls/transactions/getTransactionsByHashes.mjs +1 -1
- package/out/constants/browser.constants.mjs +1 -1
- package/out/constants/index.mjs +1 -1
- package/out/constants/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/ToastManager/ToastManager.mjs +1 -1
- package/out/managers/ToastManager/ToastUICoordinator.mjs +1 -1
- package/out/managers/ToastManager/helpers/LifetimeManager.mjs +1 -1
- package/out/managers/ToastManager/helpers/createToastsFromTransactions.mjs +1 -1
- package/out/managers/ToastManager/index.mjs +1 -1
- package/out/managers/TransactionManager/TransactionManager.mjs +1 -1
- package/out/managers/TransactionManager/helpers/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.cjs +1 -1
- package/out/managers/UnlockPanelManager/UnlockPanelManager.cjs.map +3 -3
- package/out/managers/UnlockPanelManager/UnlockPanelManager.d.ts +0 -1
- package/out/managers/UnlockPanelManager/UnlockPanelManager.mjs +1 -1
- package/out/managers/UnlockPanelManager/helpers/getIsSimpleLoginCallback.cjs +2 -0
- package/out/managers/UnlockPanelManager/helpers/getIsSimpleLoginCallback.cjs.map +7 -0
- package/out/managers/UnlockPanelManager/helpers/getIsSimpleLoginCallback.d.ts +7 -0
- package/out/managers/UnlockPanelManager/helpers/getIsSimpleLoginCallback.mjs +2 -0
- package/out/managers/UnlockPanelManager/helpers/getIsSimpleLoginCallback.mjs.map +7 -0
- package/out/managers/UnlockPanelManager/helpers/getProviderList.cjs +1 -1
- package/out/managers/UnlockPanelManager/helpers/getProviderList.cjs.map +2 -2
- package/out/managers/UnlockPanelManager/helpers/getProviderList.d.ts +1 -1
- package/out/managers/UnlockPanelManager/helpers/getProviderList.mjs +1 -1
- package/out/managers/UnlockPanelManager/index.mjs +1 -1
- package/out/managers/index.mjs +1 -1
- package/out/managers/internal/LedgerConnectStateManager/LedgerConnectStateManager.cjs +1 -1
- package/out/managers/internal/LedgerConnectStateManager/LedgerConnectStateManager.cjs.map +2 -2
- package/out/managers/internal/LedgerConnectStateManager/LedgerConnectStateManager.mjs +1 -1
- package/out/managers/internal/LedgerConnectStateManager/index.mjs +1 -1
- package/out/managers/internal/LedgerIdleStateManager/LedgerIdleStateManager.mjs +1 -1
- package/out/managers/internal/PendingTransactionsStateManager/PendingTransactionsStateManager.mjs +1 -1
- package/out/managers/internal/PendingTransactionsStateManager/index.mjs +1 -1
- package/out/managers/internal/SidePanelBaseManager/SidePanelBaseManager.mjs +1 -1
- package/out/managers/internal/SidePanelBaseManager/index.mjs +1 -1
- package/out/managers/internal/SignTransactionsStateManager/SignTransactionsStateManager.mjs +1 -1
- package/out/managers/internal/SignTransactionsStateManager/index.mjs +1 -1
- package/out/managers/internal/UIBaseManager/UIBaseManager.mjs +1 -1
- package/out/managers/internal/WalletConnectStateManager/WalletConnectStateManager.mjs +1 -1
- package/out/managers/internal/WalletConnectStateManager/index.mjs +1 -1
- package/out/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/checkTransactionStatus.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/helpers/checkBatch/checkBatch.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/helpers/checkBatch/helpers/runTransactionFailure.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/helpers/checkBatch/helpers/runTransactionStatusUpdate.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/helpers/checkBatch/helpers/updateTransactionAndSessionStatus.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/helpers/checkBatch/index.mjs +1 -1
- package/out/methods/trackTransactions/helpers/checkTransactionStatus/index.mjs +1 -1
- package/out/methods/trackTransactions/helpers/getPollingInterval.mjs +1 -1
- package/out/methods/trackTransactions/trackTransactions.mjs +1 -1
- package/out/methods/transactions/getFailedTransactions.mjs +1 -1
- package/out/methods/transactions/getFailedTransactionsSessions.mjs +1 -1
- package/out/methods/transactions/getPendingTransactions.mjs +1 -1
- package/out/methods/transactions/getPendingTransactionsSessions.mjs +1 -1
- package/out/methods/transactions/getSuccessfulTransactions.mjs +1 -1
- package/out/methods/transactions/getSuccessfulTransactionsSessions.mjs +1 -1
- package/out/methods/transactions/getTransactionSessions.mjs +1 -1
- package/out/providers/DappProvider/DappProvider.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/accountLogin.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/extractAddressFromToken.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/getAccountFromToken.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/getModifiedLoginToken.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/helpers/getMultisigLoginToken.mjs +1 -1
- package/out/providers/DappProvider/helpers/login/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.cjs +1 -1
- package/out/providers/strategies/LedgerProviderStrategy/helpers/authenticateLedgerAccount.cjs.map +3 -3
- 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.cjs +1 -1
- package/out/providers/strategies/WalletConnectProviderStrategy/WalletConnectProviderStrategy.cjs.map +2 -2
- package/out/providers/strategies/WalletConnectProviderStrategy/WalletConnectProviderStrategy.mjs +1 -1
- package/out/providers/strategies/WalletConnectProviderStrategy/index.mjs +1 -1
- package/out/providers/strategies/WebviewProviderStrategy/WebviewClient/WebviewClient.mjs +1 -1
- package/out/providers/strategies/WebviewProviderStrategy/WebviewClient/index.mjs +1 -1
- package/out/providers/strategies/WebviewProviderStrategy/WebviewProviderStrategy.mjs +1 -1
- package/out/providers/strategies/WebviewProviderStrategy/index.mjs +1 -1
- package/out/providers/strategies/helpers/getPendingTransactionsHandlers.mjs +1 -1
- package/out/providers/strategies/helpers/index.mjs +1 -1
- package/out/providers/strategies/helpers/signMessage/signMessage.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/calculateFeeLimit.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/getCommonData/getCommonData.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/getCommonData/helpers/getExtractTransactionsInfo.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/getFeeData.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/helpers/guardTransactions/guardTransactions.mjs +1 -1
- package/out/providers/strategies/helpers/signTransactions/signTransactions.mjs +1 -1
- package/out/providers/strategies/index.mjs +1 -1
- package/out/react/account/useGetAccount.mjs +1 -1
- package/out/react/account/useGetAccountInfo.mjs +1 -1
- package/out/react/account/useGetIsLoggedIn.mjs +1 -1
- package/out/react/account/useGetLatestNonce.mjs +1 -1
- package/out/react/index.mjs +1 -1
- package/out/react/loginInfo/useGetLoginInfo.mjs +1 -1
- package/out/react/network/useGetNetworkConfig.mjs +1 -1
- package/out/react/store/getReactStore.mjs +1 -1
- package/out/react/store/useSelector.mjs +1 -1
- package/out/react/transactions/useGetFailedTransactions.mjs +1 -1
- package/out/react/transactions/useGetFailedTransactionsSessions.mjs +1 -1
- package/out/react/transactions/useGetPendingTransactions.mjs +1 -1
- package/out/react/transactions/useGetPendingTransactionsSessions.mjs +1 -1
- package/out/react/transactions/useGetSuccessfulTransactions.mjs +1 -1
- package/out/react/transactions/useGetSuccessfulTransactionsSessions.mjs +1 -1
- package/out/react/transactions/useGetTransactionSessions.mjs +1 -1
- package/out/services/index.mjs +1 -1
- package/out/services/nativeAuth/index.mjs +1 -1
- package/out/services/nativeAuth/methods/buildNativeAuthConfig.mjs +1 -1
- package/out/services/nativeAuth/methods/getDefaultNativeAuthConfig.mjs +1 -1
- package/out/services/nativeAuth/methods/index.mjs +1 -1
- package/out/services/nativeAuth/nativeAuth.mjs +1 -1
- package/out/store/actions/account/accountActions.mjs +1 -1
- package/out/store/actions/account/index.mjs +1 -1
- package/out/store/actions/cache/cacheActions.mjs +1 -1
- package/out/store/actions/cache/index.mjs +1 -1
- package/out/store/actions/config/configActions.mjs +1 -1
- package/out/store/actions/config/index.mjs +1 -1
- package/out/store/actions/index.mjs +1 -1
- package/out/store/actions/loginInfo/loginInfoActions.mjs +1 -1
- package/out/store/actions/network/index.mjs +1 -1
- package/out/store/actions/network/initializeNetwork.mjs +1 -1
- package/out/store/actions/network/networkActions.mjs +1 -1
- package/out/store/actions/sharedActions/index.mjs +1 -1
- package/out/store/actions/sharedActions/sharedActions.mjs +1 -1
- package/out/store/actions/toasts/index.mjs +1 -1
- package/out/store/actions/toasts/toastsActions.mjs +1 -1
- package/out/store/actions/transactions/transactionsActions.mjs +1 -1
- package/out/store/actions/ui/index.mjs +1 -1
- package/out/store/actions/ui/uiActions.mjs +1 -1
- package/out/store/middleware/applyMiddlewares.mjs +1 -1
- package/out/store/middleware/index.mjs +1 -1
- package/out/store/middleware/logoutMiddleware.mjs +1 -1
- package/out/store/storage/index.mjs +1 -1
- package/out/store/storage/storageCallback.mjs +1 -1
- package/out/store/store.mjs +1 -1
- package/out/utils/ComponentFactory.mjs +1 -1
- package/out/utils/account/index.mjs +1 -1
- package/out/utils/account/refreshAccount.mjs +1 -1
- package/out/utils/account/refreshNativeAuthTokenLogin.mjs +1 -1
- package/out/utils/index.mjs +1 -1
- package/out/utils/transactions/getActiveTransactionsStatus.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/getInterpretedTransaction.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/getLockedAccountName.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/getReceiptMessage.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/getShardText.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/getTransactionIconInfo.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/getTransactionMessages.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/helpers/index.mjs +1 -1
- package/out/utils/transactions/getInterpretedTransaction/index.mjs +1 -1
- package/out/utils/transactions/getTransactionsHistory/getTransactionsHistory.mjs +1 -1
- package/out/utils/transactions/getTransactionsHistory/helpers/getCachedTransactionListItem.mjs +1 -1
- package/out/utils/transactions/getTransactionsHistory/helpers/index.mjs +1 -1
- package/out/utils/transactions/getTransactionsHistory/helpers/mapServerTransactionsToListItems.mjs +1 -1
- package/out/utils/transactions/getTransactionsHistory/index.mjs +1 -1
- package/out/utils/transactions/index.mjs +1 -1
- package/out/utils/visual/index.mjs +1 -1
- package/out/utils/visual/switchTheme.mjs +1 -1
- package/out/utils/window/getIsInIframe.mjs +1 -1
- package/out/utils/window/getWindowParentOrigin.mjs +1 -1
- package/out/utils/window/index.mjs +1 -1
- package/package.json +2 -2
- package/out/__chunks__/chunk-5TY2NRTY.mjs +0 -2
- package/out/__chunks__/chunk-5V3ZVJ5N.mjs +0 -2
- package/out/__chunks__/chunk-667KBMOX.mjs +0 -2
- package/out/__chunks__/chunk-667KBMOX.mjs.map +0 -7
- package/out/__chunks__/chunk-74YKEHCU.mjs +0 -2
- package/out/__chunks__/chunk-7GTKSPKR.mjs +0 -2
- package/out/__chunks__/chunk-7SHSB2H7.mjs +0 -2
- package/out/__chunks__/chunk-DKMTA3CC.mjs +0 -2
- package/out/__chunks__/chunk-HROVYEVW.mjs +0 -2
- package/out/__chunks__/chunk-IRP5CFO7.mjs +0 -2
- package/out/__chunks__/chunk-JSA535AB.mjs +0 -2
- package/out/__chunks__/chunk-OWA27GTK.mjs +0 -2
- package/out/__chunks__/chunk-OWA27GTK.mjs.map +0 -7
- package/out/__chunks__/chunk-R64XZNJM.mjs +0 -2
- package/out/__chunks__/chunk-SCIOG3JW.mjs +0 -2
- package/out/__chunks__/chunk-SDF6BSQJ.mjs +0 -2
- package/out/__chunks__/chunk-SWV35LLA.mjs +0 -2
- package/out/__chunks__/chunk-UBOX3NGQ.mjs +0 -2
- package/out/__chunks__/chunk-VGHFJYHY.mjs +0 -2
- package/out/__chunks__/chunk-WEDTMPCV.mjs +0 -2
- package/out/__chunks__/chunk-WW4U7UI2.mjs +0 -2
- package/out/__chunks__/chunk-YG6GGSSN.mjs +0 -2
- package/out/__chunks__/chunk-ZNPHUPAP.mjs +0 -2
- /package/out/__chunks__/{chunk-WEDTMPCV.mjs.map → chunk-27GL7FOR.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-XQL64G6I.mjs.map → chunk-2M5PQ7VQ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-2IANAIWP.mjs.map → chunk-3BOE7KMH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-K2QNLOBA.mjs.map → chunk-3IZTM5SH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HROVYEVW.mjs.map → chunk-3TQYETUQ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5TY2NRTY.mjs.map → chunk-3ULRTEGS.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-CUMVG6S5.mjs.map → chunk-3XTDNJEI.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-CIUJ7Q6E.mjs.map → chunk-43L6QQVQ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZNCLQODX.mjs.map → chunk-46HT52TD.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FCB3AT5J.mjs.map → chunk-4HACE72D.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-U3CB72I3.mjs.map → chunk-4YZ6ES24.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZNPHUPAP.mjs.map → chunk-5WVYRVED.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-P6DSLB4K.mjs.map → chunk-6BL2PJRI.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-EPRQ5A6W.mjs.map → chunk-7KOIS7OQ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-QT3PF6MA.mjs.map → chunk-A2OUGIST.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-R2OXRDF3.mjs.map → chunk-A32SSEM7.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OZYD32IW.mjs.map → chunk-ACNCA5WT.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OTSQGZLA.mjs.map → chunk-AGXERDYF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-SCIOG3JW.mjs.map → chunk-ARG4BCVP.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-WMSBYBUV.mjs.map → chunk-BDOEZAQW.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-SY2OIXRY.mjs.map → chunk-BF2EIXYA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-WTCCK3ZP.mjs.map → chunk-BMBBSWIO.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5V3ZVJ5N.mjs.map → chunk-BPJEBZSS.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-IRQV762M.mjs.map → chunk-CD7S5WQ2.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5IJGFJ7A.mjs.map → chunk-CO55WDEX.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-DKMTA3CC.mjs.map → chunk-CTCIWUCQ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-GKM7KNTV.mjs.map → chunk-FDKQ5GBZ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-P5BMCXKE.mjs.map → chunk-FDN3ZMJB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-AWV2BT4N.mjs.map → chunk-FUSW6F2O.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-6V32BQRW.mjs.map → chunk-GEPV5HLA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5MSC5VEJ.mjs.map → chunk-GPRR7WIH.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-3PTO3UT5.mjs.map → chunk-GRGJ3KFV.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-ZJ7L5STS.mjs.map → chunk-GUZERYYB.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-I3C6RYN6.mjs.map → chunk-H3PMAMO7.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-2FRFDBKB.mjs.map → chunk-HA5UXXYU.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-EUJRQFQG.mjs.map → chunk-HAHEJ5MG.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-XJPDM2YR.mjs.map → chunk-HKZI76PK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-OAVLO5YR.mjs.map → chunk-HM3DDWL2.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-SV3NP6BV.mjs.map → chunk-JDIGAG2K.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-VGHFJYHY.mjs.map → chunk-JH4L2BAI.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-7I7SJXVG.mjs.map → chunk-JICJ7JNX.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-5BYHDDZU.mjs.map → chunk-JIWOIKIN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-UKFG6RD4.mjs.map → chunk-JO4RFE6Y.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-74YKEHCU.mjs.map → chunk-JU3JK7ZW.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-GRZU3CBF.mjs.map → chunk-KAZ44D6B.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-T4GLMTGR.mjs.map → chunk-KW67U7EN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-IRP5CFO7.mjs.map → chunk-LHLSK6R3.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-FJD2WVYA.mjs.map → chunk-LKYNZMTI.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-IUCITH6E.mjs.map → chunk-LMULG6DX.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-SDF6BSQJ.mjs.map → chunk-M2SIVB52.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-SWV35LLA.mjs.map → chunk-MDVHLIC7.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-GECW34DV.mjs.map → chunk-MH24PY4N.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-6KJDFL4X.mjs.map → chunk-MPQUPJUO.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-DGANJCHG.mjs.map → chunk-MT3MZ6SJ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-KC6QWZ4R.mjs.map → chunk-NCH6SFZ2.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-R64XZNJM.mjs.map → chunk-ND5SC5UK.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-XLBZPLWQ.mjs.map → chunk-NE6ED6BJ.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-YLGQ3PM4.mjs.map → chunk-NMVLXQXY.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-HWWLVGYU.mjs.map → chunk-OVD6R5BF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-N4CXXF6R.mjs.map → chunk-QAKIMRWO.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-JOX3TPDC.mjs.map → chunk-RXQEMX7U.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-XU7FAZR4.mjs.map → chunk-SBQYWA6T.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-PR2UXLUQ.mjs.map → chunk-SPP2AXFW.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-YVVVV5XJ.mjs.map → chunk-TAA22QOF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-7GTKSPKR.mjs.map → chunk-TAFDGCRA.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-YDKZQMFY.mjs.map → chunk-TC5SHARG.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-MWOVK6GV.mjs.map → chunk-TEIODZEN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-UBOX3NGQ.mjs.map → chunk-TP6GGLNS.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-6TAFMLIP.mjs.map → chunk-U22RR2MN.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-EELETY3Z.mjs.map → chunk-UB3WTGGF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-WW4U7UI2.mjs.map → chunk-UGA4OJPD.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-BFYSNMGP.mjs.map → chunk-UK2P24V6.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-EXE2PPR4.mjs.map → chunk-VJN2RF4O.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-3V7L7VMK.mjs.map → chunk-VTPHR6O5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-7SHSB2H7.mjs.map → chunk-XPQSGRUF.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-2BKGSHOR.mjs.map → chunk-YBEBQWOE.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-NAQ3AWXW.mjs.map → chunk-ZHRGANG5.mjs.map} +0 -0
- /package/out/__chunks__/{chunk-SJWV7RWT.mjs.map → chunk-ZVAP4GAJ.mjs.map} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../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/ProviderFactory.ts", "../../src/providers/strategies/helpers/signMessage/signMessage.ts", "../../src/providers/strategies/LedgerProviderStrategy/helpers/signLedgerMessage.ts"],
|
|
4
|
-
"sourcesContent": ["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 { getIsLoggedIn } from 'methods/account/getIsLoggedIn';\nimport {\n ProviderTypeEnum,\n ProviderType\n} from 'providers/types/providerFactory.types';\nimport { createCustomToast } from 'store/actions/toasts/toastsActions';\nimport { IconNamesEnum } from 'types';\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: IconNamesEnum.close,\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 { IconNamesEnum } from 'types';\nimport { ToastManager } from '../../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: IconNamesEnum.close,\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: IconNamesEnum.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 { 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';\nimport { signTransactions } from '../helpers/signTransactions/signTransactions';\n\nexport class IframeProviderStrategy extends BaseProviderStrategy {\n private readonly provider: IframeProvider;\n private walletUrl: string;\n\n constructor({ address, walletUrl }: IframeProviderType = {}) {\n super(address);\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.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 ProviderTypeEnum.metamask;\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 = await signTransactions({\n transactions,\n handleSign: this.provider.signTransactions.bind(this.provider)\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 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[ProviderTypeEnum.metamask]\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 { PROVIDER_SEARCH_PARAM } from 'constants/providerFactory.constants';\nimport { CrossWindowProvider } from 'lib/sdkWebWalletCrossWindowProvider';\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 { networkSelector } from 'store/selectors/networkSelectors';\nimport { getState } from 'store/store';\nimport { DappProvider } from './DappProvider/DappProvider';\nimport {\n getAccountProvider,\n setAccountProvider\n} from './helpers/accountProvider';\nimport { clearInitiatedLogins } from './helpers/clearInitiatedLogins';\nimport { WebviewProviderStrategy } from './strategies/WebviewProviderStrategy';\nimport {\n ICustomProvider,\n IProvider,\n IProviderFactory,\n ProviderTypeEnum\n} from './types/providerFactory.types';\n\nexport class ProviderFactory {\n private static _customProviders: ICustomProvider[] = [];\n\n public static set customProviders(providers: ICustomProvider[]) {\n this._customProviders = providers;\n }\n\n public static get customProviders() {\n return this._customProviders;\n }\n\n public static async create({\n type,\n anchor\n }: IProviderFactory): Promise<DappProvider> {\n let createdProvider: IProvider | null = null;\n\n switch (type) {\n case ProviderTypeEnum.extension: {\n createdProvider = new ExtensionProviderStrategy();\n\n break;\n }\n\n case ProviderTypeEnum.crossWindow: {\n createdProvider = new CrossWindowProviderStrategy();\n\n break;\n }\n\n case ProviderTypeEnum.ledger: {\n createdProvider = new LedgerProviderStrategy({ anchor });\n\n const ledgerIdleStateManager = LedgerIdleStateManager.getInstance();\n await ledgerIdleStateManager.init();\n\n break;\n }\n\n case ProviderTypeEnum.metamask: {\n createdProvider = new IframeProviderStrategy();\n\n break;\n }\n\n case ProviderTypeEnum.passkey: {\n const network = networkSelector(getState());\n\n createdProvider = new CrossWindowProviderStrategy({\n walletAddress: `${network.walletAddress}?${PROVIDER_SEARCH_PARAM}=${ProviderTypeEnum.passkey}`\n });\n\n break;\n }\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 'provider' in createdProvider &&\n createdProvider.provider instanceof CrossWindowProvider;\n\n // Clear initiated logins and skip the login method if it's crossWindow or metamask\n clearInitiatedLogins(\n shouldClearInitiatedLogins\n ? { skipLoginMethod: ProviderTypeEnum.crossWindow }\n : 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 { providerLabels } from 'constants/providerFactory.constants';\nimport { Message } from 'lib/sdkCore';\nimport { PendingTransactionsEventsEnum } from 'managers/internal/PendingTransactionsStateManager/types/pendingTransactions.types';\nimport { ProviderFactory } from 'providers/ProviderFactory';\nimport {\n ProviderType,\n ProviderTypeEnum,\n ICustomProvider\n} from 'providers/types/providerFactory.types';\nimport { SigningWarningsEnum } from 'types/enums.types';\nimport { getPendingTransactionsHandlers } from '../getPendingTransactionsHandlers';\n\ntype SignMessageWithModalPropsType<T> = {\n message: Message;\n handleSignMessage: (message: Message) => Promise<Message>;\n cancelAction?: () => Promise<T> | undefined;\n providerType: string;\n};\n\nconst isProviderType = (\n allProviders: ICustomProvider[],\n type: string\n): type is ProviderType =>\n allProviders.some((provider) => provider.type === type);\n\nexport async function signMessage<T>({\n message,\n handleSignMessage,\n cancelAction,\n providerType\n}: SignMessageWithModalPropsType<T>): Promise<Message> {\n const signedMsg = await new Promise<Awaited<Message>>(\n async (resolve, reject) => {\n const { manager, onClose } = await getPendingTransactionsHandlers({\n cancelAction\n });\n\n const allProviders = Object.values(ProviderFactory.customProviders);\n const allCustomProviderLabels = allProviders.reduce(\n (acc, provider) => {\n acc[provider.type] = provider.name;\n return acc;\n },\n {} as Record<ProviderType, string>\n );\n\n const allProviderLabels = {\n ...providerLabels,\n ...allCustomProviderLabels\n };\n\n const handleClose = async () => {\n await onClose({ shouldCancelAction: true });\n reject({ message: SigningWarningsEnum.cancelled });\n };\n\n manager.subscribeToEventBus(\n PendingTransactionsEventsEnum.CLOSE,\n handleClose\n );\n\n const providerKey = isProviderType(allProviders, providerType)\n ? providerType\n : ProviderTypeEnum.none;\n\n manager.updateData({\n name: allProviderLabels[providerKey],\n type: providerKey\n });\n\n try {\n const signedMessage = await handleSignMessage(message);\n resolve(signedMessage);\n } catch (err) {\n await onClose({ shouldCancelAction: true });\n reject(err);\n } finally {\n manager.closeUI();\n }\n }\n );\n return signedMsg;\n}\n", "import { providerLabels } from 'constants/providerFactory.constants';\nimport { Message } from 'lib/sdkCore';\nimport { getLedgerErrorCodes } from './getLedgerErrorCodes';\nimport { signMessage } from '../../helpers/signMessage/signMessage';\n\nexport async function signLedgerMessage({\n message,\n handleSignMessage\n}: {\n message: Message;\n handleSignMessage: (msg: Message) => Promise<Message>;\n}): Promise<Message> {\n try {\n const signedMessage = await signMessage({\n message,\n handleSignMessage: handleSignMessage,\n providerType: providerLabels.ledger\n });\n return signedMessage;\n } catch (error) {\n const { errorMessage } = getLedgerErrorCodes(error);\n throw errorMessage ? { message: errorMessage } : error;\n }\n}\n"],
|
|
5
|
-
"mappings": "qvCAkCO,IAAMA,EAAN,cAAqCC,CAAqB,CAK/D,YAAY,CACV,QAAAC,EACA,OAAAC,EACA,mBAAAC,CACF,EAA+B,CAC7B,MAAMF,CAAO,EATf,KAAQ,SAA8B,KACtC,KAAQ,OAAkC,KA2E1C,KAAiB,YAAc,MAC7BG,GACoD,CACpD,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAEnD,GAAI,CAACA,GAAW,OAAOA,EAAQ,cAAiB,SAC9C,MAAM,IAAI,MAAM,uCAAuC,EAEzD,GAAM,CAAE,QAAAH,EAAS,UAAAI,CAAU,EAAI,MAAM,KAAK,SAAS,MAAM,CACvD,aAAcD,EAAQ,YACxB,CAAC,EACD,MAAO,CACL,QAAAH,EACA,UAAWI,GAAa,EAC1B,CACF,EAEA,KAAgB,eAAiB,MAAOD,GAAgC,CACtE,GAAI,CAAC,KAAK,UAAY,CAAC,KAAK,OAC1B,MAAM,IAAI,oCAAuC,EAGnD,OAAO,MAAME,GAA0B,CACrC,QAAAF,EACA,OAAQ,KAAK,OACb,SAAU,KAAK,SACf,MAAO,KAAK,YAAY,KAAK,IAAI,CACnC,CAAC,CACH,EAEA,KAAiB,yBAA2B,MAAOF,GAAyB,CAG1E,GAAI,CAFwB,CAACK,EAAc,EAGzC,OAIF,MAD6BC,EAA0B,YAAY,EACxC,KAAKN,CAAM,CACxC,EAEA,sBAAmB,MAAOO,GAAgC,CACxD,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,aAAM,KAAK,gBAAgB,EAEA,MAAMC,EAAiB,CAChD,aAAAD,EACA,WAAY,KAAK,SAAS,iBAAiB,KAAK,KAAK,QAAQ,CAC/D,CAAC,CAGH,EAEA,iBAAc,MAAOE,GAAuC,CAC1D,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,aAAM,KAAK,gBAAgB,EAEL,MAAMC,GAAkB,CAC5C,QAAAD,EACA,kBAAmB,KAAK,SAAS,YAAY,KAAK,KAAK,QAAQ,CACjE,CAAC,CAGH,EAKA,KAAiB,gBAAkB,SAAY,CAC7C,GAAI,CACF,MAAM,KAAK,UAAU,WAAW,CAClC,MAAe,CACb,GAAI,CACF,GAAM,CAAE,eAAAE,CAAe,EAAI,MAAMC,GAAkB,CACjD,mBAAoB,EACtB,CAAC,EACD,KAAK,SAAWD,CAClB,OAASE,EAAO,CACd,MAAAC,EAAkB,CAChB,QAAS,gCACT,SAAU,IACV,aACA,cAAe,UACf,QAAS,+CACT,MAAO,oBACT,CAAC,EACKD,CACR,CACF,CACF,EAlKE,KAAK,QAAU,CAAE,OAAAb,EAAQ,mBAAAC,CAAmB,EAC5C,KAAK,OAAS,KAAK,YAAY,KAAK,IAAI,CAC1C,CAEA,MAAM,MAAyB,CAC7B,GAAI,CACF,KAAK,kBAAkB,EACvB,MAAM,KAAK,mBAAmB,CAChC,MAAQ,CACN,MAAO,EACT,CAEA,MAAO,EACT,CAEA,QAA2B,CACzB,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,OAAO,KAAK,SAAS,OAAO,CAC9B,CAEA,SAAwB,CACtB,OAAOc,EAAiB,MAC1B,CAEA,YAA0C,CACxC,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,OAAO,KAAK,SAAS,WAAW,CAClC,CAEA,WAAWC,EAAqC,CAC9C,OAAO,KAAK,UAAU,WAAWA,CAAO,CAC1C,CAEA,eAAyB,CACvB,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,OAAO,KAAK,SAAS,cAAc,CACrC,CAEA,MAAc,oBAAqB,CACjC,MAAM,KAAK,yBAAyB,KAAK,SAAS,MAAM,EACxD,IAAMC,EAAuBX,EAA0B,YAAY,EAE7D,CAAE,eAAAK,EAAgB,aAAAO,CAAa,EAAI,MAAM,IAAI,QAEjD,CAACC,EAASC,IACVC,GAAyB,CACvB,QAASJ,EACT,QAAAE,EACA,OAAAC,EACA,mBAAoB,KAAK,SAAS,kBACpC,CAAC,CACH,EAEA,KAAK,OAASF,EACd,KAAK,SAAWP,CAClB,CAmGF,ECnMA,IAAMW,GAAmC,IACnCC,GAAuC,IACvCC,GAA6B,IAEtBC,EAAN,MAAMC,CAAuB,CAc1B,aAAc,CAZtB,KAAQ,MAAQC,EAAS,EACzB,KAAQ,wBAAiE,KACzE,KAAQ,yBACN,KAWF,KAAO,KAAO,SAAY,CACxB,KAAK,yBAAyB,CAChC,EAEA,KAAiB,sBAAwB,IAAe,CACtD,IAAMC,EAAQ,KAAK,MAAM,SAAS,EAC5B,CAAE,aAAAC,CAAa,EAAIC,EAAkBF,CAAK,EAC1CG,EAAaC,EAAmBJ,CAAK,EAC3C,MAAO,GAAQC,IAAiBI,EAAiB,QAAUF,EAC7D,EAEA,KAAiB,yBAA2B,IAAM,CAC5C,KAAK,0BAIT,KAAK,wBAA0B,YAAY,SAAY,CACrD,IAAMG,EAAmBC,GAAwBC,EAAS,CAAC,EAE3D,GAAI,GAAC,KAAK,sBAAsB,GAAKF,GAIrC,GAAI,CAEF,MADuBG,EAAmB,EAAE,YAAY,EACnC,WAAW,CAClC,MAAiB,CASf,GARAC,EAAa,YAAY,EAAE,kBAAkB,CAC3C,QAAS,+BACT,aACA,cAAe,UACf,QAAS,sDACT,MAAO,qBACT,CAAC,EACD,KAAK,MAAM,EACP,KAAK,yBACP,OAEF,KAAK,yBAA2B,YAC9B,KAAK,kBACLf,EACF,CACF,CACF,EAAGD,EAAgC,EACrC,EAEA,KAAiB,kBAAoB,SAAY,CAC/C,GAAK,KAAK,sBAAsB,EAIhC,GAAI,CACF,IAAMiB,EAAkB,IAAIC,EAAuB,CACjD,mBAAoB,EACtB,CAAC,EAED,MAAMD,EAAgB,KAAK,EAE3B,IAAME,EAAe,IAAIC,EAAaH,CAAe,EACrDA,EAAgB,QAAU,IAAMN,EAAiB,OACjDU,EAAmBF,CAAY,EAE/B,KAAK,MAAM,EACX,cAAc,KAAK,0BAA4B,CAAC,EAChD,KAAK,yBAA2B,KAEhCH,EAAa,YAAY,EAAE,kBAAkB,CAC3C,QAAS,+BACT,SAAUd,GACV,aACA,cAAe,UACf,QAAS,4CACT,MAAO,oBACT,CAAC,EACD,KAAK,yBAAyB,CAChC,MAAe,CACb,QAAQ,IAAI,+BAA+B,CAC7C,CACF,EAEA,KAAO,MAAQ,IAAM,CACnB,cAAc,KAAK,yBAA2B,CAAC,EAC/C,KAAK,wBAA0B,IACjC,CArFuB,CAPvB,OAAc,aAAsC,CAClD,OAAKE,EAAuB,WAC1BA,EAAuB,SAAW,IAAIA,GAEjCA,EAAuB,QAChC,CAwFF,ECjGO,IAAMkB,EAAN,cAA0CC,CAAqB,CAIpE,YAAYC,EAAmC,CAC7C,MAAMA,GAAQ,OAAO,EAiDvB,kBAAe,SAAY,CACzB,KAAK,SAAS,aAAa,CAC7B,EAEA,sBAAmB,MAAOC,GAAgC,CACxD,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,GAAM,CAAE,QAAAC,EAAS,QAAAC,CAAQ,EAAI,MAAM,KAAK,cAAc,EAEtD,GAAI,CACF,IAAMC,EACH,MAAM,KAAK,SAAS,iBAAiBH,CAAY,GAAM,CAAC,EAK3D,OAFE,MAAMI,GAAkBD,CAAkB,CAG9C,OAASE,EAAO,CACd,YAAMJ,EAAQ,CAAE,mBAAoB,EAAK,CAAC,EAEpCI,CACR,QAAE,CACAH,EAAQ,QAAQ,CAClB,CACF,EAEA,iBAAc,MAAOI,GAAqB,CACxC,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAUnD,OAPsB,MAAMC,EAAY,CACtC,QAAAD,EACA,kBAAmB,KAAK,SAAS,YAAY,KAAK,KAAK,QAAQ,EAC/D,aAAc,KAAK,aACnB,aAAcE,EAAe,WAC/B,CAAC,CAGH,EAzFE,KAAK,cAAgBT,GAAQ,cAC7B,KAAK,SAAWU,EAAoB,YAAY,EAChD,KAAK,OAAS,KAAK,SAAS,MAAM,KAAK,KAAK,QAAQ,CACtD,CAEA,MAAM,MAAyB,CAC7B,YAAK,kBAAkB,EAChB,KAAK,mBAAmB,CACjC,CAEA,MAAc,oBAAqB,CACjC,IAAMC,EAAUC,EAAgBC,EAAS,CAAC,EAEpCC,EAAwB,MAAM,KAAK,SAAS,KAAK,EAEvD,YAAK,SAAS,aAAa,KAAK,eAAiBH,EAAQ,aAAa,EAElE,KAAK,SACP,KAAK,SAAS,WAAW,KAAK,OAAO,EAGhCG,CACT,CAEA,QAA2B,CACzB,OAAO,KAAK,SAAS,OAAO,CAC9B,CAEA,SAAwB,CACtB,OAAOC,EAAiB,WAC1B,CAEA,YAA0C,CACxC,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,OAAO,KAAK,SAAS,WAAW,CAClC,CAEA,WAAWC,EAAqC,CAC9C,OAAO,KAAK,SAAS,WAAWA,CAAO,CACzC,CAEA,eAAyB,CACvB,OAAO,KAAK,SAAS,cAAc,CACrC,CA4CF,ECpHA,OAAS,qBAAAC,OAAyB,2DAY3B,IAAMC,EAAN,cAAwCC,CAAqB,CAGlE,YAAYC,EAAkB,CAC5B,MAAMA,CAAO,EAwCf,kBAAe,SAAY,CACzB,KAAK,SAAS,aAAa,CAC7B,EAEA,sBAAmB,MAAOC,GAAgC,CACxD,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,GAAM,CAAE,QAAAC,EAAS,QAAAC,CAAQ,EAAI,MAAM,KAAK,cAAc,EAEtD,GAAI,CAIF,OAFG,MAAM,KAAK,SAAS,iBAAiBF,CAAY,GAAM,CAAC,CAG7D,OAASG,EAAO,CACd,YAAMD,EAAQ,CAAE,mBAAoB,EAAM,CAAC,EACrCC,CACR,QAAE,CACAF,EAAQ,QAAQ,CAClB,CACF,EAEA,iBAAc,MAAOG,GAAqB,CACxC,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAUnD,OAPsB,MAAMC,EAAY,CACtC,QAAAD,EACA,kBAAmB,KAAK,SAAS,YAAY,KAAK,KAAK,QAAQ,EAC/D,aAAc,KAAK,aACnB,aAAcE,EAAe,SAC/B,CAAC,CAGH,EA5EE,KAAK,SAAWC,GAAkB,YAAY,EAC9C,KAAK,OAAS,KAAK,SAAS,MAAM,KAAK,KAAK,QAAQ,CACtD,CAEA,MAAM,MAAyB,CAC7B,YAAK,kBAAkB,EAChB,KAAK,mBAAmB,CACjC,CAEA,MAAc,oBAAqB,CACjC,IAAMC,EAAc,MAAM,KAAK,SAAS,KAAK,EAE7C,OAAI,KAAK,SACP,KAAK,WAAW,CAAE,QAAS,KAAK,OAAQ,CAAC,EAGpCA,CACT,CAEA,YAA0C,CACxC,OAAO,KAAK,SAAS,WAAW,CAClC,CAEA,WAAWC,EAAqC,CAC9C,OAAO,KAAK,SAAS,WAAWA,CAAO,CACzC,CAEA,eAAyB,CACvB,OAAO,KAAK,SAAS,cAAc,CACrC,CAEA,QAA2B,CACzB,OAAO,KAAK,SAAS,OAAO,CAC9B,CAEA,SAAwB,CACtB,OAAOC,EAAiB,SAC1B,CAwCF,EC9EO,IAAMC,EAAN,cAAqCC,CAAqB,CAI/D,YAAY,CAAE,QAAAC,EAAS,UAAAC,CAAU,EAAwB,CAAC,EAAG,CAC3D,MAAMD,CAAO,EA8Df,kBAAe,SAAY,CACzB,KAAK,SAAS,aAAa,CAC7B,EAEA,sBAAmB,MAAOE,GAAgC,CACxD,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,GAAM,CAAE,QAAAC,EAAS,QAAAC,CAAQ,EAAI,MAAM,KAAK,cAAc,EAEtD,GAAI,CAMF,OAL2B,MAAMC,EAAiB,CAChD,aAAAH,EACA,WAAY,KAAK,SAAS,iBAAiB,KAAK,KAAK,QAAQ,CAC/D,CAAC,CAGH,OAASI,EAAO,CACd,YAAMF,EAAQ,CAAE,mBAAoB,EAAK,CAAC,EACpCE,CACR,QAAE,CACAH,EAAQ,QAAQ,CAClB,CACF,EAEA,iBAAc,MAAOI,GAAqB,CACxC,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAUnD,OAPsB,MAAMC,EAAY,CACtC,QAAAD,EACA,kBAAmB,KAAK,SAAS,YAAY,KAAK,KAAK,QAAQ,EAC/D,aAAc,KAAK,aACnB,aAAcE,EAAeC,EAAiB,QAAQ,CACxD,CAAC,CAGH,EApGE,KAAK,UAAYT,GAAa,GAC9B,KAAK,SAAWU,GAAe,YAAY,EAC3C,KAAK,OAAS,KAAK,SAAS,MAAM,KAAK,KAAK,QAAQ,CACtD,CAEA,MAAyB,CACvB,YAAK,kBAAkB,EACvB,KAAK,oBAAoB,EAClB,KAAK,mBAAmB,CACjC,CAEQ,qBAAsB,CAC5B,GAAI,KAAK,UACP,OAGF,IAAMC,EAAUC,EAAgBC,EAAS,CAAC,EAE1C,GAAI,CAACF,EAAQ,oBACX,MAAM,IAAI,MAAM,mBAAmB,EAGrC,KAAK,UAAYA,EAAQ,mBAC3B,CAEA,MAAc,oBAAqB,CACjC,aAAM,KAAK,SAAS,KAAK,EAErB,KAAK,SACP,KAAK,WAAW,CAAE,QAAS,KAAK,OAAQ,CAAC,EAG3C,KAAK,SAAS,aAAa,KAAK,SAAS,EAElC,EACT,CAEA,QAA2B,CACzB,OAAO,KAAK,SAAS,OAAO,CAC9B,CAEA,SAAwB,CACtB,OAAOF,EAAiB,QAC1B,CAEA,YAA0C,CACxC,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,OAAO,KAAK,SAAS,WAAW,CAClC,CAEA,WAAWK,EAAqC,CAC9C,KAAK,SAAS,WAAWA,CAAO,CAClC,CAEA,eAAyB,CACvB,OAAO,KAAK,SAAS,cAAc,CACrC,CA0CF,EC3HA,OAGE,qBAAAC,OACK,8CAuBP,IAAMC,GAAwB,CAC5BC,EAAiC,cACjCA,EAAiC,gBACnC,EAMaC,EAAN,cAA4CC,CAAqB,CAOtE,YAAYC,EAAiD,CAC3D,MAAM,EAPR,KAAQ,SAA2C,KAEnD,KAAQ,QAAoB,CAAC,EAC7B,KAAQ,UAAyD,KACjE,KAAU,4BAAsD,KAsNhE,sBAAmB,MAAOC,GAAgC,CACxD,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,GAAM,CAAE,QAAAC,EAAS,QAAAC,CAAQ,EAAI,MAAM,KAAK,cAAc,EAEtD,KAAK,4BAA8B,IAAI,gBACvC,IAAMC,EAAS,KAAK,4BAA4B,OAEhD,GAAI,CACF,IAAMC,EAAe,IAAI,QAAe,CAACC,EAAGC,IAAW,CACrDH,EAAO,iBAAiB,QAAS,IAAM,CACrCG,EAAO,IAAI,MAAM,mBAAmB,CAAC,CACvC,CAAC,CACH,CAAC,EAOD,OAL0C,MAAM,QAAQ,KAAK,CAC3D,KAAK,SAAS,iBAAiBN,CAAY,EAC3CI,CACF,CAAC,CAGH,OAASG,EAAO,CACd,YAAML,EAAQ,CAAE,mBAAoB,EAAK,CAAC,EACpCK,CACR,QAAE,CACAN,EAAQ,QAAQ,CAClB,CACF,EAEA,kBAAe,SAAY,CACzB,KAAK,kBAAkB,CACrB,OAAQL,EAAiC,cACzC,OAAQY,GAAkB,aAC5B,CAAC,EAED,KAAK,6BAA6B,MAAM,CAC1C,EAEA,iBAAc,MAAOC,GAAqB,CACxC,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,KAAK,4BAA8B,IAAI,gBACvC,IAAMN,EAAS,KAAK,4BAA4B,OAE1CC,EAAe,IAAI,QAAe,CAACC,EAAGC,IAAW,CACrDH,EAAO,iBAAiB,QAAS,IAAM,CACrCG,EAAO,IAAI,MAAM,mBAAmB,CAAC,CACvC,CAAC,CACH,CAAC,EAYD,OAVsB,MAAM,QAAQ,KAAK,CACvCI,EAAY,CACV,QAAAD,EACA,kBAAmB,KAAK,SAAS,YAAY,KAAK,KAAK,QAAQ,EAC/D,aAAc,KAAK,aACnB,aAAcE,EAAe,SAC/B,CAAC,EACDP,CACF,CAAC,CAGH,EAnRE,KAAK,OAASL,CAChB,CAEA,MAAM,MAAyB,CAC7B,GAAI,CACF,MAAM,KAAK,mBAAmB,CAChC,MAAQ,CACN,MAAO,EACT,CAEA,MAAO,EACT,CAEA,QAA2B,CACzB,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,OAAO,KAAK,SAAS,OAAO,CAC9B,CAEA,SAAwB,CACtB,OAAOa,EAAiB,aAC1B,CAEA,YAA0C,CACxC,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,OAAO,QAAQ,QAAQ,KAAK,SAAS,WAAW,CAAC,CACnD,CAEA,WAAWC,EAAqC,CAC9C,OAAO,KAAK,UAAU,WAAWA,CAAO,CAC1C,CAEA,eAAyB,CACvB,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,OAAO,KAAK,SAAS,cAAc,CACrC,CAEA,MAAc,oBAAqB,CAGjC,GAFA,MAAM,KAAK,yBAAyB,EAEhC,CAAC,KAAK,OACR,MAAM,IAAI,mCAAwC,EAGpD,GAAM,CAAE,sBAAAC,EAAuB,YAAaC,CAAY,EACtD,MAAM,KAAK,4BAA4B,KAAK,MAAM,EAEpD,KAAK,SAAWD,EAChB,KAAK,QAAUC,EAEf,GAAM,CAAE,IAAAC,EAAM,GAAI,SAAAC,CAAS,EAAI,MAAM,KAAK,SAAS,QAAQ,CACzD,QAAS,KAAK,OAChB,CAAC,EAEKC,EACJ,KAAK,OAAO,uBACZC,EAAoC,sBAEtC,KAAK,UAAYF,EACYG,EAA0B,YAAY,EAC9C,WAAW,CAC9B,MAAOJ,EACP,sBAAuB,GAAGE,CAAqB,mBAAmB,mBAAmBF,CAAG,CAAC,EAC3F,CAAC,CACH,CAEA,MAAc,0BAA2B,CAGvC,GAAI,CAFwB,CAACK,EAAc,EAGzC,OAIF,MAD6BD,EAA0B,YAAY,EACxC,KAAK,KAAK,QAAQ,MAAM,CACrD,CAEA,MAAc,4BAA4BrB,EAA6B,CACrE,IAAMuB,EAAaD,EAAc,EAC3BE,EAAUC,EAAgBC,EAAS,CAAC,EAO1C,GANyBC,EAAyBD,EAAS,CAAC,GAG1D9B,GAAY,KAAKC,EAAiC,sBAAsB,EAGtE,CAACG,GAAQ,yBACX,MAAM,IAAI,mCAAwC,EAWpD,IAAM4B,EAAmB,CACvB,cAToB,IAAM,CAAC,EAU3B,eARqB,IAAM,CAC3BC,EAAa,CACf,EAOE,cALqBC,GAAuC,CAAC,CAM/D,EAEA,GAAI,CACF,GAAM,CACJ,yBAAAC,EACA,uBAAAC,EAAyB,CAAC,EAC1B,4BAAAC,EAA8B,EAChC,EAAIjC,EACEe,EAAwB,IAAImB,EAChCN,EACAJ,EACAS,EACAF,EACAC,CACF,EAEA,aAAMjB,EAAsB,KAAK,EAE1B,CAAE,sBAAAA,EAAuB,YAAAnB,EAAY,CAC9C,OAASuC,EAAK,CACZ,cAAQ,0BAAyCA,CAAG,EAEhDZ,GACF,MAAM,KAAK,OAAO,EAGdY,CACR,CACF,CAEA,MAAM,MAAMC,EAGT,CACD,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,MACR,yDACF,EAGF,IAAMC,EAAY,SAGZ,CACJ,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,GAAI,CACF,MAAM,KAAK,SAAS,KAAK,EACzB,IAAMC,EAAuBjB,EAA0B,YAAY,EAE7D,CAAE,IAAAJ,EAAM,GAAI,SAAUsB,CAAW,EAAI,MAAM,KAAK,SAAS,QAAQ,CACrE,QAAS,KAAK,OAChB,CAAC,EAEKpB,EACJ,KAAK,OAAO,uBACZC,EAAoC,sBAEtCkB,EAAqB,WAAW,CAC9B,MAAOrB,EACP,sBAAuB,GAAGE,CAAqB,mBAAmB,mBAAmBF,CAAG,CAAC,EAC3F,CAAC,EAED,IAAMuB,EAAe,MAAM,KAAK,SAAS,MAAM,CAC7C,SAAUD,EACV,MAAOH,GAAS,KAClB,CAAC,EAEK,CAAE,QAAAK,EAAU,GAAI,UAAAC,EAAY,EAAG,EAAIF,GAAgB,CAAC,EAE1D,OAAAF,EAAqB,YAAY,CAAE,gBAAiB,EAAQG,CAAS,CAAC,EAC/D,CAAE,QAAAA,EAAS,UAAAC,CAAU,CAC9B,MAAQ,CACN,OAAO,MAAML,EAAU,CACzB,CACF,EAEA,GAAI,CAAC,KAAK,UACR,MAAM,IAAI,MAAM,sCAAsC,EAGxD,GAAI,CACF,IAAMM,EAAe,MAAM,KAAK,SAAS,MAAM,CAC7C,SAAU,KAAK,UAAU,KAAK,IAAI,EAClC,MAAOP,GAAS,KAClB,CAAC,EAEK,CAAE,QAAAK,EAAU,GAAI,UAAAC,EAAY,EAAG,EAAIC,GAAgB,CAAC,EAG1D,OAD6BtB,EAA0B,YAAY,EAC9C,YAAY,CAAE,gBAAiB,EAAQoB,CAAS,CAAC,EAC/D,CAAE,QAAAA,EAAS,UAAAC,CAAU,CAC9B,OAASlC,EAAO,CACd,eAAQ,0CAAyCA,CAAK,EAC/C,MAAM6B,EAAU,CACzB,CACF,CAqEA,MAAc,kBAAkB,CAC9B,OAAAO,EACA,OAAAC,CACF,EAGG,CACD,GAAI,CAAC,KAAK,SACR,MAAM,IAAI,oCAAuC,EAGnD,GAAI,CACF,MAAM,KAAK,SAAS,oBAAoB,CACtC,QAAS,CACP,OAAAA,EACA,OAAQ,CAAE,OAAAD,CAAO,CACnB,CACF,CAAC,CACH,OAASpC,EAAO,CACd,QAAQ,6BAAwCA,CAAK,CACvD,CACF,CACF,EC1TO,IAAMsC,EAAN,KAAsB,CAG3B,WAAkB,gBAAgBC,EAA8B,CAC9D,KAAK,iBAAmBA,CAC1B,CAEA,WAAkB,iBAAkB,CAClC,OAAO,KAAK,gBACd,CAEA,aAAoB,OAAO,CACzB,KAAAC,EACA,OAAAC,CACF,EAA4C,CAC1C,IAAIC,EAAoC,KAExC,OAAQF,EAAM,CACZ,KAAKG,EAAiB,UAAW,CAC/BD,EAAkB,IAAIE,EAEtB,KACF,CAEA,KAAKD,EAAiB,YAAa,CACjCD,EAAkB,IAAIG,EAEtB,KACF,CAEA,KAAKF,EAAiB,OAAQ,CAC5BD,EAAkB,IAAII,EAAuB,CAAE,OAAAL,CAAO,CAAC,EAGvD,MAD+BM,EAAuB,YAAY,EACrC,KAAK,EAElC,KACF,CAEA,KAAKJ,EAAiB,SAAU,CAC9BD,EAAkB,IAAIM,EAEtB,KACF,CAEA,KAAKL,EAAiB,QAAS,CAC7B,IAAMM,EAAUC,EAAgBC,EAAS,CAAC,EAE1CT,EAAkB,IAAIG,EAA4B,CAChD,cAAe,GAAGI,EAAQ,aAAa,IAAIG,CAAqB,IAAIT,EAAiB,OAAO,EAC9F,CAAC,EAED,KACF,CAEA,KAAKA,EAAiB,cAAe,CACnC,IAAMU,EAAsBC,EAA4BH,EAAS,CAAC,EAElE,GAAI,CAACE,GAAqB,yBACxB,MAAM,IAAI,mCAAwC,EAGpDX,EAAkB,IAAIa,EAA8B,CAClD,OAAAd,EACA,GAAGY,CACL,CAAC,EAED,KACF,CACA,KAAKV,EAAiB,QAAS,CAC7BD,EAAkB,IAAIc,GACtB,KACF,CAEA,QAAS,CACP,IAAMC,EAAUC,EAAW,EAE3B,QAAWC,KAAkB,KAAK,iBAC5BA,EAAe,OAASnB,IAC1BE,EAAkB,MAAMiB,EAAe,YAAY,CACjD,QAAAF,EACA,OAAAhB,CACF,CAAC,GAGL,KACF,CACF,CAEA,GAAI,CAACC,EACH,MAAM,IAAI,MAAM,2BAA2B,EAG7C,MAAMA,EAAgB,KAAK,EAE3B,IAAMkB,EAAe,IAAIC,EAAanB,CAAe,EACrDoB,EAAmBF,CAAY,EAE/B,IAAMG,EACJ,aAAcrB,GACdA,EAAgB,oBAAoBsB,EAGtC,OAAAC,GACEF,EACI,CAAE,gBAAiBpB,EAAiB,WAAY,EAChD,IACN,EAEOiB,CACT,CAEA,aAAoB,SAAU,CACXM,EAAmB,EAC3B,YAAY,EACrBJ,EAAmB,IAAI,EACvBK,EAAgBxB,EAAiB,IAAI,CACvC,CACF,EAtHaL,EACI,iBAAsC,CAAC,ECZxD,IAAM8B,GAAiB,CACrBC,EACAC,IAEAD,EAAa,KAAME,GAAaA,EAAS,OAASD,CAAI,EAExD,eAAsBE,EAAe,CACnC,QAAAC,EACA,kBAAAC,EACA,aAAAC,EACA,aAAAC,CACF,EAAuD,CAmDrD,OAlDkB,MAAM,IAAI,QAC1B,MAAOC,EAASC,IAAW,CACzB,GAAM,CAAE,QAAAC,EAAS,QAAAC,CAAQ,EAAI,MAAMC,GAA+B,CAChE,aAAAN,CACF,CAAC,EAEKN,EAAe,OAAO,OAAOa,EAAgB,eAAe,EAC5DC,EAA0Bd,EAAa,OAC3C,CAACe,EAAKb,KACJa,EAAIb,EAAS,IAAI,EAAIA,EAAS,KACvBa,GAET,CAAC,CACH,EAEMC,EAAoB,CACxB,GAAGC,EACH,GAAGH,CACL,EAEMI,EAAc,SAAY,CAC9B,MAAMP,EAAQ,CAAE,mBAAoB,EAAK,CAAC,EAC1CF,EAAO,CAAE,0BAAuC,CAAC,CACnD,EAEAC,EAAQ,iDAENQ,CACF,EAEA,IAAMC,EAAcpB,GAAeC,EAAcO,CAAY,EACzDA,EACAa,EAAiB,KAErBV,EAAQ,WAAW,CACjB,KAAMM,EAAkBG,CAAW,EACnC,KAAMA,CACR,CAAC,EAED,GAAI,CACF,IAAME,EAAgB,MAAMhB,EAAkBD,CAAO,EACrDI,EAAQa,CAAa,CACvB,OAASC,EAAK,CACZ,MAAMX,EAAQ,CAAE,mBAAoB,EAAK,CAAC,EAC1CF,EAAOa,CAAG,CACZ,QAAE,CACAZ,EAAQ,QAAQ,CAClB,CACF,CACF,CAEF,CC7EA,eAAsBa,GAAkB,CACtC,QAAAC,EACA,kBAAAC,CACF,EAGqB,CACnB,GAAI,CAMF,OALsB,MAAMC,EAAY,CACtC,QAAAF,EACA,kBAAmBC,EACnB,aAAcE,EAAe,MAC/B,CAAC,CAEH,OAASC,EAAO,CACd,GAAM,CAAE,aAAAC,CAAa,EAAIC,GAAoBF,CAAK,EAClD,MAAMC,EAAe,CAAE,QAASA,CAAa,EAAID,CACnD,CACF",
|
|
4
|
+
"sourcesContent": ["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 { getIsLoggedIn } from 'methods/account/getIsLoggedIn';\nimport {\n ProviderTypeEnum,\n ProviderType\n} from 'providers/types/providerFactory.types';\nimport { createCustomToast } from 'store/actions/toasts/toastsActions';\nimport { IconNamesEnum } from 'types';\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: IconNamesEnum.close,\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 { IconNamesEnum } from 'types';\nimport { ToastManager } from '../../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: IconNamesEnum.close,\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: IconNamesEnum.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 { 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';\nimport { signTransactions } from '../helpers/signTransactions/signTransactions';\n\nexport class IframeProviderStrategy extends BaseProviderStrategy {\n private readonly provider: IframeProvider;\n private walletUrl: string;\n\n constructor({ address, walletUrl }: IframeProviderType = {}) {\n super(address);\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.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 ProviderTypeEnum.metamask;\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 = await signTransactions({\n transactions,\n handleSign: this.provider.signTransactions.bind(this.provider)\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 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[ProviderTypeEnum.metamask]\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 if (this.provider?.isInitialized()) {\n return true;\n }\n\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 { PROVIDER_SEARCH_PARAM } from 'constants/providerFactory.constants';\nimport { CrossWindowProvider } from 'lib/sdkWebWalletCrossWindowProvider';\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 { networkSelector } from 'store/selectors/networkSelectors';\nimport { getState } from 'store/store';\nimport { DappProvider } from './DappProvider/DappProvider';\nimport {\n getAccountProvider,\n setAccountProvider\n} from './helpers/accountProvider';\nimport { clearInitiatedLogins } from './helpers/clearInitiatedLogins';\nimport { WebviewProviderStrategy } from './strategies/WebviewProviderStrategy';\nimport {\n ICustomProvider,\n IProvider,\n IProviderFactory,\n ProviderTypeEnum\n} from './types/providerFactory.types';\n\nexport class ProviderFactory {\n private static _customProviders: ICustomProvider[] = [];\n\n public static set customProviders(providers: ICustomProvider[]) {\n this._customProviders = providers;\n }\n\n public static get customProviders() {\n return this._customProviders;\n }\n\n public static async create({\n type,\n anchor\n }: IProviderFactory): Promise<DappProvider> {\n let createdProvider: IProvider | null = null;\n\n switch (type) {\n case ProviderTypeEnum.extension: {\n createdProvider = new ExtensionProviderStrategy();\n\n break;\n }\n\n case ProviderTypeEnum.crossWindow: {\n createdProvider = new CrossWindowProviderStrategy();\n\n break;\n }\n\n case ProviderTypeEnum.ledger: {\n createdProvider = new LedgerProviderStrategy({ anchor });\n\n const ledgerIdleStateManager = LedgerIdleStateManager.getInstance();\n await ledgerIdleStateManager.init();\n\n break;\n }\n\n case ProviderTypeEnum.metamask: {\n createdProvider = new IframeProviderStrategy();\n\n break;\n }\n\n case ProviderTypeEnum.passkey: {\n const network = networkSelector(getState());\n\n createdProvider = new CrossWindowProviderStrategy({\n walletAddress: `${network.walletAddress}?${PROVIDER_SEARCH_PARAM}=${ProviderTypeEnum.passkey}`\n });\n\n break;\n }\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 'provider' in createdProvider &&\n createdProvider.provider instanceof CrossWindowProvider;\n\n // Clear initiated logins and skip the login method if it's crossWindow or metamask\n clearInitiatedLogins(\n shouldClearInitiatedLogins\n ? { skipLoginMethod: ProviderTypeEnum.crossWindow }\n : 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 { providerLabels } from 'constants/providerFactory.constants';\nimport { Message } from 'lib/sdkCore';\nimport { PendingTransactionsEventsEnum } from 'managers/internal/PendingTransactionsStateManager/types/pendingTransactions.types';\nimport { ProviderFactory } from 'providers/ProviderFactory';\nimport {\n ProviderType,\n ProviderTypeEnum,\n ICustomProvider\n} from 'providers/types/providerFactory.types';\nimport { SigningWarningsEnum } from 'types/enums.types';\nimport { getPendingTransactionsHandlers } from '../getPendingTransactionsHandlers';\n\ntype SignMessageWithModalPropsType<T> = {\n message: Message;\n handleSignMessage: (message: Message) => Promise<Message>;\n cancelAction?: () => Promise<T> | undefined;\n providerType: string;\n};\n\nconst isProviderType = (\n allProviders: ICustomProvider[],\n type: string\n): type is ProviderType =>\n allProviders.some((provider) => provider.type === type);\n\nexport async function signMessage<T>({\n message,\n handleSignMessage,\n cancelAction,\n providerType\n}: SignMessageWithModalPropsType<T>): Promise<Message> {\n const signedMsg = await new Promise<Awaited<Message>>(\n async (resolve, reject) => {\n const { manager, onClose } = await getPendingTransactionsHandlers({\n cancelAction\n });\n\n const allProviders = Object.values(ProviderFactory.customProviders);\n const allCustomProviderLabels = allProviders.reduce(\n (acc, provider) => {\n acc[provider.type] = provider.name;\n return acc;\n },\n {} as Record<ProviderType, string>\n );\n\n const allProviderLabels = {\n ...providerLabels,\n ...allCustomProviderLabels\n };\n\n const handleClose = async () => {\n await onClose({ shouldCancelAction: true });\n reject({ message: SigningWarningsEnum.cancelled });\n };\n\n manager.subscribeToEventBus(\n PendingTransactionsEventsEnum.CLOSE,\n handleClose\n );\n\n const providerKey = isProviderType(allProviders, providerType)\n ? providerType\n : ProviderTypeEnum.none;\n\n manager.updateData({\n name: allProviderLabels[providerKey],\n type: providerKey\n });\n\n try {\n const signedMessage = await handleSignMessage(message);\n resolve(signedMessage);\n } catch (err) {\n await onClose({ shouldCancelAction: true });\n reject(err);\n } finally {\n manager.closeUI();\n }\n }\n );\n return signedMsg;\n}\n", "import { providerLabels } from 'constants/providerFactory.constants';\nimport { Message } from 'lib/sdkCore';\nimport { getLedgerErrorCodes } from './getLedgerErrorCodes';\nimport { signMessage } from '../../helpers/signMessage/signMessage';\n\nexport async function signLedgerMessage({\n message,\n handleSignMessage\n}: {\n message: Message;\n handleSignMessage: (msg: Message) => Promise<Message>;\n}): Promise<Message> {\n try {\n const signedMessage = await signMessage({\n message,\n handleSignMessage: handleSignMessage,\n providerType: providerLabels.ledger\n });\n return signedMessage;\n } catch (error) {\n const { errorMessage } = getLedgerErrorCodes(error);\n throw errorMessage ? { message: errorMessage } : error;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["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", "IframeProviderStrategy", "BaseProviderStrategy", "address", "walletUrl", "transactions", "manager", "onClose", "signTransactions", "error", "message", "signMessage", "providerLabels", "ProviderTypeEnum", "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", "network", "networkSelector", "getState", "PROVIDER_SEARCH_PARAM", "walletConnectConfig", "walletConnectConfigSelector", "WalletConnectProviderStrategy", "WebviewProviderStrategy", "address", "getAddress", "customProvider", "dappProvider", "DappProvider", "setAccountProvider", "shouldClearInitiatedLogins", "CrossWindowProvider", "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 e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-NMVLXQXY.mjs";async function i(a){let n=e.getInstance();return await n.openUI(),{manager:n,onClose:async({shouldCancelAction:t=!0}={})=>{n.closeUI(),t&&a?.cancelAction&&await a.cancelAction()}}}export{i as a};
|
|
2
|
+
//# sourceMappingURL=chunk-JICJ7JNX.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as p}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as p}from"./chunk-TEIODZEN.mjs";import{a as u}from"./chunk-REYJ4EFS.mjs";import{a as i}from"./chunk-W5MTQBQF.mjs";import{a as T}from"./chunk-HMAL7GVA.mjs";import{a as m}from"./chunk-U3UMCTU6.mjs";import{a as k}from"./chunk-YJCTRUJT.mjs";import{c as l}from"./chunk-PJWJZHIS.mjs";import{a as o}from"./chunk-KSC3RFHN.mjs";var g=class{static async processTransactions({address:v,egldLabel:L,explorerAddress:a,transactions:h}){let f=h.map(e=>T({address:v,explorerAddress:a,transaction:e}));return await Promise.all(f.map(async e=>{let s=e.receiverAssets?.name.replace(/\p{Emoji}/gu,""),c=e.senderAssets?.name.replace(/\p{Emoji}/gu,""),{senderLockedAccount:D,receiverLockedAccount:x}=await p({receiver:e.receiver,sender:e.sender,tokenId:e.tokenIdentifier}),{egldValueData:t,tokenValueData:n,nftValueData:r}=u({transaction:e}),y=r?.token.type==="MetaESDT"?void 0:r?.badgeText,d=m.getData({input:t?.value??n?.value??r?.value??"",decimals:t?.decimals??n?.decimals??r?.decimals??l,digits:2}),S={badge:y??void 0,collection:n?.token.collection??r?.token.collection,egldLabel:t?L:"",link:k({explorerAddress:a,to:n?.tokenExplorerLink??r?.tokenExplorerLink??""}),linkText:n?.tokenLinkText??r?.tokenLinkText,name:n?.token.name??r?.token.name,showFormattedAmount:!!(t||n?.tokenFormattedAmount||r?.tokenFormattedAmount),svgUrl:n?.token.svgUrl??r?.token.svgUrl,ticker:n?.token.ticker??r?.token.ticker,titleText:n?.titleText??r?.titleText,valueDecimal:d.valueDecimal,valueInteger:d.valueInteger},w=i(e.receiverShard),A=i(e.senderShard);return{age:e.transactionDetails.age,direction:e.transactionDetails.direction,method:e.transactionDetails.method,iconInfo:e.transactionDetails.iconInfo,link:e.links.transactionLink??"",txHash:e.txHash,receiver:{address:e.receiver,name:s??"",description:`${s??e.receiver} (${e.receiver})`,isContract:o(e.receiver),isTokenLocked:!!x,link:e.links.receiverLink??"",shard:w,shardLink:e.links.receiverShardLink,showLink:e.transactionDetails.direction!=="In"},sender:{address:e.sender,name:c??"",description:`${c??e.sender} (${e.sender})`,isContract:o(e.sender),isTokenLocked:!!D,link:e.links.senderLink??"",shard:A,shardLink:e.links.senderShardLink,showLink:e.transactionDetails.direction!=="Out"},value:S}}))}};export{g as a};
|
|
2
|
+
//# sourceMappingURL=chunk-JIWOIKIN.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-KXJUK6CN.mjs";async function i(n){if(!(typeof t.navigator<"u"&&t.navigator.product==="ReactNative"||!t))try{(await import("@multiversx/sdk-dapp-ui")).defineCustomElements(n)}catch(e){console.warn("@multiversx/sdk-dapp-ui not found"+e)}}export{i as a};
|
|
2
|
+
//# sourceMappingURL=chunk-JO4RFE6Y.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a}from"./chunk-VTPHR6O5.mjs";var i=e=>{let t=a();return{origin:e?.origin??t.origin,blockHashShard:e?.blockHashShard,expirySeconds:e?.expirySeconds??t.expirySeconds,apiAddress:e?.apiAddress??t.apiAddress,tokenExpirationToastWarningSeconds:e?.tokenExpirationToastWarningSeconds??t.tokenExpirationToastWarningSeconds,extraInfo:e?.extraInfo??{},gatewayUrl:e?.gatewayUrl,extraRequestHeaders:e?.extraRequestHeaders??{}}};export{i as a};
|
|
2
|
+
//# sourceMappingURL=chunk-KAZ44D6B.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-MPQUPJUO.mjs";async function g({originalLoginToken:i,extraInfoData:n,address:o}){let e=await t({loginToken:i,extraInfoData:n}),s=n.multisig||n.impersonate||o;return{address:e!=null?s:o,modifiedLoginToken:e}}export{g as a};
|
|
2
|
+
//# sourceMappingURL=chunk-KW67U7EN.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/constants/window.constants.ts"],
|
|
4
|
-
"sourcesContent": ["export const safeWindow: Window =\n typeof window !== 'undefined' ? window : ({} as Window);\n\nexport const version = '5.2.
|
|
4
|
+
"sourcesContent": ["export const safeWindow: Window =\n typeof window !== 'undefined' ? window : ({} as Window);\n\nexport const version = '5.2.13'; // will be replaced at build time\n"],
|
|
5
5
|
"mappings": "AAAO,IAAMA,EACX,OAAO,OAAW,IAAc,OAAU,CAAC,EAEhCC,EAAU",
|
|
6
6
|
"names": ["safeWindow", "version"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-KXJUK6CN.mjs";var t=()=>{if(!e)return"";try{let r=e.document?.referrer;return r?new URL(r).origin:""}catch(r){return console.error(r),""}};export{t as a};
|
|
2
|
+
//# sourceMappingURL=chunk-LKYNZMTI.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as u}from"./chunk-NGM3AVCY.mjs";import{s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as u}from"./chunk-NGM3AVCY.mjs";import{s}from"./chunk-VJN2RF4O.mjs";import{e as a}from"./chunk-UERJ6AKK.mjs";function x(n){let e=s(),o=u(e),c=a(e),t=Object.keys(o).map(Number).reduce((r,m)=>{let i=o[m]?.transactions||[];return Math.max(r,...i.map(l=>l.nonce),0)},0);return t>0&&(t+=1),n==null?Math.max(t,c):Math.max(t,n.nonce,c)}export{x as a};
|
|
2
|
+
//# sourceMappingURL=chunk-LMULG6DX.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-GPRR7WIH.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-MH24PY4N.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as r}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as r}from"./chunk-NE6ED6BJ.mjs";import{a as o}from"./chunk-WE7YOBO7.mjs";async function p({loginToken:i,extraInfoData:n}){if(i==null||Object.keys(n).length===0)return null;let t=o(String(i)),{timestamp:e,...a}=t?.extraInfo||{};if(!(t&&e!=null))return null;let s={hash:String(t?.blockHash),timestamp:Number(e)};return await r({extraInfo:{...a,...n},expirySeconds:t?.ttl,origin:t?.origin}).initialize({latestBlockInfo:s})}export{p as a};
|
|
2
|
+
//# sourceMappingURL=chunk-MPQUPJUO.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-55W25Q35.mjs";import{a as r}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-55W25Q35.mjs";import{a as r}from"./chunk-UK2P24V6.mjs";import a from"lodash.isempty";var e=async({transactionsSessions:t})=>{if(a(t))return[];let i=s(t);return r({transactions:i})};export{e as a};
|
|
2
|
+
//# sourceMappingURL=chunk-MT3MZ6SJ.mjs.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as d}from"./chunk-CZEUFCPN.mjs";import{a as s}from"./chunk-JFP2BITI.mjs";import{d as t}from"./chunk-JH7DXVOH.mjs";import{a as l}from"./chunk-GPRR7WIH.mjs";import{s as r}from"./chunk-VJN2RF4O.mjs";import{b as o}from"./chunk-7VHTZYM2.mjs";var e=class e extends l{constructor(){super({uiTag:"mvx-unlock-panel",uiDataUpdateEvent:"OPEN"});this.initialData={providers:null,walletAddress:null};this.openUnlockPanel=async()=>{let{walletAddress:n}=o(r()),i=d(t.customProviders,e.allowedProviders);this.data={providers:i,walletAddress:n},await this.openUI(),this.notifyDataUpdate()};this.setupEventListeners=async()=>{this.eventBus&&(this.subscribeToEventBus("LOGIN",this.handleLogin),this.subscribeToEventBus("CANCEL_LOGIN",this.handleCancelLogin),this.subscribeToEventBus("CLOSE",this.handleCloseUI))};this.handleCloseUI=async n=>{!n?.isLoginFinished&&e.onClose&&e.onClose(),this.closeUI()};this.handleLogin=async({type:n,anchor:i})=>{if(!e.loginHandler)throw new Error("Login callback not initialized. Please call `init()` first.");try{s(e.loginHandler)?(await(await t.create({type:n,anchor:i})).login(),e.loginHandler()):e.loginHandler({type:n,anchor:i}),await this.handleCloseUI({isLoginFinished:!0})}catch(a){console.error(a),this.eventBus?.publish("CANCEL_IN_PROVIDER",this.data)}};this.handleCancelLogin=async()=>{await t.destroy()};this.data=this.initialData}static getInstance(){return e.instance||(e.instance=new e),e.instance}static init(n){return this.loginHandler=n.loginHandler,this.allowedProviders=n.allowedProviders,n.onClose&&(this.onClose=n.onClose),this.getInstance()}};e.loginHandler=null,e.onClose=null,e.allowedProviders=null;var c=e;export{c as a};
|
|
2
|
+
//# sourceMappingURL=chunk-N72FHB5Q.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/managers/UnlockPanelManager/UnlockPanelManager.ts"],
|
|
4
|
+
"sourcesContent": ["import { UITagsEnum } from 'constants/UITags.enum';\nimport { MvxUnlockPanel } from 'lib/sdkDappUi';\nimport { ProviderFactory } from 'providers/ProviderFactory';\nimport {\n IProviderBase,\n IProviderFactory,\n ProviderType\n} from 'providers/types/providerFactory.types';\nimport { networkSelector } from 'store/selectors';\nimport { getState } from 'store/store';\nimport {\n OnCloseUnlockPanelType,\n LoginHandlerType,\n UnlockPanelEventsEnum,\n UnlockPanelManagerInitParamsType\n} from './UnlockPanelManager.types';\nimport { SidePanelBaseManager } from '../internal/SidePanelBaseManager';\nimport { getIsSimpleLoginCallback } from './helpers/getIsSimpleLoginCallback';\nimport { getProvidersList } from './helpers/getProviderList';\n\ninterface IUnlockPanelManagerData {\n providers: IProviderBase[] | null;\n walletAddress: string | null;\n}\n\nexport class UnlockPanelManager extends SidePanelBaseManager<\n MvxUnlockPanel,\n IUnlockPanelManagerData,\n UnlockPanelEventsEnum\n> {\n protected initialData: IUnlockPanelManagerData = {\n providers: null,\n walletAddress: null\n };\n\n private static instance: UnlockPanelManager;\n private static loginHandler: LoginHandlerType | null = null;\n private static onClose: OnCloseUnlockPanelType | null = null;\n private static allowedProviders?: ProviderType[] | null = null;\n\n constructor() {\n super({\n uiTag: UITagsEnum.UNLOCK_PANEL,\n uiDataUpdateEvent: UnlockPanelEventsEnum.OPEN\n });\n\n this.data = this.initialData;\n }\n\n public static getInstance(): UnlockPanelManager {\n if (!UnlockPanelManager.instance) {\n UnlockPanelManager.instance = new UnlockPanelManager();\n }\n return UnlockPanelManager.instance;\n }\n\n public static init(params: UnlockPanelManagerInitParamsType) {\n this.loginHandler = params.loginHandler;\n this.allowedProviders = params.allowedProviders;\n\n if (params.onClose) {\n this.onClose = params.onClose;\n }\n\n return this.getInstance();\n }\n\n public openUnlockPanel = async () => {\n const { walletAddress } = networkSelector(getState());\n\n const providers = getProvidersList(\n ProviderFactory.customProviders,\n UnlockPanelManager.allowedProviders\n );\n\n this.data = {\n providers,\n walletAddress\n };\n\n await this.openUI();\n this.notifyDataUpdate();\n };\n\n protected setupEventListeners = async () => {\n if (!this.eventBus) {\n return;\n }\n\n this.subscribeToEventBus(UnlockPanelEventsEnum.LOGIN, this.handleLogin);\n this.subscribeToEventBus(\n UnlockPanelEventsEnum.CANCEL_LOGIN,\n this.handleCancelLogin\n );\n this.subscribeToEventBus(UnlockPanelEventsEnum.CLOSE, this.handleCloseUI);\n };\n\n private readonly handleCloseUI = async (options?: {\n isLoginFinished?: boolean;\n }) => {\n if (!options?.isLoginFinished && UnlockPanelManager.onClose) {\n UnlockPanelManager.onClose();\n }\n\n this.closeUI();\n };\n\n private readonly handleLogin = async ({ type, anchor }: IProviderFactory) => {\n if (!UnlockPanelManager.loginHandler) {\n throw new Error(\n 'Login callback not initialized. Please call `init()` first.'\n );\n }\n\n try {\n if (getIsSimpleLoginCallback(UnlockPanelManager.loginHandler)) {\n const provider = await ProviderFactory.create({ type, anchor });\n await provider.login();\n UnlockPanelManager.loginHandler();\n } else {\n UnlockPanelManager.loginHandler({ type, anchor });\n }\n await this.handleCloseUI({ isLoginFinished: true });\n } catch (error) {\n console.error(error);\n this.eventBus?.publish(\n UnlockPanelEventsEnum.CANCEL_IN_PROVIDER,\n this.data\n );\n }\n };\n\n private readonly handleCancelLogin = async () => {\n await ProviderFactory.destroy();\n };\n}\n"],
|
|
5
|
+
"mappings": "sPAyBO,IAAMA,EAAN,MAAMA,UAA2BC,CAItC,CAWA,aAAc,CACZ,MAAM,CACJ,yBACA,wBACF,CAAC,EAdH,KAAU,YAAuC,CAC/C,UAAW,KACX,cAAe,IACjB,EAkCA,KAAO,gBAAkB,SAAY,CACnC,GAAM,CAAE,cAAAC,CAAc,EAAIC,EAAgBC,EAAS,CAAC,EAE9CC,EAAYC,EAChBC,EAAgB,gBAChBP,EAAmB,gBACrB,EAEA,KAAK,KAAO,CACV,UAAAK,EACA,cAAAH,CACF,EAEA,MAAM,KAAK,OAAO,EAClB,KAAK,iBAAiB,CACxB,EAEA,KAAU,oBAAsB,SAAY,CACrC,KAAK,WAIV,KAAK,4BAAiD,KAAK,WAAW,EACtE,KAAK,mCAEH,KAAK,iBACP,EACA,KAAK,4BAAiD,KAAK,aAAa,EAC1E,EAEA,KAAiB,cAAgB,MAAOM,GAElC,CACA,CAACA,GAAS,iBAAmBR,EAAmB,SAClDA,EAAmB,QAAQ,EAG7B,KAAK,QAAQ,CACf,EAEA,KAAiB,YAAc,MAAO,CAAE,KAAAS,EAAM,OAAAC,CAAO,IAAwB,CAC3E,GAAI,CAACV,EAAmB,aACtB,MAAM,IAAI,MACR,6DACF,EAGF,GAAI,CACEW,EAAyBX,EAAmB,YAAY,GAE1D,MADiB,MAAMO,EAAgB,OAAO,CAAE,KAAAE,EAAM,OAAAC,CAAO,CAAC,GAC/C,MAAM,EACrBV,EAAmB,aAAa,GAEhCA,EAAmB,aAAa,CAAE,KAAAS,EAAM,OAAAC,CAAO,CAAC,EAElD,MAAM,KAAK,cAAc,CAAE,gBAAiB,EAAK,CAAC,CACpD,OAASE,EAAO,CACd,QAAQ,MAAMA,CAAK,EACnB,KAAK,UAAU,6BAEb,KAAK,IACP,CACF,CACF,EAEA,KAAiB,kBAAoB,SAAY,CAC/C,MAAML,EAAgB,QAAQ,CAChC,EAxFE,KAAK,KAAO,KAAK,WACnB,CAEA,OAAc,aAAkC,CAC9C,OAAKP,EAAmB,WACtBA,EAAmB,SAAW,IAAIA,GAE7BA,EAAmB,QAC5B,CAEA,OAAc,KAAKa,EAA0C,CAC3D,YAAK,aAAeA,EAAO,aAC3B,KAAK,iBAAmBA,EAAO,iBAE3BA,EAAO,UACT,KAAK,QAAUA,EAAO,SAGjB,KAAK,YAAY,CAC1B,CAsEF,EA9Gab,EAWI,aAAwC,KAX5CA,EAYI,QAAyC,KAZ7CA,EAaI,iBAA2C,KAbrD,IAAMc,EAANd",
|
|
6
|
+
"names": ["_UnlockPanelManager", "SidePanelBaseManager", "walletAddress", "networkSelector", "getState", "providers", "getProvidersList", "ProviderFactory", "options", "type", "anchor", "getIsSimpleLoginCallback", "error", "params", "UnlockPanelManager"]
|
|
7
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as u}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as u}from"./chunk-MDVHLIC7.mjs";import{a as f}from"./chunk-NE6ED6BJ.mjs";import{a as g}from"./chunk-VTPHR6O5.mjs";import{b as a}from"./chunk-VJN2RF4O.mjs";import{c as s,g as r}from"./chunk-NTEMINYA.mjs";var v=async({signMessageCallback:m,nativeAuthClientConfig:o})=>{let{address:t}=u(),c=g(),i=f(o||c),e=await i.initialize({noCache:!!o});if(!e)return null;let h=new r({address:new s(t),data:Buffer.from(`${t}${e}`)}),n=await m(h,{});if(!n?.signature)throw"Message not signed";return a({loginToken:e,signature:Buffer.from(n.signature).toString("hex")}),i.getToken({address:t,token:e,signature:Buffer.from(n.signature).toString("hex")})};export{v as a};
|
|
2
|
+
//# sourceMappingURL=chunk-NCH6SFZ2.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as g}from"./chunk-3S57OP4Z.mjs";import{a as l}from"./chunk-QTKK6OSJ.mjs";import{a as h}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as g}from"./chunk-3S57OP4Z.mjs";import{a as l}from"./chunk-QTKK6OSJ.mjs";import{a as h}from"./chunk-KAZ44D6B.mjs";import{NativeAuthClient as y}from"@multiversx/sdk-native-auth-client";var H=f=>{let{origin:o,apiAddress:i,expirySeconds:r,blockHashShard:s,extraInfo:u,gatewayUrl:d,extraRequestHeaders:k}=h(f),e=new y({origin:o,apiUrl:i,expirySeconds:r,blockHashShard:s,gatewayUrl:d,extraRequestHeaders:k});return{initialize:async t=>{if(!i||!o)return"";let a=()=>e.getCurrentBlockHash(),n=t?.latestBlockInfo;n??=await g({apiAddress:i,blockHashShard:s,getBlockHash:a,noCache:t?.noCache});let{hash:p,timestamp:c}=n,m=e.encodeValue(JSON.stringify({...t?.extraInfo??u,...c?{timestamp:c}:{}}));return`${e.encodeValue(o)}.${p}.${r}.${m}`},getToken:({address:t,token:a,signature:n})=>e.getToken(t,a,n),getTokenExpiration:l}};export{H as a};
|
|
2
|
+
//# sourceMappingURL=chunk-NE6ED6BJ.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-GPRR7WIH.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-NMVLXQXY.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as r,c as n}from"./chunk-QJGFIK7H.mjs";import{x as g}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as r,c as n}from"./chunk-QJGFIK7H.mjs";import{x as g}from"./chunk-GEPV5HLA.mjs";import{q as M}from"./chunk-VJN2RF4O.mjs";import{a as d}from"./chunk-UERJ6AKK.mjs";import{a as u,c as p,g as l}from"./chunk-NTEMINYA.mjs";import{a as c}from"./chunk-KXJUK6CN.mjs";var m=class{constructor({onLoginCancelled:e}){this.handlers=new Map;this.store=M();this.isLoginInitiated=!1;this.handleMessage=this.handleMessage.bind(this),this.handleLoginCancelled=e}startListening(){c.addEventListener("message",this.handleMessage)}stopListening(){c.removeEventListener("message",this.handleMessage)}registerEvent(e,s){this.handlers.set(e,s)}unregisterEvent(e){this.handlers.delete(e)}async handleMessage(e){let s=e.data?.type;if(typeof s=="string"&&this.handlers.has(s))return this.handlers.get(s)?.(e);switch(s){case r.finalizeHandshakeRequest:this.handshake({event:e});break;case r.signMessageRequest:this.signMessage({event:e,payload:e.data.payload});break;case r.loginRequest:this.isLoginInitiated=!0,this.login({event:e,payload:e.data.payload});break;case r.signTransactionsRequest:this.signTransactions({event:e});break;case n.cancelResponse:case"cancelAction":this.isLoginInitiated&&await this.handleLoginCancelled();break;default:break}}async login({event:e,payload:s}){let a=s?.token;if(a)try{let{address:t}=d(this.store.getState()),o=g(),i=`${t}${a}`,y=new l({address:new p(t),data:new Uint8Array(Buffer.from(i))}),f=(await o.signMessage(y))?.signature??"";e.source?.postMessage({type:n.loginResponse,payload:{data:{address:t,signature:Buffer.from(f).toString("hex")}}},{targetOrigin:e.origin})}catch{this.isLoginInitiated&&(await this.handleLoginCancelled(),e.source?.postMessage({type:n.cancelResponse,payload:null},{targetOrigin:e.origin}))}finally{this.isLoginInitiated=!1}}handshake({event:e}){let s=Date.now().toString();e.source?.postMessage({type:n.finalizeHandshakeResponse,payload:{data:s}},{targetOrigin:e.origin})}async signMessage({event:e,payload:s}){let{address:a}=d(this.store.getState()),{message:t}=s;try{let o=new l({address:new p(a),data:new Uint8Array(Buffer.from(t))}),h=(await g().signMessage(o))?.signature??"";e.source?.postMessage({type:n.signMessageResponse,payload:{data:{signature:Buffer.from(h).toString("hex"),status:"signed"}}},{targetOrigin:e.origin})}catch{throw new Error("Could not sign message")}}async signTransactions({event:e}){let s=g(),{payload:a}=e.data;if(Array.isArray(a))try{let t=a.map(i=>u.newFromPlainObject(i)),o=await s.signTransactions(t);e.source?.postMessage({type:n.signTransactionsResponse,payload:{data:o.map(i=>i.toPlainObject())}},{targetOrigin:e.origin})}catch{throw new Error("Could not sign transactions")}}};export{m as a};
|
|
2
|
+
//# sourceMappingURL=chunk-OVD6R5BF.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{e as o,f as a,g as i,h as r}from"./chunk-NGM3AVCY.mjs";import{s as c}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{e as o,f as a,g as i,h as r}from"./chunk-NGM3AVCY.mjs";import{s as c}from"./chunk-VJN2RF4O.mjs";function b(){let t=c(),l=r(t),u=i(t),T=a(t),d=o(t),e=Object.keys(d)?.length>0,n=!e&&Object.keys(l)?.length>0,s=!e&&!n&&Object.keys(u)?.length>0,f=!e&&!n&&!s&&Object.keys(T).length>0;return{pending:e,timedOut:n,fail:s,success:f}}export{b as a};
|
|
2
|
+
//# sourceMappingURL=chunk-QAKIMRWO.mjs.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as A}from"./chunk-VVMACGAC.mjs";import{a as s}from"./chunk-3XTDNJEI.mjs";import{a as h}from"./chunk-B2RDSGON.mjs";import{a as b}from"./chunk-JH4L2BAI.mjs";import{b as L}from"./chunk-CO55WDEX.mjs";import{a as I}from"./chunk-YJCTRUJT.mjs";import{f as p}from"./chunk-VJN2RF4O.mjs";import{a as f}from"./chunk-KD2IQ32V.mjs";import{a as x}from"./chunk-LJX4MW7B.mjs";import{BigNumber as C}from"bignumber.js";async function H({options:d,config:u,provider:a,login:m}){let e=A.getInstance(),k=b(),T=h({loginToken:d?.token,version:u.version}),o={manager:e,provider:a};await s(o);let t=await new Promise(async function(P,w){async function i(r){let n=e?e.addressesPerPage??1:1,l=new C(r-1).times(n);e?.updateStartIndex(Math.max(0,parseInt(l.toString()))),await s(o)}async function c(r){if(!(!a||!m)){e?.updateConfirmScreen({...T,selectedAddress:r.selectedAddress,explorerLink:I({to:`/${f}/${r.selectedAddress}`,explorerAddress:k})});try{let n=d?.token?await a.tokenLogin({token:Buffer.from(`${d?.token}{}`),addressIndex:r.addressIndex}):await m({addressIndex:r.addressIndex});e.unsubscribeFromAuthEvents({handleCancel:g,handleAccessWallet:c,handleGoToPage:i}),P({address:n.address,signature:n.signature?n.signature.toString("hex"):"",addressIndex:r.addressIndex})}catch(n){console.error("User rejected login:",n),!!e?.getConfirmScreenData()&&await s(o)}}}async function g(){await s(o),e.unsubscribeFromAuthEvents({handleCancel:g,handleAccessWallet:c,handleGoToPage:i}),w("User cancelled login")}e.subscribeToAuthEvents({handleCancel:g,handleAccessWallet:c,handleGoToPage:i})}),{version:v,dataEnabled:E}=u;return p({index:t.addressIndex,loginType:x.ledger}),L({address:t.address,index:t.addressIndex,version:v,hasContractDataEnabled:E}),{address:t.address,signature:t.signature}}export{H as a};
|
|
2
|
+
//# sourceMappingURL=chunk-QY6K7L4I.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/providers/strategies/LedgerProviderStrategy/helpers/authenticateLedgerAccount.ts"],
|
|
4
|
-
"sourcesContent": ["import { HWProvider } from '@multiversx/sdk-hw-provider/out';\nimport { BigNumber } from 'bignumber.js';\n\nimport { ACCOUNTS_ENDPOINT } from 'apiCalls';\nimport { IEventBus } from 'lib/sdkDappUi';\nimport { LedgerConnectStateManager } from 'managers/internal/LedgerConnectStateManager/LedgerConnectStateManager';\nimport { getExplorerAddress } from 'methods/network/getExplorerAddress';\nimport { ProviderTypeEnum } from 'providers/types/providerFactory.types';\nimport { setLedgerAccount } from 'store/actions';\nimport { setLedgerLogin } from 'store/actions/loginInfo/loginInfoActions';\nimport { getExplorerLink } from 'utils/transactions/getExplorerLink';\n\nimport { getAuthTokenText } from './getAuthTokenText';\nimport { updateAccountsList } from './updateAccountsList';\nimport {\n LedgerConfigType,\n LedgerLoginType\n} from '../types/ledgerProvider.types';\n\ninterface IGetLedgerLogin {\n options?: {\n callbackUrl?: string;\n token?: string;\n };\n config: LedgerConfigType;\n provider: HWProvider | null;\n eventBus?: IEventBus | null;\n login: LedgerLoginType | null;\n}\n\ninterface ISelectedAccount {\n address: string;\n signature: string;\n addressIndex: number;\n}\n\nexport async function authenticateLedgerAccount({\n options,\n config,\n provider,\n login\n}: IGetLedgerLogin) {\n const manager = LedgerConnectStateManager.getInstance();\n\n const explorerAddress = getExplorerAddress();\n\n const authData = getAuthTokenText({\n loginToken: options?.token,\n version: config.version\n });\n\n const accountsListProps = {\n manager,\n provider\n };\n\n // refresh account list\n await updateAccountsList(accountsListProps);\n\n // cycle through accounts until user makes a choice\n const selectedAccount = await new Promise<ISelectedAccount>(async function (\n resolve,\n reject\n ) {\n async function handleGoToPage(page: number) {\n const addressesPerPage = manager ? manager.addressesPerPage ?? 1 : 1;\n const startIndex = new BigNumber(page - 1).times(addressesPerPage);\n\n manager?.updateStartIndex(Math.max(0, parseInt(startIndex.toString())));\n await updateAccountsList(accountsListProps);\n }\n\n async function handleAccessWallet(payload: {\n addressIndex: number;\n selectedAddress: string;\n }) {\n if (!provider || !login) {\n return;\n }\n\n manager?.updateConfirmScreen({\n ...authData,\n selectedAddress: payload.selectedAddress,\n explorerLink: getExplorerLink({\n to: `/${ACCOUNTS_ENDPOINT}/${payload.selectedAddress}`,\n explorerAddress\n })\n });\n\n try {\n const loginInfo = options?.token\n ? await provider.tokenLogin({\n token: Buffer.from(`${options?.token}{}`),\n addressIndex: payload.addressIndex\n })\n : await login({\n addressIndex: payload.addressIndex\n });\n\n resolve({\n address: loginInfo.address,\n signature: loginInfo.signature\n ? loginInfo.signature.toString('hex')\n : '',\n addressIndex: payload.addressIndex\n });\n } catch (err) {\n console.error('User rejected login:', err);\n\n const shouldGoBack = Boolean(manager?.getConfirmScreenData());\n if (shouldGoBack) {\n await updateAccountsList(accountsListProps);\n }\n }\n }\n\n async function handleCancel() {\n await updateAccountsList(accountsListProps);\n manager.unsubscribeFromAuthEvents({\n handleCancel,\n handleAccessWallet,\n handleGoToPage\n });\n reject('User cancelled login');\n }\n\n manager.subscribeToAuthEvents({\n handleCancel,\n handleAccessWallet,\n handleGoToPage\n });\n });\n\n const { version, dataEnabled } = config;\n\n // login is finished, data can be persisted in the store\n setLedgerLogin({\n index: selectedAccount.addressIndex,\n loginType: ProviderTypeEnum.ledger\n });\n\n setLedgerAccount({\n address: selectedAccount.address,\n index: selectedAccount.addressIndex,\n version,\n hasContractDataEnabled: dataEnabled\n });\n\n return {\n address: selectedAccount.address,\n signature: selectedAccount.signature\n };\n}\n"],
|
|
5
|
-
"mappings": "iXACA,OAAS,aAAAA,MAAiB,eAmC1B,eAAsBC,EAA0B,CAC9C,QAAAC,EACA,OAAAC,EACA,SAAAC,EACA,MAAAC,CACF,EAAoB,CAClB,IAAMC,EAAUC,EAA0B,YAAY,EAEhDC,EAAkBC,EAAmB,EAErCC,EAAWC,EAAiB,CAChC,WAAYT,GAAS,MACrB,QAASC,EAAO,OAClB,CAAC,EAEKS,EAAoB,CACxB,QAAAN,EACA,SAAAF,CACF,EAGA,MAAMS,EAAmBD,CAAiB,EAG1C,IAAME,EAAkB,MAAM,IAAI,QAA0B,eAC1DC,EACAC,EACA,CACA,eAAeC,EAAeC,EAAc,CAC1C,IAAMC,EAAmBb,EAAUA,EAAQ,kBAAoB,EAAI,EAC7Dc,EAAa,IAAIC,EAAUH,EAAO,CAAC,EAAE,MAAMC,CAAgB,EAEjEb,GAAS,iBAAiB,KAAK,IAAI,EAAG,SAASc,EAAW,SAAS,CAAC,CAAC,CAAC,EACtE,MAAMP,EAAmBD,CAAiB,CAC5C,CAEA,eAAeU,EAAmBC,EAG/B,CACD,GAAI,GAACnB,GAAY,CAACC,GAIlB,CAAAC,GAAS,oBAAoB,CAC3B,GAAGI,EACH,gBAAiBa,EAAQ,gBACzB,aAAcC,EAAgB,CAC5B,GAAI,IAAIC,CAAiB,IAAIF,EAAQ,eAAe,GACpD,gBAAAf,CACF,CAAC,CACH,CAAC,EAED,GAAI,CACF,IAAMkB,EAAYxB,GAAS,MACvB,MAAME,EAAS,WAAW,CACxB,MAAO,OAAO,KAAK,GAAGF,GAAS,KAAK,IAAI,EACxC,aAAcqB,EAAQ,YACxB,CAAC,EACD,MAAMlB,EAAM,CACV,aAAckB,EAAQ,YACxB,CAAC,
|
|
6
|
-
"names": ["BigNumber", "authenticateLedgerAccount", "options", "config", "provider", "login", "manager", "LedgerConnectStateManager", "explorerAddress", "getExplorerAddress", "authData", "getAuthTokenText", "accountsListProps", "updateAccountsList", "selectedAccount", "resolve", "reject", "handleGoToPage", "page", "addressesPerPage", "startIndex", "BigNumber", "handleAccessWallet", "payload", "getExplorerLink", "ACCOUNTS_ENDPOINT", "loginInfo", "
|
|
4
|
+
"sourcesContent": ["import { HWProvider } from '@multiversx/sdk-hw-provider/out';\nimport { BigNumber } from 'bignumber.js';\n\nimport { ACCOUNTS_ENDPOINT } from 'apiCalls';\nimport { IEventBus } from 'lib/sdkDappUi';\nimport { LedgerConnectStateManager } from 'managers/internal/LedgerConnectStateManager/LedgerConnectStateManager';\nimport { getExplorerAddress } from 'methods/network/getExplorerAddress';\nimport { ProviderTypeEnum } from 'providers/types/providerFactory.types';\nimport { setLedgerAccount } from 'store/actions';\nimport { setLedgerLogin } from 'store/actions/loginInfo/loginInfoActions';\nimport { getExplorerLink } from 'utils/transactions/getExplorerLink';\n\nimport { getAuthTokenText } from './getAuthTokenText';\nimport { updateAccountsList } from './updateAccountsList';\nimport {\n LedgerConfigType,\n LedgerLoginType\n} from '../types/ledgerProvider.types';\n\ninterface IGetLedgerLogin {\n options?: {\n callbackUrl?: string;\n token?: string;\n };\n config: LedgerConfigType;\n provider: HWProvider | null;\n eventBus?: IEventBus | null;\n login: LedgerLoginType | null;\n}\n\ninterface ISelectedAccount {\n address: string;\n signature: string;\n addressIndex: number;\n}\n\nexport async function authenticateLedgerAccount({\n options,\n config,\n provider,\n login\n}: IGetLedgerLogin) {\n const manager = LedgerConnectStateManager.getInstance();\n\n const explorerAddress = getExplorerAddress();\n\n const authData = getAuthTokenText({\n loginToken: options?.token,\n version: config.version\n });\n\n const accountsListProps = {\n manager,\n provider\n };\n\n // refresh account list\n await updateAccountsList(accountsListProps);\n\n // cycle through accounts until user makes a choice\n const selectedAccount = await new Promise<ISelectedAccount>(async function (\n resolve,\n reject\n ) {\n async function handleGoToPage(page: number) {\n const addressesPerPage = manager ? manager.addressesPerPage ?? 1 : 1;\n const startIndex = new BigNumber(page - 1).times(addressesPerPage);\n\n manager?.updateStartIndex(Math.max(0, parseInt(startIndex.toString())));\n await updateAccountsList(accountsListProps);\n }\n\n async function handleAccessWallet(payload: {\n addressIndex: number;\n selectedAddress: string;\n }) {\n if (!provider || !login) {\n return;\n }\n\n manager?.updateConfirmScreen({\n ...authData,\n selectedAddress: payload.selectedAddress,\n explorerLink: getExplorerLink({\n to: `/${ACCOUNTS_ENDPOINT}/${payload.selectedAddress}`,\n explorerAddress\n })\n });\n\n try {\n const loginInfo = options?.token\n ? await provider.tokenLogin({\n token: Buffer.from(`${options?.token}{}`),\n addressIndex: payload.addressIndex\n })\n : await login({\n addressIndex: payload.addressIndex\n });\n\n manager.unsubscribeFromAuthEvents({\n handleCancel,\n handleAccessWallet,\n handleGoToPage\n });\n\n resolve({\n address: loginInfo.address,\n signature: loginInfo.signature\n ? loginInfo.signature.toString('hex')\n : '',\n addressIndex: payload.addressIndex\n });\n } catch (err) {\n console.error('User rejected login:', err);\n\n const shouldGoBack = Boolean(manager?.getConfirmScreenData());\n if (shouldGoBack) {\n await updateAccountsList(accountsListProps);\n }\n }\n }\n\n async function handleCancel() {\n await updateAccountsList(accountsListProps);\n manager.unsubscribeFromAuthEvents({\n handleCancel,\n handleAccessWallet,\n handleGoToPage\n });\n reject('User cancelled login');\n }\n\n manager.subscribeToAuthEvents({\n handleCancel,\n handleAccessWallet,\n handleGoToPage\n });\n });\n\n const { version, dataEnabled } = config;\n\n // login is finished, data can be persisted in the store\n setLedgerLogin({\n index: selectedAccount.addressIndex,\n loginType: ProviderTypeEnum.ledger\n });\n\n setLedgerAccount({\n address: selectedAccount.address,\n index: selectedAccount.addressIndex,\n version,\n hasContractDataEnabled: dataEnabled\n });\n\n return {\n address: selectedAccount.address,\n signature: selectedAccount.signature\n };\n}\n"],
|
|
5
|
+
"mappings": "iXACA,OAAS,aAAAA,MAAiB,eAmC1B,eAAsBC,EAA0B,CAC9C,QAAAC,EACA,OAAAC,EACA,SAAAC,EACA,MAAAC,CACF,EAAoB,CAClB,IAAMC,EAAUC,EAA0B,YAAY,EAEhDC,EAAkBC,EAAmB,EAErCC,EAAWC,EAAiB,CAChC,WAAYT,GAAS,MACrB,QAASC,EAAO,OAClB,CAAC,EAEKS,EAAoB,CACxB,QAAAN,EACA,SAAAF,CACF,EAGA,MAAMS,EAAmBD,CAAiB,EAG1C,IAAME,EAAkB,MAAM,IAAI,QAA0B,eAC1DC,EACAC,EACA,CACA,eAAeC,EAAeC,EAAc,CAC1C,IAAMC,EAAmBb,EAAUA,EAAQ,kBAAoB,EAAI,EAC7Dc,EAAa,IAAIC,EAAUH,EAAO,CAAC,EAAE,MAAMC,CAAgB,EAEjEb,GAAS,iBAAiB,KAAK,IAAI,EAAG,SAASc,EAAW,SAAS,CAAC,CAAC,CAAC,EACtE,MAAMP,EAAmBD,CAAiB,CAC5C,CAEA,eAAeU,EAAmBC,EAG/B,CACD,GAAI,GAACnB,GAAY,CAACC,GAIlB,CAAAC,GAAS,oBAAoB,CAC3B,GAAGI,EACH,gBAAiBa,EAAQ,gBACzB,aAAcC,EAAgB,CAC5B,GAAI,IAAIC,CAAiB,IAAIF,EAAQ,eAAe,GACpD,gBAAAf,CACF,CAAC,CACH,CAAC,EAED,GAAI,CACF,IAAMkB,EAAYxB,GAAS,MACvB,MAAME,EAAS,WAAW,CACxB,MAAO,OAAO,KAAK,GAAGF,GAAS,KAAK,IAAI,EACxC,aAAcqB,EAAQ,YACxB,CAAC,EACD,MAAMlB,EAAM,CACV,aAAckB,EAAQ,YACxB,CAAC,EAELjB,EAAQ,0BAA0B,CAChC,aAAAqB,EACA,mBAAAL,EACA,eAAAL,CACF,CAAC,EAEDF,EAAQ,CACN,QAASW,EAAU,QACnB,UAAWA,EAAU,UACjBA,EAAU,UAAU,SAAS,KAAK,EAClC,GACJ,aAAcH,EAAQ,YACxB,CAAC,CACH,OAASK,EAAK,CACZ,QAAQ,MAAM,uBAAwBA,CAAG,EAEpB,EAAQtB,GAAS,qBAAqB,GAEzD,MAAMO,EAAmBD,CAAiB,CAE9C,EACF,CAEA,eAAee,GAAe,CAC5B,MAAMd,EAAmBD,CAAiB,EAC1CN,EAAQ,0BAA0B,CAChC,aAAAqB,EACA,mBAAAL,EACA,eAAAL,CACF,CAAC,EACDD,EAAO,sBAAsB,CAC/B,CAEAV,EAAQ,sBAAsB,CAC5B,aAAAqB,EACA,mBAAAL,EACA,eAAAL,CACF,CAAC,CACH,CAAC,EAEK,CAAE,QAAAY,EAAS,YAAAC,CAAY,EAAI3B,EAGjC,OAAA4B,EAAe,CACb,MAAOjB,EAAgB,aACvB,UAAWkB,EAAiB,MAC9B,CAAC,EAEDC,EAAiB,CACf,QAASnB,EAAgB,QACzB,MAAOA,EAAgB,aACvB,QAAAe,EACA,uBAAwBC,CAC1B,CAAC,EAEM,CACL,QAAShB,EAAgB,QACzB,UAAWA,EAAgB,SAC7B,CACF",
|
|
6
|
+
"names": ["BigNumber", "authenticateLedgerAccount", "options", "config", "provider", "login", "manager", "LedgerConnectStateManager", "explorerAddress", "getExplorerAddress", "authData", "getAuthTokenText", "accountsListProps", "updateAccountsList", "selectedAccount", "resolve", "reject", "handleGoToPage", "page", "addressesPerPage", "startIndex", "BigNumber", "handleAccessWallet", "payload", "getExplorerLink", "ACCOUNTS_ENDPOINT", "loginInfo", "handleCancel", "err", "version", "dataEnabled", "setLedgerLogin", "ProviderTypeEnum", "setLedgerAccount"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as n}from"./chunk-4TBVQD27.mjs";import{q as o}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as n}from"./chunk-4TBVQD27.mjs";import{q as o}from"./chunk-VJN2RF4O.mjs";var C=t=>o().setState(({config:e})=>{e.nativeAuthConfig=t},!1,{type:"setNativeAuthConfig",payload:{value:t}}),c=t=>o().setState(({config:e})=>{e.websocketStatus=t},!1,{type:"setWebsocketStatus",payload:{value:t}}),f=t=>o().setState(({config:e})=>{let a=t.walletConnectV2RelayAddress||n.walletConnectV2RelayAddress,l=t.walletConnectDeepLink||n.walletConnectDeepLink;e.walletConnectConfig={...t,walletConnectDeepLink:l,walletConnectV2RelayAddress:a}},!1,{type:"setWalletConnectConfig",payload:{value:t}});export{C as a,c as b,f as c};
|
|
2
|
+
//# sourceMappingURL=chunk-RXQEMX7U.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{x as n}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{x as n}from"./chunk-GEPV5HLA.mjs";import{a as i}from"./chunk-LJX4MW7B.mjs";var e=async()=>{let o=n();if(o.getType()===i.crossWindow){let r=o;await r.cancelAction(),await r.dispose()}};export{e as a};
|
|
2
|
+
//# sourceMappingURL=chunk-SBQYWA6T.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-ZVAP4GAJ.mjs";var t={closeConnectionRef:void 0};async function c(n){let{closeConnection:o}=await e(n);t.closeConnectionRef=o}export{t as a,c as b};
|
|
2
|
+
//# sourceMappingURL=chunk-SPP2AXFW.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as i}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as i}from"./chunk-SPP2AXFW.mjs";import{a}from"./chunk-ND5SC5UK.mjs";import{a as u}from"./chunk-7KOIS7OQ.mjs";import{c as n}from"./chunk-HM3DDWL2.mjs";import{a as s}from"./chunk-KXJUK6CN.mjs";var g=(o,t)=>{let r=`sdk-dapp-logout-event-${o}`,e=t.getItem(r);e&&o!==e||(t.setItem(r,o),t.removeItem(r))};async function L({provider:o,options:t={shouldBroadcastLogoutAcrossTabs:!0}}){let r=a();t.shouldBroadcastLogoutAcrossTabs&&s.localStorage&&g(r,s.localStorage);try{return u(),n.forEach(c=>c()),n.clear(),i.closeConnectionRef?.(),await o.logout()}catch(e){return console.error("Logging out error:",e),!1}}export{L as a};
|
|
2
|
+
//# sourceMappingURL=chunk-TAA22QOF.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{s as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{s as t}from"./chunk-VJN2RF4O.mjs";import{d as e}from"./chunk-7VHTZYM2.mjs";import{x as r}from"./chunk-KD2IQ32V.mjs";import i from"axios";var c=async(s,a={apiAddress:""})=>{let{data:o}=await i.get(`${a.apiAddress||e(t())}/${r}`,{params:{hashes:s.join(","),withScResults:!0}});return o};export{c as a};
|
|
2
|
+
//# sourceMappingURL=chunk-TC5SHARG.mjs.map
|