@dynamic-labs/sdk-react-core 4.78.0 → 4.79.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +22 -0
- package/package.cjs +4 -4
- package/package.js +4 -4
- package/package.json +15 -15
- package/src/index.cjs +9 -1
- package/src/index.d.ts +2 -1
- package/src/index.js +4 -1
- package/src/lib/context/ErrorContext/ErrorContext.cjs +2 -2
- package/src/lib/context/ErrorContext/ErrorContext.d.ts +1 -1
- package/src/lib/context/ErrorContext/ErrorContext.js +2 -2
- package/src/lib/context/PhantomRedirectContext/useResponseHandlers.cjs +3 -1
- package/src/lib/context/PhantomRedirectContext/useResponseHandlers.js +3 -1
- package/src/lib/context/SocialRedirectContext/SocialRedirectContext.cjs +7 -6
- package/src/lib/context/SocialRedirectContext/SocialRedirectContext.js +7 -6
- package/src/lib/shared/utils/functions/index.d.ts +1 -0
- package/src/lib/shared/utils/functions/instrumentAuthLoginFailed/index.d.ts +2 -0
- package/src/lib/shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.cjs +17 -0
- package/src/lib/shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.d.ts +7 -0
- package/src/lib/shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.js +13 -0
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +10 -1
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +10 -1
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSignSplitSteps/useConnectAndSignSplitSteps.cjs +5 -1
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSignSplitSteps/useConnectAndSignSplitSteps.js +5 -1
- package/src/lib/utils/hooks/authenticationHooks/useSignConnectOnlyUser/useSignConnectOnlyUser.cjs +5 -1
- package/src/lib/utils/hooks/authenticationHooks/useSignConnectOnlyUser/useSignConnectOnlyUser.js +5 -1
- package/src/lib/utils/hooks/index.d.ts +3 -2
- package/src/lib/utils/hooks/useGoogleDriveBackupReadiness/index.d.ts +1 -0
- package/src/lib/utils/hooks/useGoogleDriveBackupReadiness/useGoogleDriveBackupReadiness.cjs +222 -0
- package/src/lib/utils/hooks/useGoogleDriveBackupReadiness/useGoogleDriveBackupReadiness.d.ts +85 -0
- package/src/lib/utils/hooks/useGoogleDriveBackupReadiness/useGoogleDriveBackupReadiness.js +218 -0
- package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.cjs +6 -2
- package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.js +6 -2
- package/src/lib/utils/hooks/useUserAuth/useUserAuth.cjs +7 -1
- package/src/lib/utils/hooks/useUserAuth/useUserAuth.js +7 -1
- package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +6 -2
- package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +6 -2
- package/src/lib/utils/hooks/useWalletBackup/googleDriveBackupErrors.cjs +33 -0
- package/src/lib/utils/hooks/useWalletBackup/googleDriveBackupErrors.d.ts +8 -0
- package/src/lib/utils/hooks/useWalletBackup/googleDriveBackupErrors.js +29 -0
- package/src/lib/utils/hooks/useWalletBackup/googleDriveScopes.cjs +22 -0
- package/src/lib/utils/hooks/useWalletBackup/googleDriveScopes.d.ts +10 -0
- package/src/lib/utils/hooks/useWalletBackup/googleDriveScopes.js +16 -0
- package/src/lib/utils/hooks/useWalletBackup/index.d.ts +2 -0
- package/src/lib/utils/hooks/useWalletBackup/useWalletBackup.cjs +8 -0
- package/src/lib/utils/hooks/useWalletBackup/useWalletBackup.d.ts +2 -0
- package/src/lib/utils/hooks/useWalletBackup/useWalletBackup.js +9 -1
- package/src/lib/utils/hooks/useWalletItemActions/useHandleWalletItem/useHandleWalletItem.cjs +1 -1
- package/src/lib/utils/hooks/useWalletItemActions/useHandleWalletItem/useHandleWalletItem.js +1 -1
- package/src/lib/views/EmailVerification/EmailVerification.cjs +3 -1
- package/src/lib/views/EmailVerification/EmailVerification.js +3 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,26 @@
|
|
|
1
1
|
|
|
2
|
+
## [4.79.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.78.1...v4.79.0) (2026-04-30)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
* **sdk-react-core:** two-layer Google Drive backup access defense [DYNT-754] ([#11069](https://github.com/dynamic-labs/dynamic-auth/issues/11069)) ([1ff8b83](https://github.com/dynamic-labs/dynamic-auth/commit/1ff8b83f9c7ba077c586513a250f6aed114e4b07))
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Bug Fixes
|
|
11
|
+
|
|
12
|
+
* **solana-core,sui-core:** prevent RangeError on send balance ([#11071](https://github.com/dynamic-labs/dynamic-auth/issues/11071)) ([21f5f97](https://github.com/dynamic-labs/dynamic-auth/commit/21f5f9724c788053774ce5eaa19f073af9a33d27))
|
|
13
|
+
|
|
14
|
+
### [4.78.1](https://github.com/dynamic-labs/dynamic-auth/compare/v4.78.0...v4.78.1) (2026-04-29)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* **ci:** do not fail on heroku check ([#11054](https://github.com/dynamic-labs/dynamic-auth/issues/11054)) ([fa92c8d](https://github.com/dynamic-labs/dynamic-auth/commit/fa92c8d3770f17802a3d3c4b28fbd72595eff78e))
|
|
20
|
+
* **demo-v2:** gate step-up sign on the actual signing connector (covers ZeroDev over WaaS) ([#11021](https://github.com/dynamic-labs/dynamic-auth/issues/11021)) ([2d7df88](https://github.com/dynamic-labs/dynamic-auth/commit/2d7df884f28013fe53b2f331a6d0f625a0313ff4))
|
|
21
|
+
* remediate high-severity dependency vulnerabilities ([#11039](https://github.com/dynamic-labs/dynamic-auth/issues/11039)) ([55315d9](https://github.com/dynamic-labs/dynamic-auth/commit/55315d92d2b956259b454b888db55bf552e16348)), closes [#498](https://github.com/dynamic-labs/dynamic-auth/issues/498) [#499](https://github.com/dynamic-labs/dynamic-auth/issues/499) [#538](https://github.com/dynamic-labs/dynamic-auth/issues/538) [#256](https://github.com/dynamic-labs/dynamic-auth/issues/256) [#132](https://github.com/dynamic-labs/dynamic-auth/issues/132) [#132](https://github.com/dynamic-labs/dynamic-auth/issues/132) [#11011](https://github.com/dynamic-labs/dynamic-auth/issues/11011) [#10991](https://github.com/dynamic-labs/dynamic-auth/issues/10991)
|
|
22
|
+
* remediate high-severity dependency vulnerabilities ([#11060](https://github.com/dynamic-labs/dynamic-auth/issues/11060)) ([514b8d6](https://github.com/dynamic-labs/dynamic-auth/commit/514b8d60d1436c765388c3a93877c562a6e6b105))
|
|
23
|
+
|
|
2
24
|
## [4.78.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.77.4...v4.78.0) (2026-04-22)
|
|
3
25
|
|
|
4
26
|
|
package/package.cjs
CHANGED
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
5
|
|
|
6
|
-
var version = "4.
|
|
6
|
+
var version = "4.79.0";
|
|
7
7
|
var dependencies = {
|
|
8
|
-
"@dynamic-labs/sdk-api-core": "0.0.
|
|
9
|
-
"@dynamic-labs-sdk/client": "0.
|
|
10
|
-
"@dynamic-labs-wallet/browser-wallet-client": "0.0.
|
|
8
|
+
"@dynamic-labs/sdk-api-core": "0.0.956",
|
|
9
|
+
"@dynamic-labs-sdk/client": "0.26.2",
|
|
10
|
+
"@dynamic-labs-wallet/browser-wallet-client": "0.0.325",
|
|
11
11
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
12
12
|
"@thumbmarkjs/thumbmarkjs": "0.16.0",
|
|
13
13
|
"country-list": "2.3.0",
|
package/package.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use client'
|
|
2
|
-
var version = "4.
|
|
2
|
+
var version = "4.79.0";
|
|
3
3
|
var dependencies = {
|
|
4
|
-
"@dynamic-labs/sdk-api-core": "0.0.
|
|
5
|
-
"@dynamic-labs-sdk/client": "0.
|
|
6
|
-
"@dynamic-labs-wallet/browser-wallet-client": "0.0.
|
|
4
|
+
"@dynamic-labs/sdk-api-core": "0.0.956",
|
|
5
|
+
"@dynamic-labs-sdk/client": "0.26.2",
|
|
6
|
+
"@dynamic-labs-wallet/browser-wallet-client": "0.0.325",
|
|
7
7
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
8
8
|
"@thumbmarkjs/thumbmarkjs": "0.16.0",
|
|
9
9
|
"country-list": "2.3.0",
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/sdk-react-core",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.79.0",
|
|
4
4
|
"dependencies": {
|
|
5
|
-
"@dynamic-labs/sdk-api-core": "0.0.
|
|
6
|
-
"@dynamic-labs-sdk/client": "0.
|
|
7
|
-
"@dynamic-labs-wallet/browser-wallet-client": "0.0.
|
|
5
|
+
"@dynamic-labs/sdk-api-core": "0.0.956",
|
|
6
|
+
"@dynamic-labs-sdk/client": "0.26.2",
|
|
7
|
+
"@dynamic-labs-wallet/browser-wallet-client": "0.0.325",
|
|
8
8
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
9
9
|
"@thumbmarkjs/thumbmarkjs": "0.16.0",
|
|
10
10
|
"country-list": "2.3.0",
|
|
@@ -16,17 +16,17 @@
|
|
|
16
16
|
"yup": "0.32.11",
|
|
17
17
|
"react-international-phone": "4.5.0",
|
|
18
18
|
"bs58": "5.0.0",
|
|
19
|
-
"@dynamic-labs/assert-package-version": "4.
|
|
20
|
-
"@dynamic-labs/iconic": "4.
|
|
21
|
-
"@dynamic-labs/locale": "4.
|
|
22
|
-
"@dynamic-labs/logger": "4.
|
|
23
|
-
"@dynamic-labs/multi-wallet": "4.
|
|
24
|
-
"@dynamic-labs/rpc-providers": "4.
|
|
25
|
-
"@dynamic-labs/store": "4.
|
|
26
|
-
"@dynamic-labs/types": "4.
|
|
27
|
-
"@dynamic-labs/utils": "4.
|
|
28
|
-
"@dynamic-labs/wallet-book": "4.
|
|
29
|
-
"@dynamic-labs/wallet-connector-core": "4.
|
|
19
|
+
"@dynamic-labs/assert-package-version": "4.79.0",
|
|
20
|
+
"@dynamic-labs/iconic": "4.79.0",
|
|
21
|
+
"@dynamic-labs/locale": "4.79.0",
|
|
22
|
+
"@dynamic-labs/logger": "4.79.0",
|
|
23
|
+
"@dynamic-labs/multi-wallet": "4.79.0",
|
|
24
|
+
"@dynamic-labs/rpc-providers": "4.79.0",
|
|
25
|
+
"@dynamic-labs/store": "4.79.0",
|
|
26
|
+
"@dynamic-labs/types": "4.79.0",
|
|
27
|
+
"@dynamic-labs/utils": "4.79.0",
|
|
28
|
+
"@dynamic-labs/wallet-book": "4.79.0",
|
|
29
|
+
"@dynamic-labs/wallet-connector-core": "4.79.0",
|
|
30
30
|
"eventemitter3": "5.0.1"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
package/src/index.cjs
CHANGED
|
@@ -53,10 +53,10 @@ require('./lib/utils/constants/colors.cjs');
|
|
|
53
53
|
require('./lib/utils/constants/values.cjs');
|
|
54
54
|
var sdkApiCore = require('@dynamic-labs/sdk-api-core');
|
|
55
55
|
require('@dynamic-labs/wallet-connector-core');
|
|
56
|
+
require('./lib/shared/logger.cjs');
|
|
56
57
|
var useLocalStorage = require('./lib/shared/utils/hooks/useLocalStorage/useLocalStorage.cjs');
|
|
57
58
|
var index$1 = require('./lib/shared/utils/hooks/useOnClickOutside/index.cjs');
|
|
58
59
|
require('./lib/shared/consts/index.cjs');
|
|
59
|
-
require('./lib/shared/logger.cjs');
|
|
60
60
|
require('./lib/components/Alert/Alert.cjs');
|
|
61
61
|
var useDynamicEvents = require('./lib/utils/hooks/events/useDynamicEvents/useDynamicEvents.cjs');
|
|
62
62
|
var useWalletConnectorEvent = require('./lib/utils/hooks/events/useWalletConnectorEvent/useWalletConnectorEvent.cjs');
|
|
@@ -138,6 +138,8 @@ require('./lib/widgets/DynamicWidget/components/PasskeyCard/PasskeyCard.cjs');
|
|
|
138
138
|
var useEmbeddedReveal = require('./lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.cjs');
|
|
139
139
|
var useWalletBackup = require('./lib/utils/hooks/useWalletBackup/useWalletBackup.cjs');
|
|
140
140
|
var types = require('./lib/utils/hooks/useWalletBackup/types.cjs');
|
|
141
|
+
var googleDriveScopes = require('./lib/utils/hooks/useWalletBackup/googleDriveScopes.cjs');
|
|
142
|
+
var googleDriveBackupErrors = require('./lib/utils/hooks/useWalletBackup/googleDriveBackupErrors.cjs');
|
|
141
143
|
var useEmbeddedWalletAuthenticator = require('./lib/utils/hooks/useEmbeddedWalletAuthenticator/useEmbeddedWalletAuthenticator.cjs');
|
|
142
144
|
require('./lib/utils/hooks/useWalletBackup/cloudProviders.cjs');
|
|
143
145
|
require('./lib/widgets/DynamicWidget/views/CryptoComOnramp/CryptoComOnramp.cjs');
|
|
@@ -188,6 +190,7 @@ var useGetUserMfaMethods = require('./lib/utils/hooks/useGetUserMfaMethods/useGe
|
|
|
188
190
|
var usePromptMfaAuth = require('./lib/utils/hooks/usePromptMfaAuth/usePromptMfaAuth.cjs');
|
|
189
191
|
var useUpgradeToDynamicWaasFlow = require('./lib/utils/hooks/useUpgradeToDynamicWaasFlow/useUpgradeToDynamicWaasFlow.cjs');
|
|
190
192
|
var useIsMfaRequiredForAction = require('./lib/utils/hooks/useIsMfaRequiredForAction/useIsMfaRequiredForAction.cjs');
|
|
193
|
+
var useGoogleDriveBackupReadiness = require('./lib/utils/hooks/useGoogleDriveBackupReadiness/useGoogleDriveBackupReadiness.cjs');
|
|
191
194
|
var useRefreshAuth = require('./lib/utils/hooks/useRefreshAuth/useRefreshAuth.cjs');
|
|
192
195
|
var useWalletPassword = require('./lib/utils/hooks/useWalletPassword/useWalletPassword.cjs');
|
|
193
196
|
var useGetWalletPassword = require('./lib/utils/hooks/useGetWalletPassword/useGetWalletPassword.cjs');
|
|
@@ -304,6 +307,10 @@ exports.isWalletBackedUp = useWalletBackup.isWalletBackedUp;
|
|
|
304
307
|
exports.useBackupWallets = useWalletBackup.useBackupWallets;
|
|
305
308
|
exports.useWalletBackup = useWalletBackup.useWalletBackup;
|
|
306
309
|
exports.CloudBackupProvider = types.CloudBackupProvider;
|
|
310
|
+
exports.GOOGLE_DRIVE_BACKUP_REQUIRED_SCOPES = googleDriveScopes.GOOGLE_DRIVE_BACKUP_REQUIRED_SCOPES;
|
|
311
|
+
exports.findMissingGoogleDriveBackupScopes = googleDriveScopes.findMissingGoogleDriveBackupScopes;
|
|
312
|
+
exports.hasAllGoogleDriveBackupScopes = googleDriveScopes.hasAllGoogleDriveBackupScopes;
|
|
313
|
+
exports.isInsufficientGoogleDriveScopesError = googleDriveBackupErrors.isInsufficientGoogleDriveScopesError;
|
|
307
314
|
exports.useEmbeddedWalletAuthenticator = useEmbeddedWalletAuthenticator.useEmbeddedWalletAuthenticator;
|
|
308
315
|
exports.FilterAndSortWallets = index$2.FilterAndSortWallets;
|
|
309
316
|
exports.FilterBridgeChainsName = index$2.FilterBridgeChainsName;
|
|
@@ -354,6 +361,7 @@ exports.useGetUserMfaMethods = useGetUserMfaMethods.useGetUserMfaMethods;
|
|
|
354
361
|
exports.usePromptMfaAuth = usePromptMfaAuth.usePromptMfaAuth;
|
|
355
362
|
exports.useUpgradeToDynamicWaasFlow = useUpgradeToDynamicWaasFlow.useUpgradeToDynamicWaasFlow;
|
|
356
363
|
exports.useIsMfaRequiredForAction = useIsMfaRequiredForAction.useIsMfaRequiredForAction;
|
|
364
|
+
exports.useGoogleDriveBackupReadiness = useGoogleDriveBackupReadiness.useGoogleDriveBackupReadiness;
|
|
357
365
|
exports.useRefreshAuth = useRefreshAuth.useRefreshAuth;
|
|
358
366
|
exports.useWalletPassword = useWalletPassword.useWalletPassword;
|
|
359
367
|
exports.useGetWalletPassword = useGetWalletPassword.useGetWalletPassword;
|
package/src/index.d.ts
CHANGED
|
@@ -123,7 +123,8 @@ export { FilterAndSortWallets, FilterBridgeChainsName, FilterChain, FilterWallet
|
|
|
123
123
|
export {
|
|
124
124
|
/** @deprecated */
|
|
125
125
|
DynamicWidgetContextProvider, } from './lib/widgets/DynamicWidget/context';
|
|
126
|
-
export { useWalletItemActions, useAuthenticateConnectedUser, useSocialAccounts, useEmbeddedWallet, useEmbeddedWalletAuthenticator, usePasskeyRecovery, useEmbeddedReveal, useIsLoggedIn, useDynamicModals, useMfa, useTokenBalances, useMultichainTokenBalances, useSwitchWallet, useRpcProviders, useRefreshUser, useRefreshAuth, useResetWaasSession, useWalletOptions, useSmartWallets, useSignEip7702Authorization, EmbeddedWalletVersion, useTelegramLogin, useUpgradeEmbeddedWallet, useEVMTransactionSimulation, useSVMTransactionSimulation, useDeleteUserAccount, useDynamicWaas, useGetPasskeys, useDeletePasskey, useRegisterPasskey, useAuthenticatePasskeyMFA, useGetUserMfaMethods, usePromptMfaAuth, useUpgradeToDynamicWaasFlow, useGetMfaToken, useGetWalletPassword, useWalletPassword, useIsMfaRequiredForAction, useWalletDelegation, useWalletBackup, useBackupWallets, isWalletBackedUp, CloudBackupProvider, useExchangeAccounts, useStepUpAuthentication, } from './lib/utils/hooks';
|
|
126
|
+
export { useWalletItemActions, useAuthenticateConnectedUser, useSocialAccounts, useEmbeddedWallet, useEmbeddedWalletAuthenticator, usePasskeyRecovery, useEmbeddedReveal, useIsLoggedIn, useDynamicModals, useMfa, useTokenBalances, useMultichainTokenBalances, useSwitchWallet, useRpcProviders, useRefreshUser, useRefreshAuth, useResetWaasSession, useWalletOptions, useSmartWallets, useSignEip7702Authorization, EmbeddedWalletVersion, useTelegramLogin, useUpgradeEmbeddedWallet, useEVMTransactionSimulation, useSVMTransactionSimulation, useDeleteUserAccount, useDynamicWaas, useGetPasskeys, useDeletePasskey, useRegisterPasskey, useAuthenticatePasskeyMFA, useGetUserMfaMethods, usePromptMfaAuth, useUpgradeToDynamicWaasFlow, useGetMfaToken, useGetWalletPassword, useWalletPassword, useIsMfaRequiredForAction, useWalletDelegation, useWalletBackup, useBackupWallets, isWalletBackedUp, CloudBackupProvider, GOOGLE_DRIVE_BACKUP_REQUIRED_SCOPES, findMissingGoogleDriveBackupScopes, hasAllGoogleDriveBackupScopes, isInsufficientGoogleDriveScopesError, useGoogleDriveBackupReadiness, useExchangeAccounts, useStepUpAuthentication, } from './lib/utils/hooks';
|
|
127
|
+
export type { GoogleDriveBackupAccessError, GoogleDriveBackupReadiness, GoogleDriveBackupReadinessStatus, UseGoogleDriveBackupReadinessReturn, } from './lib/utils/hooks';
|
|
127
128
|
export type { IsStepUpRequiredParams, PromptMfaParams, StepUpAuthenticationState, UseStepUpAuthenticationParams, UseStepUpAuthenticationReturn, VerifyOtpParams, VerifyPasskeyMfaParams, VerifyRecoveryCodeParams, VerifySocialParams, VerifyTotpMfaParams, VerifyWalletParams, } from './lib/utils/hooks';
|
|
128
129
|
export {
|
|
129
130
|
/** @deprecated use useOnramp instead */
|
package/src/index.js
CHANGED
|
@@ -49,10 +49,10 @@ import './lib/utils/constants/colors.js';
|
|
|
49
49
|
import './lib/utils/constants/values.js';
|
|
50
50
|
export { ChainEnum, DynamicJwtFromJSON, MFAAction } from '@dynamic-labs/sdk-api-core';
|
|
51
51
|
import '@dynamic-labs/wallet-connector-core';
|
|
52
|
+
import './lib/shared/logger.js';
|
|
52
53
|
export { useLocalStorage } from './lib/shared/utils/hooks/useLocalStorage/useLocalStorage.js';
|
|
53
54
|
export { useOnClickOutside } from './lib/shared/utils/hooks/useOnClickOutside/index.js';
|
|
54
55
|
import './lib/shared/consts/index.js';
|
|
55
|
-
import './lib/shared/logger.js';
|
|
56
56
|
import './lib/components/Alert/Alert.js';
|
|
57
57
|
export { useDynamicEvents } from './lib/utils/hooks/events/useDynamicEvents/useDynamicEvents.js';
|
|
58
58
|
export { useWalletConnectorEvent } from './lib/utils/hooks/events/useWalletConnectorEvent/useWalletConnectorEvent.js';
|
|
@@ -134,6 +134,8 @@ import './lib/widgets/DynamicWidget/components/PasskeyCard/PasskeyCard.js';
|
|
|
134
134
|
export { useEmbeddedReveal } from './lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.js';
|
|
135
135
|
export { isWalletBackedUp, useBackupWallets, useWalletBackup } from './lib/utils/hooks/useWalletBackup/useWalletBackup.js';
|
|
136
136
|
export { CloudBackupProvider } from './lib/utils/hooks/useWalletBackup/types.js';
|
|
137
|
+
export { GOOGLE_DRIVE_BACKUP_REQUIRED_SCOPES, findMissingGoogleDriveBackupScopes, hasAllGoogleDriveBackupScopes } from './lib/utils/hooks/useWalletBackup/googleDriveScopes.js';
|
|
138
|
+
export { isInsufficientGoogleDriveScopesError } from './lib/utils/hooks/useWalletBackup/googleDriveBackupErrors.js';
|
|
137
139
|
export { useEmbeddedWalletAuthenticator } from './lib/utils/hooks/useEmbeddedWalletAuthenticator/useEmbeddedWalletAuthenticator.js';
|
|
138
140
|
import './lib/utils/hooks/useWalletBackup/cloudProviders.js';
|
|
139
141
|
import './lib/widgets/DynamicWidget/views/CryptoComOnramp/CryptoComOnramp.js';
|
|
@@ -184,6 +186,7 @@ export { useGetUserMfaMethods } from './lib/utils/hooks/useGetUserMfaMethods/use
|
|
|
184
186
|
export { usePromptMfaAuth } from './lib/utils/hooks/usePromptMfaAuth/usePromptMfaAuth.js';
|
|
185
187
|
export { useUpgradeToDynamicWaasFlow } from './lib/utils/hooks/useUpgradeToDynamicWaasFlow/useUpgradeToDynamicWaasFlow.js';
|
|
186
188
|
export { useIsMfaRequiredForAction } from './lib/utils/hooks/useIsMfaRequiredForAction/useIsMfaRequiredForAction.js';
|
|
189
|
+
export { useGoogleDriveBackupReadiness } from './lib/utils/hooks/useGoogleDriveBackupReadiness/useGoogleDriveBackupReadiness.js';
|
|
187
190
|
export { useRefreshAuth } from './lib/utils/hooks/useRefreshAuth/useRefreshAuth.js';
|
|
188
191
|
export { useWalletPassword } from './lib/utils/hooks/useWalletPassword/useWalletPassword.js';
|
|
189
192
|
export { useGetWalletPassword } from './lib/utils/hooks/useGetWalletPassword/useGetWalletPassword.js';
|
|
@@ -56,14 +56,14 @@ const ErrorContextProvider = ({ children }) => {
|
|
|
56
56
|
setError('Something went wrong. Please try again.', utils.ErrorCode.DEFAULT);
|
|
57
57
|
}, [setError]);
|
|
58
58
|
/** @deprecated Prefer setError with a translation key instead */
|
|
59
|
-
const setErrorMessage = React.useCallback((status, error) => {
|
|
59
|
+
const setErrorMessage = React.useCallback((status, error, source) => {
|
|
60
60
|
const mappedMessage = errorMessageMap[status];
|
|
61
61
|
if (!mappedMessage) {
|
|
62
62
|
logger.logger.instrument(FALLBACK_ERROR_LOG_EVENT, {
|
|
63
63
|
error: error instanceof Error ? error.message : undefined,
|
|
64
64
|
errorCode: status,
|
|
65
65
|
key: FALLBACK_ERROR_LOG_EVENT,
|
|
66
|
-
source: 'setErrorMessage',
|
|
66
|
+
source: source !== null && source !== void 0 ? source : 'setErrorMessage',
|
|
67
67
|
time: 0,
|
|
68
68
|
});
|
|
69
69
|
}
|
|
@@ -4,7 +4,7 @@ interface ErrorContextProps {
|
|
|
4
4
|
error: string | undefined;
|
|
5
5
|
errorCode: ErrorCode | string | undefined;
|
|
6
6
|
setError(error: string | undefined, errorCode?: ErrorCode | string): void;
|
|
7
|
-
setErrorMessage: (status: string, error?: unknown) => void;
|
|
7
|
+
setErrorMessage: (status: string, error?: unknown, source?: string) => void;
|
|
8
8
|
setDefaultError: (error?: unknown) => void;
|
|
9
9
|
clearError(): void;
|
|
10
10
|
}
|
|
@@ -52,14 +52,14 @@ const ErrorContextProvider = ({ children }) => {
|
|
|
52
52
|
setError('Something went wrong. Please try again.', ErrorCode.DEFAULT);
|
|
53
53
|
}, [setError]);
|
|
54
54
|
/** @deprecated Prefer setError with a translation key instead */
|
|
55
|
-
const setErrorMessage = useCallback((status, error) => {
|
|
55
|
+
const setErrorMessage = useCallback((status, error, source) => {
|
|
56
56
|
const mappedMessage = errorMessageMap[status];
|
|
57
57
|
if (!mappedMessage) {
|
|
58
58
|
logger.instrument(FALLBACK_ERROR_LOG_EVENT, {
|
|
59
59
|
error: error instanceof Error ? error.message : undefined,
|
|
60
60
|
errorCode: status,
|
|
61
61
|
key: FALLBACK_ERROR_LOG_EVENT,
|
|
62
|
-
source: 'setErrorMessage',
|
|
62
|
+
source: source !== null && source !== void 0 ? source : 'setErrorMessage',
|
|
63
63
|
time: 0,
|
|
64
64
|
});
|
|
65
65
|
}
|
|
@@ -20,6 +20,7 @@ require('@dynamic-labs/wallet-book');
|
|
|
20
20
|
require('../../utils/constants/colors.cjs');
|
|
21
21
|
require('../../utils/constants/values.cjs');
|
|
22
22
|
require('@dynamic-labs/sdk-api-core');
|
|
23
|
+
var instrumentAuthLoginFailed = require('../../shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.cjs');
|
|
23
24
|
require('../../shared/consts/index.cjs');
|
|
24
25
|
require('../../store/state/authMode/authMode.cjs');
|
|
25
26
|
var useInternalDynamicContext = require('../DynamicContext/useDynamicContext/useInternalDynamicContext/useInternalDynamicContext.cjs');
|
|
@@ -373,7 +374,8 @@ const useResponseHandlers = () => {
|
|
|
373
374
|
logger.logger.logVerboseTroubleshootingMessage('[PhantomRedirect handleErrorResponse] no errorCode');
|
|
374
375
|
return;
|
|
375
376
|
}
|
|
376
|
-
|
|
377
|
+
instrumentAuthLoginFailed.instrumentAuthLoginFailed({ code: errorCode, message: errorMessage }, { authOrigin: 'phantom-redirect' });
|
|
378
|
+
setErrorMessage(errorCode, undefined, 'phantom-redirect');
|
|
377
379
|
const method = phantomRedirectConnector.consumeMethod();
|
|
378
380
|
logger.logger.logVerboseTroubleshootingMessage('[PhantomRedirect handleErrorResponse] consumed method, emitting error', { errorCode, errorMessage, method });
|
|
379
381
|
switch (method) {
|
|
@@ -16,6 +16,7 @@ import '@dynamic-labs/wallet-book';
|
|
|
16
16
|
import '../../utils/constants/colors.js';
|
|
17
17
|
import '../../utils/constants/values.js';
|
|
18
18
|
import '@dynamic-labs/sdk-api-core';
|
|
19
|
+
import { instrumentAuthLoginFailed } from '../../shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.js';
|
|
19
20
|
import '../../shared/consts/index.js';
|
|
20
21
|
import '../../store/state/authMode/authMode.js';
|
|
21
22
|
import { useInternalDynamicContext } from '../DynamicContext/useDynamicContext/useInternalDynamicContext/useInternalDynamicContext.js';
|
|
@@ -369,7 +370,8 @@ const useResponseHandlers = () => {
|
|
|
369
370
|
logger.logVerboseTroubleshootingMessage('[PhantomRedirect handleErrorResponse] no errorCode');
|
|
370
371
|
return;
|
|
371
372
|
}
|
|
372
|
-
|
|
373
|
+
instrumentAuthLoginFailed({ code: errorCode, message: errorMessage }, { authOrigin: 'phantom-redirect' });
|
|
374
|
+
setErrorMessage(errorCode, undefined, 'phantom-redirect');
|
|
373
375
|
const method = phantomRedirectConnector.consumeMethod();
|
|
374
376
|
logger.logVerboseTroubleshootingMessage('[PhantomRedirect handleErrorResponse] consumed method, emitting error', { errorCode, errorMessage, method });
|
|
375
377
|
switch (method) {
|
|
@@ -9,12 +9,13 @@ var React = require('react');
|
|
|
9
9
|
var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
|
|
10
10
|
require('@dynamic-labs/iconic');
|
|
11
11
|
var ViewContext = require('../ViewContext/ViewContext.cjs');
|
|
12
|
-
|
|
12
|
+
require('../../shared/logger.cjs');
|
|
13
13
|
require('@dynamic-labs/wallet-book');
|
|
14
14
|
require('@dynamic-labs/utils');
|
|
15
15
|
require('../../utils/constants/colors.cjs');
|
|
16
16
|
require('../../utils/constants/values.cjs');
|
|
17
17
|
require('@dynamic-labs/sdk-api-core');
|
|
18
|
+
var instrumentAuthLoginFailed = require('../../shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.cjs');
|
|
18
19
|
require('../../shared/consts/index.cjs');
|
|
19
20
|
require('@dynamic-labs/multi-wallet');
|
|
20
21
|
require('react-international-phone');
|
|
@@ -144,8 +145,8 @@ const SocialRedirectContextProvider = ({ children, }) => {
|
|
|
144
145
|
const socialAccount = React.useMemo(() => (wallet ? getReferencedAccount.getReferencedAccount(user, wallet.id) : undefined), [user, wallet]);
|
|
145
146
|
// added to make sure to reset the social provider on logout
|
|
146
147
|
useDynamicEvents.useInternalDynamicEvents('logout', () => setSocialProvider(undefined));
|
|
147
|
-
const handleError = React.useCallback((message) => {
|
|
148
|
-
|
|
148
|
+
const handleError = React.useCallback((message, provider) => {
|
|
149
|
+
instrumentAuthLoginFailed.instrumentAuthLoginFailed({ message }, { authOrigin: 'social-redirect', provider });
|
|
149
150
|
if (user) {
|
|
150
151
|
setShowAuthFlow(false, { emitCancelAuth: true });
|
|
151
152
|
setShowDynamicUserProfile(true);
|
|
@@ -153,7 +154,7 @@ const SocialRedirectContextProvider = ({ children, }) => {
|
|
|
153
154
|
else {
|
|
154
155
|
setShowAuthFlow(true);
|
|
155
156
|
clearStackAndPush('wallet-list');
|
|
156
|
-
setErrorMessage('-1');
|
|
157
|
+
setErrorMessage('-1', undefined, 'social-redirect');
|
|
157
158
|
}
|
|
158
159
|
}, [
|
|
159
160
|
user,
|
|
@@ -177,7 +178,7 @@ const SocialRedirectContextProvider = ({ children, }) => {
|
|
|
177
178
|
const params = new URLSearchParams(window.location.search);
|
|
178
179
|
if (params.has('error') && params.has('provider')) {
|
|
179
180
|
const errorDescription = params.get('error_description');
|
|
180
|
-
handleError(errorDescription !== null && errorDescription !== void 0 ? errorDescription : 'Unknown error');
|
|
181
|
+
handleError(errorDescription !== null && errorDescription !== void 0 ? errorDescription : 'Unknown error', params.get('provider'));
|
|
181
182
|
// calling this to clear the relevant query params
|
|
182
183
|
(_a = socialWalletConnector.getSession) === null || _a === void 0 ? void 0 : _a.call(socialWalletConnector);
|
|
183
184
|
return;
|
|
@@ -260,7 +261,7 @@ const SocialRedirectContextProvider = ({ children, }) => {
|
|
|
260
261
|
})).catch((error) => {
|
|
261
262
|
setSocialProvider(undefined);
|
|
262
263
|
setRedirectStatus('error');
|
|
263
|
-
handleError(error);
|
|
264
|
+
handleError(error, providerFromParams);
|
|
264
265
|
});
|
|
265
266
|
}
|
|
266
267
|
}, [
|
|
@@ -5,12 +5,13 @@ import { createContext, useContext, useState, useMemo, useCallback, useEffect }
|
|
|
5
5
|
import { isSocialWalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
6
6
|
import '@dynamic-labs/iconic';
|
|
7
7
|
import { useViewContext } from '../ViewContext/ViewContext.js';
|
|
8
|
-
import
|
|
8
|
+
import '../../shared/logger.js';
|
|
9
9
|
import '@dynamic-labs/wallet-book';
|
|
10
10
|
import '@dynamic-labs/utils';
|
|
11
11
|
import '../../utils/constants/colors.js';
|
|
12
12
|
import '../../utils/constants/values.js';
|
|
13
13
|
import '@dynamic-labs/sdk-api-core';
|
|
14
|
+
import { instrumentAuthLoginFailed } from '../../shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.js';
|
|
14
15
|
import '../../shared/consts/index.js';
|
|
15
16
|
import '@dynamic-labs/multi-wallet';
|
|
16
17
|
import 'react-international-phone';
|
|
@@ -140,8 +141,8 @@ const SocialRedirectContextProvider = ({ children, }) => {
|
|
|
140
141
|
const socialAccount = useMemo(() => (wallet ? getReferencedAccount(user, wallet.id) : undefined), [user, wallet]);
|
|
141
142
|
// added to make sure to reset the social provider on logout
|
|
142
143
|
useInternalDynamicEvents('logout', () => setSocialProvider(undefined));
|
|
143
|
-
const handleError = useCallback((message) => {
|
|
144
|
-
|
|
144
|
+
const handleError = useCallback((message, provider) => {
|
|
145
|
+
instrumentAuthLoginFailed({ message }, { authOrigin: 'social-redirect', provider });
|
|
145
146
|
if (user) {
|
|
146
147
|
setShowAuthFlow(false, { emitCancelAuth: true });
|
|
147
148
|
setShowDynamicUserProfile(true);
|
|
@@ -149,7 +150,7 @@ const SocialRedirectContextProvider = ({ children, }) => {
|
|
|
149
150
|
else {
|
|
150
151
|
setShowAuthFlow(true);
|
|
151
152
|
clearStackAndPush('wallet-list');
|
|
152
|
-
setErrorMessage('-1');
|
|
153
|
+
setErrorMessage('-1', undefined, 'social-redirect');
|
|
153
154
|
}
|
|
154
155
|
}, [
|
|
155
156
|
user,
|
|
@@ -173,7 +174,7 @@ const SocialRedirectContextProvider = ({ children, }) => {
|
|
|
173
174
|
const params = new URLSearchParams(window.location.search);
|
|
174
175
|
if (params.has('error') && params.has('provider')) {
|
|
175
176
|
const errorDescription = params.get('error_description');
|
|
176
|
-
handleError(errorDescription !== null && errorDescription !== void 0 ? errorDescription : 'Unknown error');
|
|
177
|
+
handleError(errorDescription !== null && errorDescription !== void 0 ? errorDescription : 'Unknown error', params.get('provider'));
|
|
177
178
|
// calling this to clear the relevant query params
|
|
178
179
|
(_a = socialWalletConnector.getSession) === null || _a === void 0 ? void 0 : _a.call(socialWalletConnector);
|
|
179
180
|
return;
|
|
@@ -256,7 +257,7 @@ const SocialRedirectContextProvider = ({ children, }) => {
|
|
|
256
257
|
})).catch((error) => {
|
|
257
258
|
setSocialProvider(undefined);
|
|
258
259
|
setRedirectStatus('error');
|
|
259
|
-
handleError(error);
|
|
260
|
+
handleError(error, providerFromParams);
|
|
260
261
|
});
|
|
261
262
|
}
|
|
262
263
|
}, [
|
package/src/lib/shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.cjs
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var logger = require('../../../logger.cjs');
|
|
7
|
+
|
|
8
|
+
const instrumentAuthLoginFailed = (err, context) => {
|
|
9
|
+
const errLike = err;
|
|
10
|
+
const message = typeof (errLike === null || errLike === void 0 ? void 0 : errLike.message) === 'string' ? errLike.message : undefined;
|
|
11
|
+
const code = (errLike === null || errLike === void 0 ? void 0 : errLike.code) !== undefined && errLike.code !== null
|
|
12
|
+
? String(errLike.code)
|
|
13
|
+
: undefined;
|
|
14
|
+
logger.logger.instrument('auth.login_failed', Object.assign({ error: err instanceof Error ? err.message : message, errorCode: code !== null && code !== void 0 ? code : 'unknown', errorMessage: message, key: 'auth.login_failed', time: 0 }, context));
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
exports.instrumentAuthLoginFailed = instrumentAuthLoginFailed;
|
package/src/lib/shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export type AuthOrigin = 'connect-and-sign' | 'connect-and-sign-split-steps' | 'email-verification' | 'phantom-redirect' | 'social-auth' | 'social-redirect' | 'user-auth' | 'wallet-verify';
|
|
2
|
+
export type AuthLoginFailedContext = {
|
|
3
|
+
authOrigin: AuthOrigin;
|
|
4
|
+
provider?: string;
|
|
5
|
+
stage?: 'connect' | 'verify';
|
|
6
|
+
};
|
|
7
|
+
export declare const instrumentAuthLoginFailed: (err: unknown, context: AuthLoginFailedContext) => void;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import { logger } from '../../../logger.js';
|
|
3
|
+
|
|
4
|
+
const instrumentAuthLoginFailed = (err, context) => {
|
|
5
|
+
const errLike = err;
|
|
6
|
+
const message = typeof (errLike === null || errLike === void 0 ? void 0 : errLike.message) === 'string' ? errLike.message : undefined;
|
|
7
|
+
const code = (errLike === null || errLike === void 0 ? void 0 : errLike.code) !== undefined && errLike.code !== null
|
|
8
|
+
? String(errLike.code)
|
|
9
|
+
: undefined;
|
|
10
|
+
logger.instrument('auth.login_failed', Object.assign({ error: err instanceof Error ? err.message : message, errorCode: code !== null && code !== void 0 ? code : 'unknown', errorMessage: message, key: 'auth.login_failed', time: 0 }, context));
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export { instrumentAuthLoginFailed };
|
|
@@ -19,6 +19,7 @@ var localStorage = require('../../../constants/localStorage.cjs');
|
|
|
19
19
|
require('../../../constants/colors.cjs');
|
|
20
20
|
require('../../../constants/values.cjs');
|
|
21
21
|
require('@dynamic-labs/sdk-api-core');
|
|
22
|
+
var instrumentAuthLoginFailed = require('../../../../shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.cjs');
|
|
22
23
|
require('../../../../shared/consts/index.cjs');
|
|
23
24
|
var dynamicEvents = require('../../../../events/dynamicEvents.cjs');
|
|
24
25
|
var ErrorContext = require('../../../../context/ErrorContext/ErrorContext.cjs');
|
|
@@ -152,18 +153,26 @@ const useConnectAndSign = ({ shouldUpdateWallets = true, shouldCallCallback = tr
|
|
|
152
153
|
const userCancelled = (err === null || err === void 0 ? void 0 : err.code) === 'user-cancelled';
|
|
153
154
|
if (!userCancelled)
|
|
154
155
|
logger.logger.debug(err);
|
|
156
|
+
instrumentAuthLoginFailed.instrumentAuthLoginFailed(err, {
|
|
157
|
+
authOrigin: 'connect-and-sign',
|
|
158
|
+
stage: 'verify',
|
|
159
|
+
});
|
|
155
160
|
clearStackAndPushInitialView();
|
|
156
161
|
if (err instanceof utils.CustomError) {
|
|
157
162
|
setError(err.message, err.code);
|
|
158
163
|
}
|
|
159
164
|
else {
|
|
160
|
-
setErrorMessage((_a = err === null || err === void 0 ? void 0 : err.code) === null || _a === void 0 ? void 0 : _a.toString(), err);
|
|
165
|
+
setErrorMessage((_a = err === null || err === void 0 ? void 0 : err.code) === null || _a === void 0 ? void 0 : _a.toString(), err, 'connect-and-sign:verify');
|
|
161
166
|
}
|
|
162
167
|
};
|
|
163
168
|
const handleWalletConnectionError = (error) => {
|
|
164
169
|
if (error instanceof utils.GetAddressCancelledError) {
|
|
165
170
|
return;
|
|
166
171
|
}
|
|
172
|
+
instrumentAuthLoginFailed.instrumentAuthLoginFailed(error, {
|
|
173
|
+
authOrigin: 'connect-and-sign',
|
|
174
|
+
stage: 'connect',
|
|
175
|
+
});
|
|
167
176
|
clearStackAndPushInitialView();
|
|
168
177
|
if (error instanceof utils.CustomError) {
|
|
169
178
|
setError(error.message, error.code);
|
|
@@ -15,6 +15,7 @@ import { LAST_USED_WALLET } from '../../../constants/localStorage.js';
|
|
|
15
15
|
import '../../../constants/colors.js';
|
|
16
16
|
import '../../../constants/values.js';
|
|
17
17
|
import '@dynamic-labs/sdk-api-core';
|
|
18
|
+
import { instrumentAuthLoginFailed } from '../../../../shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.js';
|
|
18
19
|
import '../../../../shared/consts/index.js';
|
|
19
20
|
import { dynamicEvents } from '../../../../events/dynamicEvents.js';
|
|
20
21
|
import { useErrorContext } from '../../../../context/ErrorContext/ErrorContext.js';
|
|
@@ -148,18 +149,26 @@ const useConnectAndSign = ({ shouldUpdateWallets = true, shouldCallCallback = tr
|
|
|
148
149
|
const userCancelled = (err === null || err === void 0 ? void 0 : err.code) === 'user-cancelled';
|
|
149
150
|
if (!userCancelled)
|
|
150
151
|
logger.debug(err);
|
|
152
|
+
instrumentAuthLoginFailed(err, {
|
|
153
|
+
authOrigin: 'connect-and-sign',
|
|
154
|
+
stage: 'verify',
|
|
155
|
+
});
|
|
151
156
|
clearStackAndPushInitialView();
|
|
152
157
|
if (err instanceof CustomError) {
|
|
153
158
|
setError(err.message, err.code);
|
|
154
159
|
}
|
|
155
160
|
else {
|
|
156
|
-
setErrorMessage((_a = err === null || err === void 0 ? void 0 : err.code) === null || _a === void 0 ? void 0 : _a.toString(), err);
|
|
161
|
+
setErrorMessage((_a = err === null || err === void 0 ? void 0 : err.code) === null || _a === void 0 ? void 0 : _a.toString(), err, 'connect-and-sign:verify');
|
|
157
162
|
}
|
|
158
163
|
};
|
|
159
164
|
const handleWalletConnectionError = (error) => {
|
|
160
165
|
if (error instanceof GetAddressCancelledError) {
|
|
161
166
|
return;
|
|
162
167
|
}
|
|
168
|
+
instrumentAuthLoginFailed(error, {
|
|
169
|
+
authOrigin: 'connect-and-sign',
|
|
170
|
+
stage: 'connect',
|
|
171
|
+
});
|
|
163
172
|
clearStackAndPushInitialView();
|
|
164
173
|
if (error instanceof CustomError) {
|
|
165
174
|
setError(error.message, error.code);
|
|
@@ -19,6 +19,7 @@ var localStorage = require('../../../constants/localStorage.cjs');
|
|
|
19
19
|
require('../../../constants/colors.cjs');
|
|
20
20
|
require('../../../constants/values.cjs');
|
|
21
21
|
require('@dynamic-labs/sdk-api-core');
|
|
22
|
+
var instrumentAuthLoginFailed = require('../../../../shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.cjs');
|
|
22
23
|
require('../../../../shared/consts/index.cjs');
|
|
23
24
|
require('../../../../events/dynamicEvents.cjs');
|
|
24
25
|
var ErrorContext = require('../../../../context/ErrorContext/ErrorContext.cjs');
|
|
@@ -139,8 +140,11 @@ const useConnectAndSignSplitSteps = () => {
|
|
|
139
140
|
*/
|
|
140
141
|
if (err instanceof utils.MissingPublicAddressError && utils.isMobile())
|
|
141
142
|
return;
|
|
143
|
+
instrumentAuthLoginFailed.instrumentAuthLoginFailed(err, {
|
|
144
|
+
authOrigin: 'connect-and-sign-split-steps',
|
|
145
|
+
});
|
|
142
146
|
clearStackAndPushInitialView();
|
|
143
|
-
setErrorMessage((_a = err.code) !== null && _a !== void 0 ? _a : err.toString());
|
|
147
|
+
setErrorMessage((_a = err.code) !== null && _a !== void 0 ? _a : err.toString(), err, 'connect-and-sign-split-steps');
|
|
144
148
|
};
|
|
145
149
|
// This method is similar to useConnectAndSign, but it skips signing for now
|
|
146
150
|
// It's used when we want to connect and sign in two separate steps
|
|
@@ -15,6 +15,7 @@ import { LAST_USED_WALLET } from '../../../constants/localStorage.js';
|
|
|
15
15
|
import '../../../constants/colors.js';
|
|
16
16
|
import '../../../constants/values.js';
|
|
17
17
|
import '@dynamic-labs/sdk-api-core';
|
|
18
|
+
import { instrumentAuthLoginFailed } from '../../../../shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.js';
|
|
18
19
|
import '../../../../shared/consts/index.js';
|
|
19
20
|
import '../../../../events/dynamicEvents.js';
|
|
20
21
|
import { useErrorContext } from '../../../../context/ErrorContext/ErrorContext.js';
|
|
@@ -135,8 +136,11 @@ const useConnectAndSignSplitSteps = () => {
|
|
|
135
136
|
*/
|
|
136
137
|
if (err instanceof MissingPublicAddressError && isMobile())
|
|
137
138
|
return;
|
|
139
|
+
instrumentAuthLoginFailed(err, {
|
|
140
|
+
authOrigin: 'connect-and-sign-split-steps',
|
|
141
|
+
});
|
|
138
142
|
clearStackAndPushInitialView();
|
|
139
|
-
setErrorMessage((_a = err.code) !== null && _a !== void 0 ? _a : err.toString());
|
|
143
|
+
setErrorMessage((_a = err.code) !== null && _a !== void 0 ? _a : err.toString(), err, 'connect-and-sign-split-steps');
|
|
140
144
|
};
|
|
141
145
|
// This method is similar to useConnectAndSign, but it skips signing for now
|
|
142
146
|
// It's used when we want to connect and sign in two separate steps
|
package/src/lib/utils/hooks/authenticationHooks/useSignConnectOnlyUser/useSignConnectOnlyUser.cjs
CHANGED
|
@@ -17,6 +17,7 @@ require('@dynamic-labs/utils');
|
|
|
17
17
|
require('../../../constants/colors.cjs');
|
|
18
18
|
require('../../../constants/values.cjs');
|
|
19
19
|
require('@dynamic-labs/sdk-api-core');
|
|
20
|
+
var instrumentAuthLoginFailed = require('../../../../shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.cjs');
|
|
20
21
|
require('../../../../shared/consts/index.cjs');
|
|
21
22
|
require('../../../../events/dynamicEvents.cjs');
|
|
22
23
|
var CaptchaContext = require('../../../../context/CaptchaContext/CaptchaContext.cjs');
|
|
@@ -152,7 +153,10 @@ const useSignConnectOnlyUser = () => {
|
|
|
152
153
|
}
|
|
153
154
|
catch (err) {
|
|
154
155
|
logger.logger.debug(err);
|
|
155
|
-
|
|
156
|
+
instrumentAuthLoginFailed.instrumentAuthLoginFailed(err, {
|
|
157
|
+
authOrigin: 'connect-and-sign-split-steps',
|
|
158
|
+
});
|
|
159
|
+
setErrorMessage(err.toString(), err, 'connect-and-sign-split-steps');
|
|
156
160
|
setShowAuthFlow(false, { emitCancelAuth: true });
|
|
157
161
|
return;
|
|
158
162
|
}
|
package/src/lib/utils/hooks/authenticationHooks/useSignConnectOnlyUser/useSignConnectOnlyUser.js
CHANGED
|
@@ -13,6 +13,7 @@ import '@dynamic-labs/utils';
|
|
|
13
13
|
import '../../../constants/colors.js';
|
|
14
14
|
import '../../../constants/values.js';
|
|
15
15
|
import '@dynamic-labs/sdk-api-core';
|
|
16
|
+
import { instrumentAuthLoginFailed } from '../../../../shared/utils/functions/instrumentAuthLoginFailed/instrumentAuthLoginFailed.js';
|
|
16
17
|
import '../../../../shared/consts/index.js';
|
|
17
18
|
import '../../../../events/dynamicEvents.js';
|
|
18
19
|
import { useCaptchaContext } from '../../../../context/CaptchaContext/CaptchaContext.js';
|
|
@@ -148,7 +149,10 @@ const useSignConnectOnlyUser = () => {
|
|
|
148
149
|
}
|
|
149
150
|
catch (err) {
|
|
150
151
|
logger.debug(err);
|
|
151
|
-
|
|
152
|
+
instrumentAuthLoginFailed(err, {
|
|
153
|
+
authOrigin: 'connect-and-sign-split-steps',
|
|
154
|
+
});
|
|
155
|
+
setErrorMessage(err.toString(), err, 'connect-and-sign-split-steps');
|
|
152
156
|
setShowAuthFlow(false, { emitCancelAuth: true });
|
|
153
157
|
return;
|
|
154
158
|
}
|
|
@@ -98,8 +98,9 @@ export { useUpgradeToDynamicWaasFlow } from './useUpgradeToDynamicWaasFlow';
|
|
|
98
98
|
export { useGetMfaToken } from './useGetMfaToken';
|
|
99
99
|
export { useIsMfaRequiredForAction } from './useIsMfaRequiredForAction';
|
|
100
100
|
export { useWalletDelegation } from './useWalletDelegation';
|
|
101
|
-
export { CloudBackupProvider, isWalletBackedUp, useBackupWallets, useWalletBackup, } from './useWalletBackup';
|
|
102
|
-
export type { WalletBackupStatus, WalletOperationState, WalletToBackup, WalletWithBackupStatus, } from './useWalletBackup';
|
|
101
|
+
export { CloudBackupProvider, GOOGLE_DRIVE_BACKUP_REQUIRED_SCOPES, findMissingGoogleDriveBackupScopes, hasAllGoogleDriveBackupScopes, isInsufficientGoogleDriveScopesError, isWalletBackedUp, useBackupWallets, useWalletBackup, } from './useWalletBackup';
|
|
102
|
+
export type { GoogleDriveBackupAccessError, WalletBackupStatus, WalletOperationState, WalletToBackup, WalletWithBackupStatus, } from './useWalletBackup';
|
|
103
|
+
export { useGoogleDriveBackupReadiness, type GoogleDriveBackupReadiness, type GoogleDriveBackupReadinessStatus, type UseGoogleDriveBackupReadinessReturn, } from './useGoogleDriveBackupReadiness';
|
|
103
104
|
export { useRefreshAuth } from './useRefreshAuth';
|
|
104
105
|
export { useSetupPassword, PASSWORD_SETUP_CANCELLED_ERROR, } from './useSetupPassword';
|
|
105
106
|
export { useWalletUnlock } from './useWalletUnlock';
|