@dynamic-labs-sdk/client 0.1.0-alpha.9 → 0.1.1
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/CHANGELOG.md +308 -0
- package/InvalidParamError.cjs.js +2 -2
- package/InvalidParamError.esm.js +1 -1
- package/NotWaasWalletAccountError.cjs.js +7 -7
- package/NotWaasWalletAccountError.esm.js +2 -2
- package/constants.cjs.js +493 -9
- package/constants.cjs2.js +15 -0
- package/constants.esm.js +468 -7
- package/constants.esm2.js +11 -0
- package/core.cjs.js +96 -41
- package/core.esm.js +47 -10
- package/filterDuplicates.cjs.js +8 -0
- package/filterDuplicates.esm.js +6 -0
- package/getNetworkProviderFromNetworkId.cjs.js +178 -20
- package/getNetworkProviderFromNetworkId.esm.js +150 -3
- package/getSignedSessionId.cjs.js +7 -7
- package/getSignedSessionId.esm.js +2 -2
- package/getVerifiedCredentialForWalletAccount.cjs.js +515 -0
- package/getVerifiedCredentialForWalletAccount.esm.js +491 -0
- package/index.cjs.js +1235 -471
- package/index.esm.js +1033 -282
- package/isMfaRequiredForAction.cjs.js +15 -8
- package/isMfaRequiredForAction.esm.js +8 -2
- package/package.json +4 -4
- package/src/client/core/createCore/createCore.d.ts.map +1 -1
- package/src/client/core/createCore/getInitialState.d.ts.map +1 -1
- package/src/client/core/types/DynamicCore.d.ts +8 -0
- package/src/client/core/types/DynamicCore.d.ts.map +1 -1
- package/src/client/createDynamicClient/createDynamicClient.d.ts.map +1 -1
- package/src/client/types/DynamicClientConfig.d.ts +6 -1
- package/src/client/types/DynamicClientConfig.d.ts.map +1 -1
- package/src/constants.d.ts +1 -0
- package/src/constants.d.ts.map +1 -1
- package/src/errors/APIError/APIError.d.ts.map +1 -1
- package/src/errors/InvalidWalletProviderKeyError.d.ts +5 -0
- package/src/errors/InvalidWalletProviderKeyError.d.ts.map +1 -0
- package/src/errors/MissingUserVerificationError.d.ts +12 -0
- package/src/errors/MissingUserVerificationError.d.ts.map +1 -0
- package/src/errors/NoSmartWalletAccountSignerFoundError.d.ts +5 -0
- package/src/errors/NoSmartWalletAccountSignerFoundError.d.ts.map +1 -0
- package/src/errors/WalletAccountNotSelectedError.d.ts.map +1 -1
- package/src/exports/core.d.ts +102 -2
- package/src/exports/core.d.ts.map +1 -1
- package/src/exports/index.d.ts +25 -7
- package/src/exports/index.d.ts.map +1 -1
- package/src/exports/waas.d.ts +2 -0
- package/src/exports/waas.d.ts.map +1 -1
- package/src/modules/apiClient/createApiClient.d.ts.map +1 -1
- package/src/modules/auth/createVisit/createVisit.d.ts.map +1 -1
- package/src/modules/auth/logout/logout.d.ts.map +1 -1
- package/src/modules/auth/passkeys/getPasskeyAuthenticationOptions/getPasskeyAuthenticationOptions.d.ts +4 -1
- package/src/modules/auth/passkeys/getPasskeyAuthenticationOptions/getPasskeyAuthenticationOptions.d.ts.map +1 -1
- package/src/modules/auth/passkeys/getPasskeyAuthenticationSignInOptions/getPasskeyAuthenticationSignInOptions.d.ts +4 -1
- package/src/modules/auth/passkeys/getPasskeyAuthenticationSignInOptions/getPasskeyAuthenticationSignInOptions.d.ts.map +1 -1
- package/src/modules/auth/passkeys/registerPasskey/registerPasskey.d.ts +7 -1
- package/src/modules/auth/passkeys/registerPasskey/registerPasskey.d.ts.map +1 -1
- package/src/modules/auth/passkeys/serverRegisterPasskey/serverRegisterPasskey.d.ts +3 -1
- package/src/modules/auth/passkeys/serverRegisterPasskey/serverRegisterPasskey.d.ts.map +1 -1
- package/src/modules/auth/passkeys/signInWithPasskey/signInWithPasskey.d.ts +4 -1
- package/src/modules/auth/passkeys/signInWithPasskey/signInWithPasskey.d.ts.map +1 -1
- package/src/modules/auth/social/getUserSocialAccounts/getUserSocialAccounts.d.ts +9 -0
- package/src/modules/auth/social/getUserSocialAccounts/getUserSocialAccounts.d.ts.map +1 -0
- package/src/modules/auth/social/getUserSocialAccounts/index.d.ts +2 -0
- package/src/modules/auth/social/getUserSocialAccounts/index.d.ts.map +1 -0
- package/src/modules/auth/social/oauth/{signInWithSocialRedirect/signInWithSocialRedirect.d.ts → authenticateWithSocial/authenticateWithSocial.d.ts} +5 -3
- package/src/modules/auth/social/oauth/authenticateWithSocial/authenticateWithSocial.d.ts.map +1 -0
- package/src/modules/auth/social/oauth/authenticateWithSocial/buildOAuthUrl/addOAuthUrlParams/addOAuthUrlParams.d.ts.map +1 -0
- package/src/modules/auth/social/oauth/authenticateWithSocial/buildOAuthUrl/addOAuthUrlParams/index.d.ts.map +1 -0
- package/src/modules/auth/social/oauth/authenticateWithSocial/buildOAuthUrl/buildOAuthUrl.d.ts.map +1 -0
- package/src/modules/auth/social/oauth/authenticateWithSocial/buildOAuthUrl/getOAuthBaseUrl/getOAuthBaseUrl.d.ts.map +1 -0
- package/src/modules/auth/social/oauth/authenticateWithSocial/buildOAuthUrl/getOAuthBaseUrl/index.d.ts.map +1 -0
- package/src/modules/auth/social/oauth/{signInWithSocialRedirect → authenticateWithSocial}/buildOAuthUrl/index.d.ts.map +1 -1
- package/src/modules/auth/social/oauth/authenticateWithSocial/index.d.ts +2 -0
- package/src/modules/auth/social/oauth/{signInWithSocialRedirect → authenticateWithSocial}/index.d.ts.map +1 -1
- package/src/modules/auth/social/oauth/{completeSocialRedirectSignIn/completeSocialRedirectSignIn.d.ts → completeSocialAuthentication/completeSocialAuthentication.d.ts} +3 -3
- package/src/modules/auth/social/oauth/completeSocialAuthentication/completeSocialAuthentication.d.ts.map +1 -0
- package/src/modules/auth/social/oauth/completeSocialAuthentication/index.d.ts +2 -0
- package/src/modules/auth/social/oauth/{completeSocialRedirectSignIn → completeSocialAuthentication}/index.d.ts.map +1 -1
- package/src/modules/auth/social/oauth/redirectStateStorageSchema/index.d.ts +1 -1
- package/src/modules/auth/social/oauth/redirectStateStorageSchema/index.d.ts.map +1 -1
- package/src/modules/auth/social/oauth/redirectStateStorageSchema/redirectStateStorageSchema.d.ts +1 -1
- package/src/modules/auth/social/oauth/redirectStateStorageSchema/redirectStateStorageSchema.d.ts.map +1 -1
- package/src/modules/auth/social/oauth/unlinkSocialAccount/index.d.ts +2 -0
- package/src/modules/auth/social/oauth/unlinkSocialAccount/index.d.ts.map +1 -0
- package/src/modules/auth/social/oauth/unlinkSocialAccount/unlinkSocialAccount.d.ts +14 -0
- package/src/modules/auth/social/oauth/unlinkSocialAccount/unlinkSocialAccount.d.ts.map +1 -0
- package/src/modules/auth/social/removeDynamicOauthParamsFromUrl/index.d.ts +2 -0
- package/src/modules/auth/social/removeDynamicOauthParamsFromUrl/index.d.ts.map +1 -0
- package/src/modules/auth/social/removeDynamicOauthParamsFromUrl/removeDynamicOauthParamsFromUrl.d.ts +2 -0
- package/src/modules/auth/social/removeDynamicOauthParamsFromUrl/removeDynamicOauthParamsFromUrl.d.ts.map +1 -0
- package/src/modules/auth/social/social.types.d.ts +9 -0
- package/src/modules/auth/social/social.types.d.ts.map +1 -1
- package/src/modules/auth/updateAuthFromVerifyResponse/checkAndRaiseWalletAccountsChangedEvent/checkAndRaiseWalletAccountsChangedEvent.d.ts.map +1 -1
- package/src/modules/auth/updateAuthFromVerifyResponse/updateAuthFromVerifyResponse.d.ts.map +1 -1
- package/src/modules/balances/getMultichainBalances/getMultichainBalances.d.ts +1 -2
- package/src/modules/balances/getMultichainBalances/getMultichainBalances.d.ts.map +1 -1
- package/src/modules/balances/getMultichainBalances/index.d.ts +1 -1
- package/src/modules/balances/getMultichainBalances/index.d.ts.map +1 -1
- package/src/modules/funding/coinbase/addCoinbaseOnrampOrderEventListener/addCoinbaseOnrampOrderEventListener.d.ts +18 -0
- package/src/modules/funding/coinbase/addCoinbaseOnrampOrderEventListener/addCoinbaseOnrampOrderEventListener.d.ts.map +1 -0
- package/src/modules/funding/coinbase/addCoinbaseOnrampOrderEventListener/index.d.ts +2 -0
- package/src/modules/funding/coinbase/addCoinbaseOnrampOrderEventListener/index.d.ts.map +1 -0
- package/src/modules/funding/coinbase/coinbase.types.d.ts +269 -0
- package/src/modules/funding/coinbase/coinbase.types.d.ts.map +1 -0
- package/src/modules/funding/coinbase/createCoinbaseOnrampOrder/createCoinbaseOnrampOrder.d.ts +11 -0
- package/src/modules/funding/coinbase/createCoinbaseOnrampOrder/createCoinbaseOnrampOrder.d.ts.map +1 -0
- package/src/modules/funding/coinbase/createCoinbaseOnrampOrder/index.d.ts +2 -0
- package/src/modules/funding/coinbase/createCoinbaseOnrampOrder/index.d.ts.map +1 -0
- package/src/modules/funding/coinbase/getCoinbaseBuyUrl/getCoinbaseBuyUrl.d.ts +10 -0
- package/src/modules/funding/coinbase/getCoinbaseBuyUrl/getCoinbaseBuyUrl.d.ts.map +1 -0
- package/src/modules/funding/coinbase/getCoinbaseBuyUrl/index.d.ts +2 -0
- package/src/modules/funding/coinbase/getCoinbaseBuyUrl/index.d.ts.map +1 -0
- package/src/modules/funding/coinbase/getMissingVerificationForCoinbaseOnrampOrder/getMissingVerificationForCoinbaseOnrampOrder.d.ts +23 -0
- package/src/modules/funding/coinbase/getMissingVerificationForCoinbaseOnrampOrder/getMissingVerificationForCoinbaseOnrampOrder.d.ts.map +1 -0
- package/src/modules/funding/coinbase/getMissingVerificationForCoinbaseOnrampOrder/index.d.ts +2 -0
- package/src/modules/funding/coinbase/getMissingVerificationForCoinbaseOnrampOrder/index.d.ts.map +1 -0
- package/src/modules/funding/coinbase/utils/validateUserCredentialsForCoinbaseOnrampOrder/index.d.ts +2 -0
- package/src/modules/funding/coinbase/utils/validateUserCredentialsForCoinbaseOnrampOrder/index.d.ts.map +1 -0
- package/src/modules/funding/coinbase/utils/validateUserCredentialsForCoinbaseOnrampOrder/validateUserCredentialsForCoinbaseOnrampOrder.d.ts +4 -0
- package/src/modules/funding/coinbase/utils/validateUserCredentialsForCoinbaseOnrampOrder/validateUserCredentialsForCoinbaseOnrampOrder.d.ts.map +1 -0
- package/src/modules/funding/cryptoDotCom/createCryptoDotComPayment/createCryptoDotComPayment.d.ts +10 -0
- package/src/modules/funding/cryptoDotCom/createCryptoDotComPayment/createCryptoDotComPayment.d.ts.map +1 -0
- package/src/modules/funding/cryptoDotCom/createCryptoDotComPayment/index.d.ts +2 -0
- package/src/modules/funding/cryptoDotCom/createCryptoDotComPayment/index.d.ts.map +1 -0
- package/src/modules/funding/cryptoDotCom/cryptoDotCom.types.d.ts +8 -0
- package/src/modules/funding/cryptoDotCom/cryptoDotCom.types.d.ts.map +1 -0
- package/src/modules/initializeClient/consts.d.ts +5 -0
- package/src/modules/initializeClient/consts.d.ts.map +1 -0
- package/src/modules/initializeClient/initializeClient.d.ts.map +1 -1
- package/src/modules/initializeClient/waitForProjectSettings/index.d.ts +2 -0
- package/src/modules/initializeClient/waitForProjectSettings/index.d.ts.map +1 -0
- package/src/modules/initializeClient/waitForProjectSettings/waitForProjectSettings.d.ts +3 -0
- package/src/modules/initializeClient/waitForProjectSettings/waitForProjectSettings.d.ts.map +1 -0
- package/src/modules/mfa/authenticatePasskeyMFA/authenticatePasskeyMFA.d.ts +2 -1
- package/src/modules/mfa/authenticatePasskeyMFA/authenticatePasskeyMFA.d.ts.map +1 -1
- package/src/modules/otp/verifyOTP/verifyOTP.d.ts +3 -2
- package/src/modules/otp/verifyOTP/verifyOTP.d.ts.map +1 -1
- package/src/modules/projectSettings/fetchProjectSettings/fetchProjectSettings.d.ts.map +1 -1
- package/src/modules/projectSettings/fetchProjectSettings/projectSettingsExpirationScheme.d.ts +1 -1
- package/src/modules/projectSettings/fetchProjectSettings/projectSettingsExpirationScheme.d.ts.map +1 -1
- package/src/modules/storageSync/hydrateStateWithStorage/hydrateStateWithStorage.d.ts.map +1 -1
- package/src/modules/storageSync/schema.d.ts +15 -2
- package/src/modules/storageSync/schema.d.ts.map +1 -1
- package/src/modules/storageSync/syncStateWithStorage/syncStateWithStorage.d.ts.map +1 -1
- package/src/modules/user/deleteUser/deleteUser.d.ts +11 -0
- package/src/modules/user/deleteUser/deleteUser.d.ts.map +1 -0
- package/src/modules/user/deleteUser/index.d.ts +2 -0
- package/src/modules/user/deleteUser/index.d.ts.map +1 -0
- package/src/modules/waas/constants.d.ts +2 -2
- package/src/modules/waas/constants.d.ts.map +1 -1
- package/src/modules/waas/createWaasProvider/createWaasProvider.d.ts.map +1 -1
- package/src/modules/waas/createWaasWalletAccounts/createWaasWalletAccounts.d.ts.map +1 -1
- package/src/modules/waas/delegateWaasKeyShares/delegateWaasKeyShares.d.ts.map +1 -1
- package/src/modules/waas/getWaasWalletProviderByChain/getWaasWalletProviderByChain.d.ts.map +1 -1
- package/src/modules/waas/hasDelegatedAccess/hasDelegatedAccess.d.ts +14 -0
- package/src/modules/waas/hasDelegatedAccess/hasDelegatedAccess.d.ts.map +1 -0
- package/src/modules/waas/hasDelegatedAccess/index.d.ts +2 -0
- package/src/modules/waas/hasDelegatedAccess/index.d.ts.map +1 -0
- package/src/modules/waas/isWaasWalletAccount/isWaasWalletAccount.d.ts.map +1 -1
- package/src/modules/waas/isWaasWalletProvider/isWaasWalletProvider.d.ts.map +1 -1
- package/src/modules/waas/revokeWaasDelegation/index.d.ts +2 -0
- package/src/modules/waas/revokeWaasDelegation/index.d.ts.map +1 -0
- package/src/modules/waas/revokeWaasDelegation/revokeWaasDelegation.d.ts +16 -0
- package/src/modules/waas/revokeWaasDelegation/revokeWaasDelegation.d.ts.map +1 -0
- package/src/modules/waas/waas.types.d.ts +4 -0
- package/src/modules/waas/waas.types.d.ts.map +1 -1
- package/src/modules/wallets/connectWithWalletProvider/connectWithWalletProvider.d.ts +4 -3
- package/src/modules/wallets/connectWithWalletProvider/connectWithWalletProvider.d.ts.map +1 -1
- package/src/modules/wallets/constants.d.ts.map +1 -1
- package/src/modules/wallets/getAvailableWalletProvidersData/getAvailableWalletProvidersData.d.ts +2 -6
- package/src/modules/wallets/getAvailableWalletProvidersData/getAvailableWalletProvidersData.d.ts.map +1 -1
- package/src/modules/wallets/getOwnerWalletAccountForSmartWalletAccount/getOwnerWalletAccountForSmartWalletAccount.d.ts +7 -0
- package/src/modules/wallets/getOwnerWalletAccountForSmartWalletAccount/getOwnerWalletAccountForSmartWalletAccount.d.ts.map +1 -0
- package/src/modules/wallets/getOwnerWalletAccountForSmartWalletAccount/index.d.ts +2 -0
- package/src/modules/wallets/getOwnerWalletAccountForSmartWalletAccount/index.d.ts.map +1 -0
- package/src/modules/wallets/getWalletAccountAddressByType/getWalletAccountAddressByType.d.ts +8 -0
- package/src/modules/wallets/getWalletAccountAddressByType/getWalletAccountAddressByType.d.ts.map +1 -0
- package/src/modules/wallets/getWalletAccountAddressByType/index.d.ts +2 -0
- package/src/modules/wallets/getWalletAccountAddressByType/index.d.ts.map +1 -0
- package/src/modules/wallets/getWalletAccounts/getWalletAccounts.d.ts.map +1 -1
- package/src/modules/wallets/getWalletAccounts/getWalletAccountsFromState/getWalletAccountsFromState.d.ts +9 -1
- package/src/modules/wallets/getWalletAccounts/getWalletAccountsFromState/getWalletAccountsFromState.d.ts.map +1 -1
- package/src/modules/wallets/getWalletProviderDataByKey/getWalletProviderDataByKey.d.ts +14 -0
- package/src/modules/wallets/getWalletProviderDataByKey/getWalletProviderDataByKey.d.ts.map +1 -0
- package/src/modules/wallets/getWalletProviderDataByKey/index.d.ts +2 -0
- package/src/modules/wallets/getWalletProviderDataByKey/index.d.ts.map +1 -0
- package/src/modules/wallets/isWalletAccountVerified/index.d.ts +2 -0
- package/src/modules/wallets/isWalletAccountVerified/index.d.ts.map +1 -0
- package/src/modules/wallets/isWalletAccountVerified/isWalletAccountVerified.d.ts +13 -0
- package/src/modules/wallets/isWalletAccountVerified/isWalletAccountVerified.d.ts.map +1 -0
- package/src/modules/wallets/networks/getNetworkDataForNetworkId/getNetworkDataForNetworkId.d.ts +10 -0
- package/src/modules/wallets/networks/getNetworkDataForNetworkId/getNetworkDataForNetworkId.d.ts.map +1 -0
- package/src/modules/wallets/networks/getNetworkDataForNetworkId/index.d.ts +2 -0
- package/src/modules/wallets/networks/getNetworkDataForNetworkId/index.d.ts.map +1 -0
- package/src/modules/wallets/networks/getTransactionHistory/getTransactionHistory.d.ts +26 -0
- package/src/modules/wallets/networks/getTransactionHistory/getTransactionHistory.d.ts.map +1 -0
- package/src/modules/wallets/networks/getTransactionHistory/index.d.ts +3 -0
- package/src/modules/wallets/networks/getTransactionHistory/index.d.ts.map +1 -0
- package/src/modules/wallets/networks/lastKnownNetworkRegistry/createLastKnownNetworkRegistry/createLastKnownNetworkRegistry.d.ts.map +1 -1
- package/src/modules/wallets/networks/lastKnownNetworkRegistry/createLastKnownNetworkRegistry/schema.d.ts +1 -1
- package/src/modules/wallets/networks/lastKnownNetworkRegistry/createLastKnownNetworkRegistry/schema.d.ts.map +1 -1
- package/src/modules/wallets/proveWalletAccountOwnership/proveWalletAccountOwnership.d.ts +1 -1
- package/src/modules/wallets/proveWalletAccountOwnership/proveWalletAccountOwnership.d.ts.map +1 -1
- package/src/modules/wallets/removeWalletAccount/removeWalletAccount.d.ts.map +1 -1
- package/src/modules/wallets/unverifiedWalletAccounts/removeUnverifiedWalletAccount/removeUnverifiedWalletAccount.d.ts.map +1 -1
- package/src/modules/wallets/unverifiedWalletAccounts/schema.d.ts +5 -0
- package/src/modules/wallets/unverifiedWalletAccounts/schema.d.ts.map +1 -1
- package/src/modules/wallets/unverifiedWalletAccounts/setUnverifiedWalletAccounts/setUnverifiedWalletAccounts.d.ts +2 -0
- package/src/modules/wallets/unverifiedWalletAccounts/setUnverifiedWalletAccounts/setUnverifiedWalletAccounts.d.ts.map +1 -1
- package/src/modules/wallets/utils/convertUnverifiedWalletAccountToWalletAccount/convertUnverifiedWalletAccountToWalletAccount.d.ts +5 -1
- package/src/modules/wallets/utils/convertUnverifiedWalletAccountToWalletAccount/convertUnverifiedWalletAccountToWalletAccount.d.ts.map +1 -1
- package/src/modules/wallets/utils/convertVerifiedCredentialToWalletAccount/convertVerifiedCredentialToWalletAccount.d.ts +6 -1
- package/src/modules/wallets/utils/convertVerifiedCredentialToWalletAccount/convertVerifiedCredentialToWalletAccount.d.ts.map +1 -1
- package/src/modules/wallets/utils/formatSignInMessage/formatSignInMessage.d.ts +9 -7
- package/src/modules/wallets/utils/formatSignInMessage/formatSignInMessage.d.ts.map +1 -1
- package/src/modules/wallets/utils/formatWalletAccountId/formatWalletAccountId.d.ts +9 -0
- package/src/modules/wallets/utils/formatWalletAccountId/formatWalletAccountId.d.ts.map +1 -0
- package/src/modules/wallets/utils/formatWalletAccountId/index.d.ts +2 -0
- package/src/modules/wallets/utils/formatWalletAccountId/index.d.ts.map +1 -0
- package/src/modules/wallets/utils/formatWalletProviderKey/formatWalletProviderKey.d.ts +17 -2
- package/src/modules/wallets/utils/formatWalletProviderKey/formatWalletProviderKey.d.ts.map +1 -1
- package/src/modules/wallets/utils/getAddressesWithTypesFromConnectionResult/getAddressesWithTypesFromConnectionResult.d.ts +4 -0
- package/src/modules/wallets/utils/getAddressesWithTypesFromConnectionResult/getAddressesWithTypesFromConnectionResult.d.ts.map +1 -0
- package/src/modules/wallets/utils/getAddressesWithTypesFromConnectionResult/index.d.ts +2 -0
- package/src/modules/wallets/utils/getAddressesWithTypesFromConnectionResult/index.d.ts.map +1 -0
- package/src/modules/wallets/utils/getChainIdForAccountVerification/getChainIdForAccountVerification.d.ts.map +1 -1
- package/src/modules/wallets/utils/getInjectedProviderFromWindow/getInjectedProviderFromWindow.d.ts +2 -0
- package/src/modules/wallets/utils/getInjectedProviderFromWindow/getInjectedProviderFromWindow.d.ts.map +1 -0
- package/src/modules/wallets/utils/getInjectedProviderFromWindow/index.d.ts +2 -0
- package/src/modules/wallets/utils/getInjectedProviderFromWindow/index.d.ts.map +1 -0
- package/src/modules/wallets/utils/getSignInMessage/createSignInMessageStatement/createSignInMessageStatement.d.ts +3 -0
- package/src/modules/wallets/utils/getSignInMessage/createSignInMessageStatement/createSignInMessageStatement.d.ts.map +1 -0
- package/src/modules/wallets/utils/getSignInMessage/createSignInMessageStatement/index.d.ts +2 -0
- package/src/modules/wallets/utils/getSignInMessage/createSignInMessageStatement/index.d.ts.map +1 -0
- package/src/modules/wallets/utils/getSignInMessage/getSignInMessage.d.ts.map +1 -1
- package/src/modules/wallets/utils/getVerifiedCredentialForWalletAccount/getVerifiedCredentialForWalletAccount.d.ts +8 -0
- package/src/modules/wallets/utils/getVerifiedCredentialForWalletAccount/getVerifiedCredentialForWalletAccount.d.ts.map +1 -0
- package/src/modules/wallets/utils/getVerifiedCredentialForWalletAccount/index.d.ts +2 -0
- package/src/modules/wallets/utils/getVerifiedCredentialForWalletAccount/index.d.ts.map +1 -0
- package/src/modules/wallets/utils/normalizeWalletNameWithChain/index.d.ts +2 -0
- package/src/modules/wallets/utils/normalizeWalletNameWithChain/index.d.ts.map +1 -0
- package/src/modules/wallets/utils/normalizeWalletNameWithChain/normalizeWalletNameWithChain.d.ts +12 -0
- package/src/modules/wallets/utils/normalizeWalletNameWithChain/normalizeWalletNameWithChain.d.ts.map +1 -0
- package/src/modules/wallets/verifySignInMessage/index.d.ts +2 -0
- package/src/modules/wallets/verifySignInMessage/index.d.ts.map +1 -0
- package/src/modules/wallets/verifySignInMessage/verifySignInMessage.d.ts +22 -0
- package/src/modules/wallets/verifySignInMessage/verifySignInMessage.d.ts.map +1 -0
- package/src/modules/wallets/verifyWalletAccount/verifyWalletAccount.d.ts.map +1 -1
- package/src/modules/wallets/walletAccount/index.d.ts +1 -1
- package/src/modules/wallets/walletAccount/index.d.ts.map +1 -1
- package/src/modules/wallets/walletAccount/walletAccount.types.d.ts +8 -0
- package/src/modules/wallets/walletAccount/walletAccount.types.d.ts.map +1 -1
- package/src/modules/wallets/walletProvider/index.d.ts +1 -1
- package/src/modules/wallets/walletProvider/index.d.ts.map +1 -1
- package/src/modules/wallets/walletProvider/splitWalletProviderKey/index.d.ts +2 -0
- package/src/modules/wallets/walletProvider/splitWalletProviderKey/index.d.ts.map +1 -0
- package/src/modules/wallets/walletProvider/splitWalletProviderKey/splitWalletProviderKey.d.ts +9 -0
- package/src/modules/wallets/walletProvider/splitWalletProviderKey/splitWalletProviderKey.d.ts.map +1 -0
- package/src/modules/wallets/walletProvider/walletProvider.types.d.ts +24 -8
- package/src/modules/wallets/walletProvider/walletProvider.types.d.ts.map +1 -1
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/getWalletProviderKeyFromVerifiedCredential/getWalletProviderKeyFromVerifiedCredential.d.ts +10 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/getWalletProviderKeyFromVerifiedCredential/getWalletProviderKeyFromVerifiedCredential.d.ts.map +1 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/getWalletProviderKeyFromVerifiedCredential/index.d.ts +2 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/getWalletProviderKeyFromVerifiedCredential/index.d.ts.map +1 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/schema.d.ts +3 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/schema.d.ts.map +1 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/state.d.ts +16 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/state.d.ts.map +1 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/updateWalletProviderKeysForVerifiedCredentials/index.d.ts +2 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/updateWalletProviderKeysForVerifiedCredentials/index.d.ts.map +1 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/updateWalletProviderKeysForVerifiedCredentials/updateWalletProviderKeysForVerifiedCredentials.d.ts +7 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/updateWalletProviderKeysForVerifiedCredentials/updateWalletProviderKeysForVerifiedCredentials.d.ts.map +1 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/walletProviderKeyMap.types.d.ts +12 -0
- package/src/modules/wallets/walletProvider/walletProviderKeyMap/walletProviderKeyMap.types.d.ts.map +1 -0
- package/src/services/asyncTrack/asyncTrack.types.d.ts +5 -1
- package/src/services/asyncTrack/asyncTrack.types.d.ts.map +1 -1
- package/src/services/asyncTrack/createAsyncTrack.d.ts.map +1 -1
- package/src/services/storage/index.d.ts +1 -1
- package/src/services/storage/index.d.ts.map +1 -1
- package/src/utils/debouncedMutex/createDebouncedMutex/createDebouncedMutex.d.ts +3 -0
- package/src/utils/debouncedMutex/createDebouncedMutex/createDebouncedMutex.d.ts.map +1 -0
- package/src/utils/debouncedMutex/createDebouncedMutex/index.d.ts +2 -0
- package/src/utils/debouncedMutex/createDebouncedMutex/index.d.ts.map +1 -0
- package/src/utils/debouncedMutex/debouncedMutex.types.d.ts +39 -0
- package/src/utils/debouncedMutex/debouncedMutex.types.d.ts.map +1 -0
- package/src/utils/debouncedMutex/index.d.ts +2 -0
- package/src/utils/debouncedMutex/index.d.ts.map +1 -0
- package/waas.cjs.js +86 -38
- package/waas.esm.js +62 -16
- package/waasCore.cjs.js +21 -10
- package/waasCore.esm.js +15 -4
- package/getWalletProviderByKey.cjs.js +0 -74
- package/getWalletProviderByKey.esm.js +0 -69
- package/logout.cjs.js +0 -1086
- package/logout.esm.js +0 -1020
- package/src/modules/apiClient/utils/logoutOnUnauthorizedRequestMiddleware/index.d.ts +0 -2
- package/src/modules/apiClient/utils/logoutOnUnauthorizedRequestMiddleware/index.d.ts.map +0 -1
- package/src/modules/apiClient/utils/logoutOnUnauthorizedRequestMiddleware/logoutOnUnauthorizedRequestMiddleware.d.ts +0 -4
- package/src/modules/apiClient/utils/logoutOnUnauthorizedRequestMiddleware/logoutOnUnauthorizedRequestMiddleware.d.ts.map +0 -1
- package/src/modules/auth/social/oauth/completeSocialRedirectSignIn/completeSocialRedirectSignIn.d.ts.map +0 -1
- package/src/modules/auth/social/oauth/completeSocialRedirectSignIn/index.d.ts +0 -2
- package/src/modules/auth/social/oauth/signInWithSocialRedirect/buildOAuthUrl/addOAuthUrlParams/addOAuthUrlParams.d.ts.map +0 -1
- package/src/modules/auth/social/oauth/signInWithSocialRedirect/buildOAuthUrl/addOAuthUrlParams/index.d.ts.map +0 -1
- package/src/modules/auth/social/oauth/signInWithSocialRedirect/buildOAuthUrl/buildOAuthUrl.d.ts.map +0 -1
- package/src/modules/auth/social/oauth/signInWithSocialRedirect/buildOAuthUrl/getOAuthBaseUrl/getOAuthBaseUrl.d.ts.map +0 -1
- package/src/modules/auth/social/oauth/signInWithSocialRedirect/buildOAuthUrl/getOAuthBaseUrl/index.d.ts.map +0 -1
- package/src/modules/auth/social/oauth/signInWithSocialRedirect/index.d.ts +0 -2
- package/src/modules/auth/social/oauth/signInWithSocialRedirect/signInWithSocialRedirect.d.ts.map +0 -1
- package/src/modules/wallets/utils/createWalletAccountId/createWalletAccountId.d.ts +0 -3
- package/src/modules/wallets/utils/createWalletAccountId/createWalletAccountId.d.ts.map +0 -1
- package/src/modules/wallets/utils/createWalletAccountId/index.d.ts +0 -2
- package/src/modules/wallets/utils/createWalletAccountId/index.d.ts.map +0 -1
- /package/src/modules/auth/social/oauth/{signInWithSocialRedirect → authenticateWithSocial}/buildOAuthUrl/addOAuthUrlParams/addOAuthUrlParams.d.ts +0 -0
- /package/src/modules/auth/social/oauth/{signInWithSocialRedirect → authenticateWithSocial}/buildOAuthUrl/addOAuthUrlParams/index.d.ts +0 -0
- /package/src/modules/auth/social/oauth/{signInWithSocialRedirect → authenticateWithSocial}/buildOAuthUrl/buildOAuthUrl.d.ts +0 -0
- /package/src/modules/auth/social/oauth/{signInWithSocialRedirect → authenticateWithSocial}/buildOAuthUrl/getOAuthBaseUrl/getOAuthBaseUrl.d.ts +0 -0
- /package/src/modules/auth/social/oauth/{signInWithSocialRedirect → authenticateWithSocial}/buildOAuthUrl/getOAuthBaseUrl/index.d.ts +0 -0
- /package/src/modules/auth/social/oauth/{signInWithSocialRedirect → authenticateWithSocial}/buildOAuthUrl/index.d.ts +0 -0
package/waas.cjs.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var assertPackageVersion = require('@dynamic-labs-sdk/assert-package-version');
|
|
4
|
-
var logout = require('./logout.cjs.js');
|
|
5
|
-
var NotWaasWalletAccountError = require('./NotWaasWalletAccountError.cjs.js');
|
|
6
4
|
var constants = require('./constants.cjs.js');
|
|
7
|
-
var
|
|
5
|
+
var NotWaasWalletAccountError = require('./NotWaasWalletAccountError.cjs.js');
|
|
6
|
+
var getVerifiedCredentialForWalletAccount = require('./getVerifiedCredentialForWalletAccount.cjs.js');
|
|
7
|
+
var constants$1 = require('./constants.cjs2.js');
|
|
8
8
|
var sdkApiCore = require('@dynamic-labs/sdk-api-core');
|
|
9
|
+
var filterDuplicates = require('./filterDuplicates.cjs.js');
|
|
9
10
|
require('buffer');
|
|
10
|
-
require('zod/mini');
|
|
11
11
|
|
|
12
|
-
class NotWaasWalletProviderError extends
|
|
12
|
+
class NotWaasWalletProviderError extends constants.BaseError {
|
|
13
13
|
constructor({ walletProviderKey }){
|
|
14
14
|
super({
|
|
15
15
|
cause: null,
|
|
@@ -22,11 +22,11 @@ class NotWaasWalletProviderError extends logout.BaseError {
|
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
const isWaasWalletProvider = (walletProvider)=>{
|
|
25
|
-
return walletProvider.key.includes(constants.DYNAMIC_WAAS_METADATA.
|
|
25
|
+
return walletProvider.key.includes(constants$1.DYNAMIC_WAAS_METADATA.normalizedWalletName);
|
|
26
26
|
};
|
|
27
27
|
|
|
28
28
|
const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
29
|
-
const walletProvider =
|
|
29
|
+
const walletProvider = getVerifiedCredentialForWalletAccount.getWalletProviderFromWalletAccount({
|
|
30
30
|
walletAccount
|
|
31
31
|
}, client);
|
|
32
32
|
if (!isWaasWalletProvider(walletProvider)) {
|
|
@@ -47,7 +47,7 @@ const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
|
47
47
|
* @param [params.password] - Optional password to encrypt the backup.
|
|
48
48
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
49
49
|
* @returns A promise that resolves when the backup process is complete.
|
|
50
|
-
*/ const backupWaasKeySharesToGoogleDrive = async ({ password, walletAccount }, client =
|
|
50
|
+
*/ const backupWaasKeySharesToGoogleDrive = async ({ password, walletAccount }, client = constants.getDefaultClient())=>{
|
|
51
51
|
const provider = getWaasWalletProviderFromWalletAccount({
|
|
52
52
|
walletAccount
|
|
53
53
|
}, client);
|
|
@@ -57,11 +57,6 @@ const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
|
57
57
|
});
|
|
58
58
|
};
|
|
59
59
|
|
|
60
|
-
/**
|
|
61
|
-
* Filter duplicates from an array by equality.
|
|
62
|
-
* Uses a Set internally.
|
|
63
|
-
*/ const filterDuplicates = (array)=>Array.from(new Set(array));
|
|
64
|
-
|
|
65
60
|
/**
|
|
66
61
|
* Creates wallet accounts for the specified chains.
|
|
67
62
|
*
|
|
@@ -78,17 +73,29 @@ const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
|
78
73
|
* @param params.chains - The chains to create wallet accounts for.
|
|
79
74
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
80
75
|
* @returns A promise that resolves when all wallet accounts are created.
|
|
81
|
-
*/ const createWaasWalletAccounts = async ({ chains }, client =
|
|
82
|
-
|
|
76
|
+
*/ const createWaasWalletAccounts = async ({ chains }, client = constants.getDefaultClient())=>{
|
|
77
|
+
// we need this right now so we don't try to create wallet accounts for chains
|
|
78
|
+
// that we don't support Dynamid Waas yet in the JS SDK, like BTC
|
|
79
|
+
const supportedChains = [
|
|
80
|
+
'EVM',
|
|
81
|
+
'SOL',
|
|
82
|
+
'SUI'
|
|
83
|
+
];
|
|
84
|
+
const filteredSupportedChains = chains.filter((chain)=>supportedChains.includes(chain));
|
|
85
|
+
if (filteredSupportedChains.length === 0) {
|
|
83
86
|
return;
|
|
84
87
|
}
|
|
85
|
-
const walletProviderKeys =
|
|
86
|
-
|
|
87
|
-
|
|
88
|
+
const walletProviderKeys = filteredSupportedChains.map((chain)=>getVerifiedCredentialForWalletAccount.formatWalletProviderKey({
|
|
89
|
+
chain,
|
|
90
|
+
displayName: constants$1.DYNAMIC_WAAS_METADATA.displayName,
|
|
91
|
+
walletProviderType: sdkApiCore.WalletProviderEnum.EmbeddedWallet
|
|
92
|
+
}));
|
|
93
|
+
const walletProviderEntries = filterDuplicates.filterDuplicates(walletProviderKeys).map((walletProviderKey)=>{
|
|
94
|
+
const walletProvider = getVerifiedCredentialForWalletAccount.getWalletProviderByKey({
|
|
88
95
|
walletProviderKey
|
|
89
96
|
}, client);
|
|
90
97
|
if (!walletProvider) {
|
|
91
|
-
throw new
|
|
98
|
+
throw new getVerifiedCredentialForWalletAccount.NoWalletProviderFoundError({
|
|
92
99
|
walletProviderKey
|
|
93
100
|
});
|
|
94
101
|
}
|
|
@@ -117,14 +124,15 @@ const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
|
117
124
|
* @param [params.password] - Optional password for key share operations.
|
|
118
125
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
119
126
|
* @returns A promise that resolves when the key delegation is complete.
|
|
120
|
-
*/ const delegateWaasKeyShares = async ({ password, walletAccount }, client =
|
|
127
|
+
*/ const delegateWaasKeyShares = async ({ password, walletAccount }, client = constants.getDefaultClient())=>{
|
|
121
128
|
const provider = getWaasWalletProviderFromWalletAccount({
|
|
122
129
|
walletAccount
|
|
123
130
|
}, client);
|
|
124
|
-
|
|
131
|
+
await provider.delegateKeyShares({
|
|
125
132
|
password,
|
|
126
133
|
walletAccount
|
|
127
134
|
});
|
|
135
|
+
await NotWaasWalletAccountError.refreshUser(client);
|
|
128
136
|
};
|
|
129
137
|
|
|
130
138
|
/**
|
|
@@ -137,7 +145,7 @@ const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
|
137
145
|
* @param [params.password] - Optional password to encrypt the exported shares.
|
|
138
146
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
139
147
|
* @returns A promise that resolves to the exported key shares.
|
|
140
|
-
*/ const exportWaasClientKeyshares = async ({ password, walletAccount }, client =
|
|
148
|
+
*/ const exportWaasClientKeyshares = async ({ password, walletAccount }, client = constants.getDefaultClient())=>{
|
|
141
149
|
const provider = getWaasWalletProviderFromWalletAccount({
|
|
142
150
|
walletAccount
|
|
143
151
|
}, client);
|
|
@@ -158,7 +166,7 @@ const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
|
158
166
|
* @param [params.password] - Optional password to decrypt the private key.
|
|
159
167
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
160
168
|
* @returns A promise that resolves when the private key export is complete.
|
|
161
|
-
*/ const exportWaasPrivateKey = async ({ displayContainer, password, walletAccount }, client =
|
|
169
|
+
*/ const exportWaasPrivateKey = async ({ displayContainer, password, walletAccount }, client = constants.getDefaultClient())=>{
|
|
162
170
|
const provider = getWaasWalletProviderFromWalletAccount({
|
|
163
171
|
walletAccount
|
|
164
172
|
}, client);
|
|
@@ -170,7 +178,7 @@ const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
|
170
178
|
};
|
|
171
179
|
|
|
172
180
|
const userHasEmbeddedWalletForChain = ({ user, chain })=>{
|
|
173
|
-
const hasEmbeddedWalletForChain = user.verifiedCredentials.some((vc)=>vc.walletProvider === sdkApiCore.WalletProviderEnum.EmbeddedWallet && vc.chain &&
|
|
181
|
+
const hasEmbeddedWalletForChain = user.verifiedCredentials.some((vc)=>vc.walletProvider === sdkApiCore.WalletProviderEnum.EmbeddedWallet && vc.chain && constants.getChainFromVerifiedCredentialChain(vc.chain) === chain);
|
|
174
182
|
return hasEmbeddedWalletForChain;
|
|
175
183
|
};
|
|
176
184
|
|
|
@@ -182,9 +190,9 @@ const userHasEmbeddedWalletForChain = ({ user, chain })=>{
|
|
|
182
190
|
*
|
|
183
191
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
184
192
|
* @returns True if Dynamic WaaS is enabled, false otherwise.
|
|
185
|
-
*/ const isDynamicWaasEnabled = (client =
|
|
193
|
+
*/ const isDynamicWaasEnabled = (client = constants.getDefaultClient())=>{
|
|
186
194
|
const projectSettings = client.projectSettings;
|
|
187
|
-
|
|
195
|
+
constants.assertDefined(projectSettings, 'Project settings are not available');
|
|
188
196
|
const embeddedWalletSettings = projectSettings.sdk.embeddedWallets;
|
|
189
197
|
const dynamicWaasIsEnabled = (embeddedWalletSettings == null ? void 0 : embeddedWalletSettings.defaultWalletVersion) === sdkApiCore.EmbeddedWalletVersionEnum.V3;
|
|
190
198
|
return dynamicWaasIsEnabled;
|
|
@@ -196,10 +204,10 @@ const userHasEmbeddedWalletForChain = ({ user, chain })=>{
|
|
|
196
204
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
197
205
|
* @returns An array of all chains that have waas wallet accounts enabled
|
|
198
206
|
* but for which the current user does not yet have an embedded wallet account.
|
|
199
|
-
*/ const getChainsMissingWaasWalletAccounts = (client =
|
|
207
|
+
*/ const getChainsMissingWaasWalletAccounts = (client = constants.getDefaultClient())=>{
|
|
200
208
|
var _embeddedWalletSettings_chainConfigurations;
|
|
201
209
|
const projectSettings = client.projectSettings;
|
|
202
|
-
|
|
210
|
+
constants.assertDefined(projectSettings, 'Project settings are not available');
|
|
203
211
|
const embeddedWalletSettings = projectSettings.sdk.embeddedWallets;
|
|
204
212
|
const isWaasEnabled = isDynamicWaasEnabled(client);
|
|
205
213
|
const user = client.user;
|
|
@@ -215,12 +223,32 @@ const userHasEmbeddedWalletForChain = ({ user, chain })=>{
|
|
|
215
223
|
}));
|
|
216
224
|
};
|
|
217
225
|
|
|
226
|
+
/**
|
|
227
|
+
* Checks if a WaaS wallet account has delegated access.
|
|
228
|
+
*
|
|
229
|
+
* @param params.walletAccount - The WaaS wallet account to check for delegated access.
|
|
230
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
231
|
+
* @returns True if the wallet account has delegated access, false otherwise.
|
|
232
|
+
*/ const hasDelegatedAccess = ({ walletAccount }, client = constants.getDefaultClient())=>{
|
|
233
|
+
var _verifiedCredential_walletProperties_keyShares, _verifiedCredential_walletProperties;
|
|
234
|
+
const verifiedCredential = getVerifiedCredentialForWalletAccount.getVerifiedCredentialForWalletAccount({
|
|
235
|
+
walletAccount
|
|
236
|
+
}, client);
|
|
237
|
+
constants.assertDefined(verifiedCredential, 'Verified credential not found for Waas wallet account');
|
|
238
|
+
const hasDelegatedKeyShare = (_verifiedCredential_walletProperties = verifiedCredential.walletProperties) == null ? void 0 : (_verifiedCredential_walletProperties_keyShares = _verifiedCredential_walletProperties.keyShares) == null ? void 0 : _verifiedCredential_walletProperties_keyShares.some((keyShare)=>keyShare.backupLocation === 'delegated');
|
|
239
|
+
return !!hasDelegatedKeyShare;
|
|
240
|
+
};
|
|
241
|
+
|
|
218
242
|
const getWaasWalletProviderByChain = ({ chain }, client)=>{
|
|
219
|
-
const providers =
|
|
220
|
-
const waasProviderKey =
|
|
243
|
+
const providers = getVerifiedCredentialForWalletAccount.getWalletProviders(client);
|
|
244
|
+
const waasProviderKey = getVerifiedCredentialForWalletAccount.formatWalletProviderKey({
|
|
245
|
+
chain,
|
|
246
|
+
displayName: constants$1.DYNAMIC_WAAS_METADATA.displayName,
|
|
247
|
+
walletProviderType: sdkApiCore.WalletProviderEnum.EmbeddedWallet
|
|
248
|
+
});
|
|
221
249
|
const waasProvider = providers.find((provider)=>provider.key === waasProviderKey && provider.chain === chain);
|
|
222
250
|
if (!waasProvider || !isWaasWalletProvider(waasProvider)) {
|
|
223
|
-
throw new
|
|
251
|
+
throw new getVerifiedCredentialForWalletAccount.NoWalletProviderFoundError({
|
|
224
252
|
walletProviderKey: waasProviderKey
|
|
225
253
|
});
|
|
226
254
|
}
|
|
@@ -238,7 +266,7 @@ const getWaasWalletProviderByChain = ({ chain }, client)=>{
|
|
|
238
266
|
* @param [params.thresholdSignatureScheme] - Optional threshold signature scheme configuration. Default is TWO_OF_TWO.
|
|
239
267
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
240
268
|
* @returns A promise that resolves when the private key is successfully imported.
|
|
241
|
-
*/ const importWaasPrivateKey = async ({ chain, privateKey, thresholdSignatureScheme }, client =
|
|
269
|
+
*/ const importWaasPrivateKey = async ({ chain, privateKey, thresholdSignatureScheme }, client = constants.getDefaultClient())=>{
|
|
242
270
|
const provider = getWaasWalletProviderByChain({
|
|
243
271
|
chain
|
|
244
272
|
}, client);
|
|
@@ -255,7 +283,7 @@ const getWaasWalletProviderByChain = ({ chain }, client)=>{
|
|
|
255
283
|
* @param params.walletAccount - The wallet account to check.
|
|
256
284
|
* @returns True if the wallet account is a WaaS wallet account, false otherwise.
|
|
257
285
|
*/ const isWaasWalletAccount = ({ walletAccount })=>{
|
|
258
|
-
return walletAccount.walletProviderKey.includes(constants.DYNAMIC_WAAS_METADATA.
|
|
286
|
+
return walletAccount.walletProviderKey.includes(constants$1.DYNAMIC_WAAS_METADATA.normalizedWalletName);
|
|
259
287
|
};
|
|
260
288
|
|
|
261
289
|
/**
|
|
@@ -268,7 +296,7 @@ const getWaasWalletProviderByChain = ({ chain }, client)=>{
|
|
|
268
296
|
* @param [params.password] - Optional password for key share operations.
|
|
269
297
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
270
298
|
* @returns A promise that resolves when the key shares are refreshed.
|
|
271
|
-
*/ const refreshWaasWalletAccountShares = async ({ walletAccount, password }, client =
|
|
299
|
+
*/ const refreshWaasWalletAccountShares = async ({ walletAccount, password }, client = constants.getDefaultClient())=>{
|
|
272
300
|
const provider = getWaasWalletProviderFromWalletAccount({
|
|
273
301
|
walletAccount
|
|
274
302
|
}, client);
|
|
@@ -278,6 +306,24 @@ const getWaasWalletProviderByChain = ({ chain }, client)=>{
|
|
|
278
306
|
});
|
|
279
307
|
};
|
|
280
308
|
|
|
309
|
+
/**
|
|
310
|
+
* Revokes the delegation of a WaaS wallet account.
|
|
311
|
+
*
|
|
312
|
+
* @param params.walletAccount - The WaaS wallet account to revoke delegation for.
|
|
313
|
+
* @param [params.password] - Optional password for delegation operations.
|
|
314
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
315
|
+
* @returns A promise that resolves when the delegation is revoked.
|
|
316
|
+
*/ const revokeWaasDelegation = async ({ password, walletAccount }, client = constants.getDefaultClient())=>{
|
|
317
|
+
const provider = getWaasWalletProviderFromWalletAccount({
|
|
318
|
+
walletAccount
|
|
319
|
+
}, client);
|
|
320
|
+
await provider.revokeDelegation({
|
|
321
|
+
password,
|
|
322
|
+
walletAccount
|
|
323
|
+
});
|
|
324
|
+
await NotWaasWalletAccountError.refreshUser(client);
|
|
325
|
+
};
|
|
326
|
+
|
|
281
327
|
const userHasExternalWallet = (user)=>{
|
|
282
328
|
const hasExternalWallet = user == null ? void 0 : user.verifiedCredentials.some((vc)=>vc.format === sdkApiCore.JwtVerifiedCredentialFormatEnum.Blockchain && vc.walletProvider !== sdkApiCore.WalletProviderEnum.EmbeddedWallet);
|
|
283
329
|
return hasExternalWallet;
|
|
@@ -293,8 +339,8 @@ const userHasExternalWallet = (user)=>{
|
|
|
293
339
|
* @param params.chain - The blockchain network to check.
|
|
294
340
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
295
341
|
* @returns True if a wallet should be auto-created for the chain, false otherwise.
|
|
296
|
-
*/ const shouldAutoCreateWalletForChain = ({ chain }, client =
|
|
297
|
-
|
|
342
|
+
*/ const shouldAutoCreateWalletForChain = ({ chain }, client = constants.getDefaultClient())=>{
|
|
343
|
+
constants.assertDefined(client.projectSettings, 'Project settings are not available');
|
|
298
344
|
const embeddedWalletSettings = client.projectSettings.sdk.embeddedWallets;
|
|
299
345
|
const automaticEmbeddedWalletCreationEnabled = embeddedWalletSettings == null ? void 0 : embeddedWalletSettings.automaticEmbeddedWalletCreation;
|
|
300
346
|
if (!automaticEmbeddedWalletCreationEnabled || !client.user) {
|
|
@@ -322,7 +368,7 @@ const userHasExternalWallet = (user)=>{
|
|
|
322
368
|
* @param params.newPassword - The new password to set for the wallet.
|
|
323
369
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
324
370
|
* @returns A promise that resolves when the password is successfully updated.
|
|
325
|
-
*/ const updateWaasPassword = async ({ currentPassword, newPassword, walletAccount }, client =
|
|
371
|
+
*/ const updateWaasPassword = async ({ currentPassword, newPassword, walletAccount }, client = constants.getDefaultClient())=>{
|
|
326
372
|
const provider = getWaasWalletProviderFromWalletAccount({
|
|
327
373
|
walletAccount
|
|
328
374
|
}, client);
|
|
@@ -333,7 +379,7 @@ const userHasExternalWallet = (user)=>{
|
|
|
333
379
|
});
|
|
334
380
|
};
|
|
335
381
|
|
|
336
|
-
assertPackageVersion.assertPackageVersion(
|
|
382
|
+
assertPackageVersion.assertPackageVersion(constants.name, constants.version);
|
|
337
383
|
|
|
338
384
|
exports.NotWaasWalletProviderError = NotWaasWalletProviderError;
|
|
339
385
|
exports.backupWaasKeySharesToGoogleDrive = backupWaasKeySharesToGoogleDrive;
|
|
@@ -342,9 +388,11 @@ exports.delegateWaasKeyShares = delegateWaasKeyShares;
|
|
|
342
388
|
exports.exportWaasClientKeyshares = exportWaasClientKeyshares;
|
|
343
389
|
exports.exportWaasPrivateKey = exportWaasPrivateKey;
|
|
344
390
|
exports.getChainsMissingWaasWalletAccounts = getChainsMissingWaasWalletAccounts;
|
|
391
|
+
exports.hasDelegatedAccess = hasDelegatedAccess;
|
|
345
392
|
exports.importWaasPrivateKey = importWaasPrivateKey;
|
|
346
393
|
exports.isDynamicWaasEnabled = isDynamicWaasEnabled;
|
|
347
394
|
exports.isWaasWalletAccount = isWaasWalletAccount;
|
|
348
395
|
exports.refreshWaasWalletAccountShares = refreshWaasWalletAccountShares;
|
|
396
|
+
exports.revokeWaasDelegation = revokeWaasDelegation;
|
|
349
397
|
exports.shouldAutoCreateWalletForChain = shouldAutoCreateWalletForChain;
|
|
350
398
|
exports.updateWaasPassword = updateWaasPassword;
|
package/waas.esm.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { assertPackageVersion } from '@dynamic-labs-sdk/assert-package-version';
|
|
2
|
-
import { B as BaseError,
|
|
2
|
+
import { B as BaseError, g as getDefaultClient, k as getChainFromVerifiedCredentialChain, d as assertDefined, n as name, v as version } from './constants.esm.js';
|
|
3
3
|
import { N as NotWaasWalletAccountError, r as refreshUser } from './NotWaasWalletAccountError.esm.js';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { a as getWalletProviderFromWalletAccount, m as formatWalletProviderKey, b as getWalletProviderByKey, N as NoWalletProviderFoundError, i as getVerifiedCredentialForWalletAccount, h as getWalletProviders } from './getVerifiedCredentialForWalletAccount.esm.js';
|
|
5
|
+
import { D as DYNAMIC_WAAS_METADATA } from './constants.esm2.js';
|
|
6
6
|
import { WalletProviderEnum, EmbeddedWalletVersionEnum, JwtVerifiedCredentialFormatEnum } from '@dynamic-labs/sdk-api-core';
|
|
7
|
+
import { f as filterDuplicates } from './filterDuplicates.esm.js';
|
|
7
8
|
import 'buffer';
|
|
8
|
-
import 'zod/mini';
|
|
9
9
|
|
|
10
10
|
class NotWaasWalletProviderError extends BaseError {
|
|
11
11
|
constructor({ walletProviderKey }){
|
|
@@ -20,7 +20,7 @@ class NotWaasWalletProviderError extends BaseError {
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
const isWaasWalletProvider = (walletProvider)=>{
|
|
23
|
-
return walletProvider.key.includes(DYNAMIC_WAAS_METADATA.
|
|
23
|
+
return walletProvider.key.includes(DYNAMIC_WAAS_METADATA.normalizedWalletName);
|
|
24
24
|
};
|
|
25
25
|
|
|
26
26
|
const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
@@ -55,11 +55,6 @@ const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
|
55
55
|
});
|
|
56
56
|
};
|
|
57
57
|
|
|
58
|
-
/**
|
|
59
|
-
* Filter duplicates from an array by equality.
|
|
60
|
-
* Uses a Set internally.
|
|
61
|
-
*/ const filterDuplicates = (array)=>Array.from(new Set(array));
|
|
62
|
-
|
|
63
58
|
/**
|
|
64
59
|
* Creates wallet accounts for the specified chains.
|
|
65
60
|
*
|
|
@@ -77,10 +72,22 @@ const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
|
77
72
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
78
73
|
* @returns A promise that resolves when all wallet accounts are created.
|
|
79
74
|
*/ const createWaasWalletAccounts = async ({ chains }, client = getDefaultClient())=>{
|
|
80
|
-
|
|
75
|
+
// we need this right now so we don't try to create wallet accounts for chains
|
|
76
|
+
// that we don't support Dynamid Waas yet in the JS SDK, like BTC
|
|
77
|
+
const supportedChains = [
|
|
78
|
+
'EVM',
|
|
79
|
+
'SOL',
|
|
80
|
+
'SUI'
|
|
81
|
+
];
|
|
82
|
+
const filteredSupportedChains = chains.filter((chain)=>supportedChains.includes(chain));
|
|
83
|
+
if (filteredSupportedChains.length === 0) {
|
|
81
84
|
return;
|
|
82
85
|
}
|
|
83
|
-
const walletProviderKeys =
|
|
86
|
+
const walletProviderKeys = filteredSupportedChains.map((chain)=>formatWalletProviderKey({
|
|
87
|
+
chain,
|
|
88
|
+
displayName: DYNAMIC_WAAS_METADATA.displayName,
|
|
89
|
+
walletProviderType: WalletProviderEnum.EmbeddedWallet
|
|
90
|
+
}));
|
|
84
91
|
const walletProviderEntries = filterDuplicates(walletProviderKeys).map((walletProviderKey)=>{
|
|
85
92
|
const walletProvider = getWalletProviderByKey({
|
|
86
93
|
walletProviderKey
|
|
@@ -119,10 +126,11 @@ const getWaasWalletProviderFromWalletAccount = ({ walletAccount }, client)=>{
|
|
|
119
126
|
const provider = getWaasWalletProviderFromWalletAccount({
|
|
120
127
|
walletAccount
|
|
121
128
|
}, client);
|
|
122
|
-
|
|
129
|
+
await provider.delegateKeyShares({
|
|
123
130
|
password,
|
|
124
131
|
walletAccount
|
|
125
132
|
});
|
|
133
|
+
await refreshUser(client);
|
|
126
134
|
};
|
|
127
135
|
|
|
128
136
|
/**
|
|
@@ -213,9 +221,29 @@ const userHasEmbeddedWalletForChain = ({ user, chain })=>{
|
|
|
213
221
|
}));
|
|
214
222
|
};
|
|
215
223
|
|
|
224
|
+
/**
|
|
225
|
+
* Checks if a WaaS wallet account has delegated access.
|
|
226
|
+
*
|
|
227
|
+
* @param params.walletAccount - The WaaS wallet account to check for delegated access.
|
|
228
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
229
|
+
* @returns True if the wallet account has delegated access, false otherwise.
|
|
230
|
+
*/ const hasDelegatedAccess = ({ walletAccount }, client = getDefaultClient())=>{
|
|
231
|
+
var _verifiedCredential_walletProperties_keyShares, _verifiedCredential_walletProperties;
|
|
232
|
+
const verifiedCredential = getVerifiedCredentialForWalletAccount({
|
|
233
|
+
walletAccount
|
|
234
|
+
}, client);
|
|
235
|
+
assertDefined(verifiedCredential, 'Verified credential not found for Waas wallet account');
|
|
236
|
+
const hasDelegatedKeyShare = (_verifiedCredential_walletProperties = verifiedCredential.walletProperties) == null ? void 0 : (_verifiedCredential_walletProperties_keyShares = _verifiedCredential_walletProperties.keyShares) == null ? void 0 : _verifiedCredential_walletProperties_keyShares.some((keyShare)=>keyShare.backupLocation === 'delegated');
|
|
237
|
+
return !!hasDelegatedKeyShare;
|
|
238
|
+
};
|
|
239
|
+
|
|
216
240
|
const getWaasWalletProviderByChain = ({ chain }, client)=>{
|
|
217
241
|
const providers = getWalletProviders(client);
|
|
218
|
-
const waasProviderKey = formatWalletProviderKey(
|
|
242
|
+
const waasProviderKey = formatWalletProviderKey({
|
|
243
|
+
chain,
|
|
244
|
+
displayName: DYNAMIC_WAAS_METADATA.displayName,
|
|
245
|
+
walletProviderType: WalletProviderEnum.EmbeddedWallet
|
|
246
|
+
});
|
|
219
247
|
const waasProvider = providers.find((provider)=>provider.key === waasProviderKey && provider.chain === chain);
|
|
220
248
|
if (!waasProvider || !isWaasWalletProvider(waasProvider)) {
|
|
221
249
|
throw new NoWalletProviderFoundError({
|
|
@@ -253,7 +281,7 @@ const getWaasWalletProviderByChain = ({ chain }, client)=>{
|
|
|
253
281
|
* @param params.walletAccount - The wallet account to check.
|
|
254
282
|
* @returns True if the wallet account is a WaaS wallet account, false otherwise.
|
|
255
283
|
*/ const isWaasWalletAccount = ({ walletAccount })=>{
|
|
256
|
-
return walletAccount.walletProviderKey.includes(DYNAMIC_WAAS_METADATA.
|
|
284
|
+
return walletAccount.walletProviderKey.includes(DYNAMIC_WAAS_METADATA.normalizedWalletName);
|
|
257
285
|
};
|
|
258
286
|
|
|
259
287
|
/**
|
|
@@ -276,6 +304,24 @@ const getWaasWalletProviderByChain = ({ chain }, client)=>{
|
|
|
276
304
|
});
|
|
277
305
|
};
|
|
278
306
|
|
|
307
|
+
/**
|
|
308
|
+
* Revokes the delegation of a WaaS wallet account.
|
|
309
|
+
*
|
|
310
|
+
* @param params.walletAccount - The WaaS wallet account to revoke delegation for.
|
|
311
|
+
* @param [params.password] - Optional password for delegation operations.
|
|
312
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
313
|
+
* @returns A promise that resolves when the delegation is revoked.
|
|
314
|
+
*/ const revokeWaasDelegation = async ({ password, walletAccount }, client = getDefaultClient())=>{
|
|
315
|
+
const provider = getWaasWalletProviderFromWalletAccount({
|
|
316
|
+
walletAccount
|
|
317
|
+
}, client);
|
|
318
|
+
await provider.revokeDelegation({
|
|
319
|
+
password,
|
|
320
|
+
walletAccount
|
|
321
|
+
});
|
|
322
|
+
await refreshUser(client);
|
|
323
|
+
};
|
|
324
|
+
|
|
279
325
|
const userHasExternalWallet = (user)=>{
|
|
280
326
|
const hasExternalWallet = user == null ? void 0 : user.verifiedCredentials.some((vc)=>vc.format === JwtVerifiedCredentialFormatEnum.Blockchain && vc.walletProvider !== WalletProviderEnum.EmbeddedWallet);
|
|
281
327
|
return hasExternalWallet;
|
|
@@ -333,4 +379,4 @@ const userHasExternalWallet = (user)=>{
|
|
|
333
379
|
|
|
334
380
|
assertPackageVersion(name, version);
|
|
335
381
|
|
|
336
|
-
export { NotWaasWalletProviderError, backupWaasKeySharesToGoogleDrive, createWaasWalletAccounts, delegateWaasKeyShares, exportWaasClientKeyshares, exportWaasPrivateKey, getChainsMissingWaasWalletAccounts, importWaasPrivateKey, isDynamicWaasEnabled, isWaasWalletAccount, refreshWaasWalletAccountShares, shouldAutoCreateWalletForChain, updateWaasPassword };
|
|
382
|
+
export { NotWaasWalletProviderError, backupWaasKeySharesToGoogleDrive, createWaasWalletAccounts, delegateWaasKeyShares, exportWaasClientKeyshares, exportWaasPrivateKey, getChainsMissingWaasWalletAccounts, hasDelegatedAccess, importWaasPrivateKey, isDynamicWaasEnabled, isWaasWalletAccount, refreshWaasWalletAccountShares, revokeWaasDelegation, shouldAutoCreateWalletForChain, updateWaasPassword };
|
package/waasCore.cjs.js
CHANGED
|
@@ -1,37 +1,36 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var assertPackageVersion = require('@dynamic-labs-sdk/assert-package-version');
|
|
4
|
-
var
|
|
5
|
-
var constants = require('./constants.
|
|
4
|
+
var constants$1 = require('./constants.cjs.js');
|
|
5
|
+
var constants = require('./constants.cjs2.js');
|
|
6
6
|
var browserWalletClient = require('@dynamic-labs-wallet/browser-wallet-client');
|
|
7
7
|
var sdkApiCore = require('@dynamic-labs/sdk-api-core');
|
|
8
8
|
var InvalidParamError = require('./InvalidParamError.cjs.js');
|
|
9
9
|
var getSignedSessionId = require('./getSignedSessionId.cjs.js');
|
|
10
10
|
require('buffer');
|
|
11
|
-
require('zod/mini');
|
|
12
11
|
require('./isMfaRequiredForAction.cjs.js');
|
|
13
12
|
|
|
14
13
|
const createWaasClient = ({ chainName }, client)=>{
|
|
15
14
|
var _client_projectSettings_sdk_waas, _client_projectSettings;
|
|
16
|
-
const core =
|
|
15
|
+
const core = constants$1.getCore(client);
|
|
17
16
|
return new browserWalletClient.DynamicWalletClient({
|
|
18
|
-
authMode:
|
|
17
|
+
authMode: constants$1.isCookieEnabled(client) ? 'cookie' : 'header',
|
|
19
18
|
authToken: client.token || '',
|
|
20
19
|
baseApiUrl: (core.apiBaseUrl || constants.DEFAULT_WAAS_BASE_API_URL).replace('/api/v0', ''),
|
|
21
20
|
baseMPCRelayApiUrl: ((_client_projectSettings = client.projectSettings) == null ? void 0 : (_client_projectSettings_sdk_waas = _client_projectSettings.sdk.waas) == null ? void 0 : _client_projectSettings_sdk_waas.relayUrl) || constants.DEFAULT_WAAS_BASE_MPC_RELAY_API_URL,
|
|
22
21
|
chainName,
|
|
23
22
|
environmentId: core.environmentId,
|
|
24
|
-
sdkVersion: `${
|
|
23
|
+
sdkVersion: `${constants$1.CLIENT_SDK_NAME}/${core.version}`
|
|
25
24
|
});
|
|
26
25
|
};
|
|
27
26
|
|
|
28
27
|
const getWaasChainNameFromChain = (chain)=>{
|
|
29
|
-
return
|
|
28
|
+
return constants$1.CHAINS_INFO_MAP[chain].waasChainNameOverride || chain;
|
|
30
29
|
};
|
|
31
30
|
|
|
32
31
|
const RAW_MESSAGE_MESSAGE_REQUIRED_LENGTH = 64;
|
|
33
32
|
const createWaasProvider = ({ sdkClient, chain })=>{
|
|
34
|
-
const logger =
|
|
33
|
+
const logger = constants$1.getCore(sdkClient).logger;
|
|
35
34
|
let _waasClient;
|
|
36
35
|
// because the waas client needs the authToken to be set, we can only create it
|
|
37
36
|
// the first time it's needed, which is after the user has logged in
|
|
@@ -135,6 +134,17 @@ const createWaasProvider = ({ sdkClient, chain })=>{
|
|
|
135
134
|
signedSessionId
|
|
136
135
|
});
|
|
137
136
|
};
|
|
137
|
+
const revokeDelegation = async ({ password, walletAccount })=>{
|
|
138
|
+
const { signature: signedSessionId } = await getSignedSessionId.getSignedSessionId(sdkClient);
|
|
139
|
+
const waasClient = await getWaasClient();
|
|
140
|
+
var _sdkClient_token;
|
|
141
|
+
return waasClient.revokeDelegation({
|
|
142
|
+
accountAddress: walletAccount.address,
|
|
143
|
+
authToken: (_sdkClient_token = sdkClient.token) != null ? _sdkClient_token : undefined,
|
|
144
|
+
password,
|
|
145
|
+
signedSessionId
|
|
146
|
+
});
|
|
147
|
+
};
|
|
138
148
|
const signRawMessage = async ({ message, password, walletAccount })=>{
|
|
139
149
|
if (message.length !== RAW_MESSAGE_MESSAGE_REQUIRED_LENGTH) {
|
|
140
150
|
throw new InvalidParamError.InvalidParamError(`Message must be ${RAW_MESSAGE_MESSAGE_REQUIRED_LENGTH} characters long`);
|
|
@@ -222,6 +232,7 @@ const createWaasProvider = ({ sdkClient, chain })=>{
|
|
|
222
232
|
getWaasClient,
|
|
223
233
|
importPrivateKey,
|
|
224
234
|
refreshWalletAccountShares,
|
|
235
|
+
revokeDelegation,
|
|
225
236
|
signMessage,
|
|
226
237
|
signRawMessage,
|
|
227
238
|
signSerializedTransaction,
|
|
@@ -235,14 +246,14 @@ const getAllUserWaasAddressesForChain = ({ chain }, client)=>{
|
|
|
235
246
|
var _client_user_verifiedCredentials_filter;
|
|
236
247
|
const waasWalletCredentials = (_client_user_verifiedCredentials_filter = (_client_user = client.user) == null ? void 0 : _client_user.verifiedCredentials.filter((credential)=>{
|
|
237
248
|
var _credential_walletName;
|
|
238
|
-
return credential.walletProvider === sdkApiCore.WalletProviderEnum.EmbeddedWallet && ((_credential_walletName = credential.walletName) == null ? void 0 : _credential_walletName.toLowerCase().startsWith(constants.DYNAMIC_WAAS_METADATA.
|
|
249
|
+
return credential.walletProvider === sdkApiCore.WalletProviderEnum.EmbeddedWallet && ((_credential_walletName = credential.walletName) == null ? void 0 : _credential_walletName.toLowerCase().startsWith(constants.DYNAMIC_WAAS_METADATA.normalizedWalletName)) && credential.address && credential.chain && constants$1.getChainFromVerifiedCredentialChain(credential.chain) === chain;
|
|
239
250
|
})) != null ? _client_user_verifiedCredentials_filter : [];
|
|
240
251
|
const waasAddresses = waasWalletCredentials.map(// casting because we're already filtering out credentials without an address
|
|
241
252
|
(credential)=>credential.address);
|
|
242
253
|
return waasAddresses;
|
|
243
254
|
};
|
|
244
255
|
|
|
245
|
-
assertPackageVersion.assertPackageVersion(
|
|
256
|
+
assertPackageVersion.assertPackageVersion(constants$1.name, constants$1.version);
|
|
246
257
|
|
|
247
258
|
exports.DYNAMIC_WAAS_METADATA = constants.DYNAMIC_WAAS_METADATA;
|
|
248
259
|
exports.createWaasClient = createWaasClient;
|
package/waasCore.esm.js
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { assertPackageVersion } from '@dynamic-labs-sdk/assert-package-version';
|
|
2
|
-
import {
|
|
3
|
-
import { a as DEFAULT_WAAS_BASE_MPC_RELAY_API_URL, b as DEFAULT_WAAS_BASE_API_URL, D as DYNAMIC_WAAS_METADATA } from './constants.
|
|
2
|
+
import { a as getCore, C as CLIENT_SDK_NAME, i as isCookieEnabled, e as CHAINS_INFO_MAP, k as getChainFromVerifiedCredentialChain, n as name, v as version } from './constants.esm.js';
|
|
3
|
+
import { a as DEFAULT_WAAS_BASE_MPC_RELAY_API_URL, b as DEFAULT_WAAS_BASE_API_URL, D as DYNAMIC_WAAS_METADATA } from './constants.esm2.js';
|
|
4
4
|
import { DynamicWalletClient, ThresholdSignatureScheme } from '@dynamic-labs-wallet/browser-wallet-client';
|
|
5
5
|
import { MFAAction, WalletProviderEnum } from '@dynamic-labs/sdk-api-core';
|
|
6
6
|
import { I as InvalidParamError } from './InvalidParamError.esm.js';
|
|
7
7
|
import { g as getSignedSessionId, c as consumeMfaTokenIfRequiredForAction } from './getSignedSessionId.esm.js';
|
|
8
8
|
import 'buffer';
|
|
9
|
-
import 'zod/mini';
|
|
10
9
|
import './isMfaRequiredForAction.esm.js';
|
|
11
10
|
|
|
12
11
|
const createWaasClient = ({ chainName }, client)=>{
|
|
@@ -133,6 +132,17 @@ const createWaasProvider = ({ sdkClient, chain })=>{
|
|
|
133
132
|
signedSessionId
|
|
134
133
|
});
|
|
135
134
|
};
|
|
135
|
+
const revokeDelegation = async ({ password, walletAccount })=>{
|
|
136
|
+
const { signature: signedSessionId } = await getSignedSessionId(sdkClient);
|
|
137
|
+
const waasClient = await getWaasClient();
|
|
138
|
+
var _sdkClient_token;
|
|
139
|
+
return waasClient.revokeDelegation({
|
|
140
|
+
accountAddress: walletAccount.address,
|
|
141
|
+
authToken: (_sdkClient_token = sdkClient.token) != null ? _sdkClient_token : undefined,
|
|
142
|
+
password,
|
|
143
|
+
signedSessionId
|
|
144
|
+
});
|
|
145
|
+
};
|
|
136
146
|
const signRawMessage = async ({ message, password, walletAccount })=>{
|
|
137
147
|
if (message.length !== RAW_MESSAGE_MESSAGE_REQUIRED_LENGTH) {
|
|
138
148
|
throw new InvalidParamError(`Message must be ${RAW_MESSAGE_MESSAGE_REQUIRED_LENGTH} characters long`);
|
|
@@ -220,6 +230,7 @@ const createWaasProvider = ({ sdkClient, chain })=>{
|
|
|
220
230
|
getWaasClient,
|
|
221
231
|
importPrivateKey,
|
|
222
232
|
refreshWalletAccountShares,
|
|
233
|
+
revokeDelegation,
|
|
223
234
|
signMessage,
|
|
224
235
|
signRawMessage,
|
|
225
236
|
signSerializedTransaction,
|
|
@@ -233,7 +244,7 @@ const getAllUserWaasAddressesForChain = ({ chain }, client)=>{
|
|
|
233
244
|
var _client_user_verifiedCredentials_filter;
|
|
234
245
|
const waasWalletCredentials = (_client_user_verifiedCredentials_filter = (_client_user = client.user) == null ? void 0 : _client_user.verifiedCredentials.filter((credential)=>{
|
|
235
246
|
var _credential_walletName;
|
|
236
|
-
return credential.walletProvider === WalletProviderEnum.EmbeddedWallet && ((_credential_walletName = credential.walletName) == null ? void 0 : _credential_walletName.toLowerCase().startsWith(DYNAMIC_WAAS_METADATA.
|
|
247
|
+
return credential.walletProvider === WalletProviderEnum.EmbeddedWallet && ((_credential_walletName = credential.walletName) == null ? void 0 : _credential_walletName.toLowerCase().startsWith(DYNAMIC_WAAS_METADATA.normalizedWalletName)) && credential.address && credential.chain && getChainFromVerifiedCredentialChain(credential.chain) === chain;
|
|
237
248
|
})) != null ? _client_user_verifiedCredentials_filter : [];
|
|
238
249
|
const waasAddresses = waasWalletCredentials.map(// casting because we're already filtering out credentials without an address
|
|
239
250
|
(credential)=>credential.address);
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var logout = require('./logout.cjs.js');
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Emits the `walletAccountsChanged` event.
|
|
7
|
-
*/ const emitWalletAccountsChangedEvent = (client)=>{
|
|
8
|
-
const walletAccounts = logout.getWalletAccounts(client);
|
|
9
|
-
logout.emitEvent({
|
|
10
|
-
args: {
|
|
11
|
-
walletAccounts
|
|
12
|
-
},
|
|
13
|
-
event: 'walletAccountsChanged'
|
|
14
|
-
}, client);
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
const checkAndRaiseWalletAccountsChangedEvent = ({ previousState }, client)=>{
|
|
18
|
-
const core = logout.getCore(client);
|
|
19
|
-
const walletAccountsHashBefore = getWalletAccountsHash(previousState);
|
|
20
|
-
const walletAccountsHashAfter = getWalletAccountsHash(core.state.get());
|
|
21
|
-
if (walletAccountsHashBefore !== walletAccountsHashAfter) {
|
|
22
|
-
emitWalletAccountsChangedEvent(client);
|
|
23
|
-
}
|
|
24
|
-
};
|
|
25
|
-
const getWalletAccountsHash = (state)=>logout.getWalletAccountsFromState(state).map(({ id })=>id).sort().join('-');
|
|
26
|
-
|
|
27
|
-
const updateAuthFromVerifyResponse = ({ response }, client)=>{
|
|
28
|
-
const core = logout.getCore(client);
|
|
29
|
-
const previousState = logout._extends({}, core.state.get());
|
|
30
|
-
const { user, minifiedJwt, jwt, expiresAt, mfaToken } = response;
|
|
31
|
-
// Expires at is in seconds, so we need to convert it to milliseconds
|
|
32
|
-
const sessionExpiresAt = new Date(expiresAt * 1000);
|
|
33
|
-
core.state.set({
|
|
34
|
-
legacyToken: jwt != null ? jwt : null,
|
|
35
|
-
mfaToken: mfaToken != null ? mfaToken : null,
|
|
36
|
-
sessionExpiresAt: sessionExpiresAt,
|
|
37
|
-
token: minifiedJwt != null ? minifiedJwt : null,
|
|
38
|
-
user
|
|
39
|
-
});
|
|
40
|
-
/**
|
|
41
|
-
* For customers using a sandbox environment with cookies enabled, we need to set the cookie
|
|
42
|
-
* programmatically because Redcoast won't set the cookie via headers. We set the cookie programmatically
|
|
43
|
-
* so customers can access the cookie from document.cookie consistently between sandbox and live environments.
|
|
44
|
-
*/ if (minifiedJwt && logout.isCookieEnabled(client)) {
|
|
45
|
-
const expireDate = sessionExpiresAt.toUTCString();
|
|
46
|
-
logout.setCookie(`${logout.DYNAMIC_AUTH_COOKIE_NAME}=${minifiedJwt}; expires=${expireDate}; path=/; SameSite=Lax`);
|
|
47
|
-
}
|
|
48
|
-
checkAndRaiseWalletAccountsChangedEvent({
|
|
49
|
-
previousState
|
|
50
|
-
}, client);
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* Get all available wallet providers to interact with internally.
|
|
55
|
-
*/ const getWalletProviders = (client)=>{
|
|
56
|
-
const walletProviderRegistry = logout.getWalletProviderRegistry(client);
|
|
57
|
-
return walletProviderRegistry.listProviders();
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
const getWalletProviderByKey = ({ walletProviderKey }, client)=>{
|
|
61
|
-
const walletProviders = getWalletProviders(client);
|
|
62
|
-
const walletProvider = walletProviders.find((walletProvider)=>walletProvider.key === walletProviderKey);
|
|
63
|
-
if (!walletProvider) {
|
|
64
|
-
throw new logout.NoWalletProviderFoundError({
|
|
65
|
-
walletProviderKey
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
return walletProvider;
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
exports.emitWalletAccountsChangedEvent = emitWalletAccountsChangedEvent;
|
|
72
|
-
exports.getWalletProviderByKey = getWalletProviderByKey;
|
|
73
|
-
exports.getWalletProviders = getWalletProviders;
|
|
74
|
-
exports.updateAuthFromVerifyResponse = updateAuthFromVerifyResponse;
|