@dynamic-labs/sdk-react-core 4.79.1 → 4.80.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.
Files changed (97) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/package.cjs +3 -3
  3. package/package.js +3 -3
  4. package/package.json +14 -14
  5. package/src/index.cjs +2 -2
  6. package/src/index.js +1 -1
  7. package/src/lib/Main.cjs +2 -2
  8. package/src/lib/Main.js +2 -2
  9. package/src/lib/client/extension/deprecated/mfa/verifyTotpMfaDevice/verifyTotpMfaDevice.d.ts +1 -1
  10. package/src/lib/components/LogoutButton/LogoutButton.cjs +2 -2
  11. package/src/lib/components/LogoutButton/LogoutButton.js +2 -2
  12. package/src/lib/context/DynamicContext/DynamicContext.cjs +6 -4
  13. package/src/lib/context/DynamicContext/DynamicContext.js +6 -4
  14. package/src/lib/context/DynamicContext/hooks/useHandleLogout/index.d.ts +1 -0
  15. package/src/lib/context/DynamicContext/hooks/useHandleLogout/types.d.ts +9 -0
  16. package/src/lib/context/DynamicContext/hooks/useHandleLogout/useHandleLogout.cjs +25 -12
  17. package/src/lib/context/DynamicContext/hooks/useHandleLogout/useHandleLogout.d.ts +5 -3
  18. package/src/lib/context/DynamicContext/hooks/useHandleLogout/useHandleLogout.js +24 -11
  19. package/src/lib/context/DynamicContext/hooks/useRemoveWallet/useRemoveWallet.cjs +3 -3
  20. package/src/lib/context/DynamicContext/hooks/useRemoveWallet/useRemoveWallet.d.ts +3 -2
  21. package/src/lib/context/DynamicContext/hooks/useRemoveWallet/useRemoveWallet.js +3 -3
  22. package/src/lib/context/DynamicContext/types/IDynamicContext.d.ts +2 -0
  23. package/src/lib/context/DynamicContext/types/IInternalDynamicContext.d.ts +8 -1
  24. package/src/lib/context/ViewContext/types/index.d.ts +1 -1
  25. package/src/lib/events/auth.d.ts +2 -1
  26. package/src/lib/styles/index.shadow.cjs +1 -1
  27. package/src/lib/styles/index.shadow.js +1 -1
  28. package/src/lib/utils/constants/authViewLayoutChecks.cjs +2 -0
  29. package/src/lib/utils/constants/authViewLayoutChecks.js +2 -0
  30. package/src/lib/utils/hooks/useDeleteUserAccount/useDeleteUserAccount.cjs +2 -2
  31. package/src/lib/utils/hooks/useDeleteUserAccount/useDeleteUserAccount.js +2 -2
  32. package/src/lib/utils/hooks/useEmbeddedWalletSessionKeys/useEmbeddedWalletSessionKeys.cjs +1 -1
  33. package/src/lib/utils/hooks/useEmbeddedWalletSessionKeys/useEmbeddedWalletSessionKeys.js +1 -1
  34. package/src/lib/utils/hooks/useNetworkConfigurationsFromProjectSettings/useNetworkConfigurationsFromProjectSettings.cjs +7 -2
  35. package/src/lib/utils/hooks/useNetworkConfigurationsFromProjectSettings/useNetworkConfigurationsFromProjectSettings.d.ts +2 -1
  36. package/src/lib/utils/hooks/useNetworkConfigurationsFromProjectSettings/useNetworkConfigurationsFromProjectSettings.js +7 -2
  37. package/src/lib/utils/hooks/useUserAuth/useUserAuth.cjs +3 -3
  38. package/src/lib/utils/hooks/useUserAuth/useUserAuth.js +3 -3
  39. package/src/lib/utils/hooks/useValidateSession/handleStoreAndEnvironmentMismatch/handleStoreAndEnvironmentMismatch.cjs +1 -1
  40. package/src/lib/utils/hooks/useValidateSession/handleStoreAndEnvironmentMismatch/handleStoreAndEnvironmentMismatch.d.ts +2 -1
  41. package/src/lib/utils/hooks/useValidateSession/handleStoreAndEnvironmentMismatch/handleStoreAndEnvironmentMismatch.js +1 -1
  42. package/src/lib/utils/hooks/useValidateSession/handleWalletInfoOutOfSync/handleWalletInfoOutOfSync.cjs +3 -1
  43. package/src/lib/utils/hooks/useValidateSession/handleWalletInfoOutOfSync/handleWalletInfoOutOfSync.d.ts +2 -2
  44. package/src/lib/utils/hooks/useValidateSession/handleWalletInfoOutOfSync/handleWalletInfoOutOfSync.js +3 -1
  45. package/src/lib/utils/hooks/useValidateSession/useValidateSession.cjs +3 -3
  46. package/src/lib/utils/hooks/useValidateSession/useValidateSession.d.ts +3 -3
  47. package/src/lib/utils/hooks/useValidateSession/useValidateSession.js +3 -3
  48. package/src/lib/utils/hooks/useWalletBackup/useWalletBackup.cjs +1 -1
  49. package/src/lib/utils/hooks/useWalletBackup/useWalletBackup.js +1 -1
  50. package/src/lib/utils/hooks/useWalletDelegation/useWalletDelegation.cjs +1 -1
  51. package/src/lib/utils/hooks/useWalletDelegation/useWalletDelegation.js +1 -1
  52. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +2 -2
  53. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.d.ts +3 -2
  54. package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +2 -2
  55. package/src/lib/views/BackupUnsuccessfulView/BackupUnsuccessfulView.cjs +5 -5
  56. package/src/lib/views/BackupUnsuccessfulView/BackupUnsuccessfulView.js +5 -5
  57. package/src/lib/views/CollectUserDataView/CollectUserDataView.cjs +2 -2
  58. package/src/lib/views/CollectUserDataView/CollectUserDataView.js +2 -2
  59. package/src/lib/views/CollectUserDataViewNoWallet/CollectUserDataViewNoWallet.cjs +2 -2
  60. package/src/lib/views/CollectUserDataViewNoWallet/CollectUserDataViewNoWallet.js +2 -2
  61. package/src/lib/views/DeviceRegistrationView/DeviceRegistrationView.cjs +2 -2
  62. package/src/lib/views/DeviceRegistrationView/DeviceRegistrationView.js +2 -2
  63. package/src/lib/views/EmailVerification/EmailVerification.cjs +2 -2
  64. package/src/lib/views/EmailVerification/EmailVerification.js +2 -2
  65. package/src/lib/views/EmbeddedDeleteView/EmbeddedDeleteView.cjs +2 -2
  66. package/src/lib/views/EmbeddedDeleteView/EmbeddedDeleteView.js +2 -2
  67. package/src/lib/views/MfaChooseDeviceView/MfaChooseDeviceView.cjs +7 -7
  68. package/src/lib/views/MfaChooseDeviceView/MfaChooseDeviceView.js +7 -7
  69. package/src/lib/views/MfaSecureDeviceView/MfaSecureDeviceView.cjs +7 -7
  70. package/src/lib/views/MfaSecureDeviceView/MfaSecureDeviceView.js +7 -7
  71. package/src/lib/views/MfaVerificationView/MfaVerificationView.cjs +5 -5
  72. package/src/lib/views/MfaVerificationView/MfaVerificationView.js +5 -5
  73. package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.cjs +2 -2
  74. package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.js +2 -2
  75. package/src/lib/views/SmsVerification/SmsVerification.cjs +2 -2
  76. package/src/lib/views/SmsVerification/SmsVerification.js +2 -2
  77. package/src/lib/views/WalletDelegation/WalletDelegationView/WalletDelegationView.cjs +2 -2
  78. package/src/lib/views/WalletDelegation/WalletDelegationView/WalletDelegationView.js +2 -2
  79. package/src/lib/views/WalletLockedView/WalletLockedView.cjs +2 -2
  80. package/src/lib/views/WalletLockedView/WalletLockedView.js +2 -2
  81. package/src/lib/views/WalletUsedView/WalletUsedView.cjs +2 -2
  82. package/src/lib/views/WalletUsedView/WalletUsedView.js +2 -2
  83. package/src/lib/views/viewToComponentMap.cjs +2 -0
  84. package/src/lib/views/viewToComponentMap.d.ts +1 -0
  85. package/src/lib/views/viewToComponentMap.js +2 -0
  86. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.cjs +2 -2
  87. package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.js +2 -2
  88. package/src/lib/widgets/DynamicWidget/views/SettingsView/SettingsView.cjs +2 -2
  89. package/src/lib/widgets/DynamicWidget/views/SettingsView/SettingsView.js +2 -2
  90. package/src/lib/widgets/DynamicWidget/views/WaasBackupView/WaasBackupCloudProviderView.cjs +19 -4
  91. package/src/lib/widgets/DynamicWidget/views/WaasBackupView/WaasBackupCloudProviderView.js +19 -4
  92. package/src/lib/widgets/DynamicWidget/views/WaasBackupView/WaasBackupGrantAccessView.cjs +50 -0
  93. package/src/lib/widgets/DynamicWidget/views/WaasBackupView/WaasBackupGrantAccessView.d.ts +2 -0
  94. package/src/lib/widgets/DynamicWidget/views/WaasBackupView/WaasBackupGrantAccessView.js +46 -0
  95. package/src/lib/widgets/DynamicWidget/views/WaasBackupView/WaasBackupProgressView.cjs +23 -3
  96. package/src/lib/widgets/DynamicWidget/views/WaasBackupView/WaasBackupProgressView.js +23 -3
  97. package/src/lib/widgets/DynamicWidget/views/WaasBackupView/index.d.ts +1 -0
@@ -1,9 +1,16 @@
1
+ import { SdkLogoutReason } from '../hooks/useHandleLogout';
1
2
  import { IDynamicContext } from './IDynamicContext';
2
3
  /**
3
4
  * Allows deprecating specific methods that we should avoid using internally
4
5
  * without deprecating them publicly as well.
5
6
  */
6
- export type IInternalDynamicContext = Omit<IDynamicContext, 'user' | 'cspNonce' | 'cssOverrides' | 'accessDeniedButton' | 'accessDeniedMessagePrimary' | 'accessDeniedMessageSecondary' | 'appLogoUrl' | 'appName' | 'bridgeChains' | 'customPrivacyPolicy' | 'customTermsOfServices' | 'debugError' | 'defaultNumberOfWalletsToShow' | 'defaultPhoneInputIso2' | 'detectNewWalletsForLinking' | 'displaySiweStatement' | 'enableConnectOnlyFallback' | 'events' | 'handlers' | 'mobileExperience' | 'networkValidationMode' | 'newToWeb3WalletChainMap' | 'notInTheListImageUrl' | 'onboardingImageUrl' | 'overrides' | 'policiesConsentInnerComponent' | 'privacyPolicyUrl' | 'recommendedWallets' | 'redirectUrl' | 'shadowDOMEnabled' | 'showLockedWalletView' | 'siweStatement' | 'socialMediaIconUrl' | 'socialMediaLinkText' | 'socialMediaUrl' | 'socialProvidersFilter' | 'termsOfServiceUrl' | 'theme' | 'walletsFilter'> & {
7
+ export type IInternalDynamicContext = Omit<IDynamicContext, 'handleLogOut' | 'user' | 'cspNonce' | 'cssOverrides' | 'accessDeniedButton' | 'accessDeniedMessagePrimary' | 'accessDeniedMessageSecondary' | 'appLogoUrl' | 'appName' | 'bridgeChains' | 'customPrivacyPolicy' | 'customTermsOfServices' | 'debugError' | 'defaultNumberOfWalletsToShow' | 'defaultPhoneInputIso2' | 'detectNewWalletsForLinking' | 'displaySiweStatement' | 'enableConnectOnlyFallback' | 'events' | 'handlers' | 'mobileExperience' | 'networkValidationMode' | 'newToWeb3WalletChainMap' | 'notInTheListImageUrl' | 'onboardingImageUrl' | 'overrides' | 'policiesConsentInnerComponent' | 'privacyPolicyUrl' | 'recommendedWallets' | 'redirectUrl' | 'shadowDOMEnabled' | 'showLockedWalletView' | 'siweStatement' | 'socialMediaIconUrl' | 'socialMediaLinkText' | 'socialMediaUrl' | 'socialProvidersFilter' | 'termsOfServiceUrl' | 'theme' | 'walletsFilter'> & {
8
+ /**
9
+ * Reason-tagged logout for internal SDK call sites. Every internal logout
10
+ * must carry a reason so Datadog can attribute it. The no-arg public
11
+ * `handleLogOut` is intentionally omitted from this view.
12
+ */
13
+ handleLogOutWithReason: (reason: SdkLogoutReason) => Promise<void>;
7
14
  /**
8
15
  * @deprecated please call useOnboardingCompleteUser() OR useUser() instead.
9
16
  * | `useOnboardingCompleteUser` only returns the user if it's not missing KYC or MFA.
@@ -1,6 +1,6 @@
1
1
  import { ComponentProps, FC } from 'react';
2
2
  import type { viewToComponentMap } from '../../../views/viewToComponentMap';
3
- export type ViewType = 'auth-loading' | 'access-blocked' | 'account-upgraded' | 'backup-unsuccessful' | 'select-hardware-wallet' | 'captcha' | 'chainalysis-blocked-wallet' | 'collect-user-data' | 'collect-user-data-login-no-wallet' | 'device-registration' | 'login-with-email-or-wallet-full-wallet-list' | 'login-with-email-or-wallet' | 'login-with-wallet-only' | 'login-with-email-verification' | 'login-with-sms-verification' | 'network-not-supported' | 'network-not-supported-manual' | 'no-access' | 'no-qr-not-installed' | 'pending-connect' | 'pending-signature-without-back-button' | 'pending-signature' | 'qr-code' | 'verify-email' | 'verify-sms' | 'wallet-connect-mobile-wallets-list' | 'wallet-list' | 'unified-wallet-exchange-list' | 'external-funding-exchange-list' | 'external-funding-wallet-list' | 'mfa-exchange-view' | 'exchange-whitelist-warning' | 'sandbox-maximum-threshold-reached' | 'multi-wallet-wallet-list' | 'duplicate-wallet' | 'wallet-sign' | 'wallet-used' | 'wallet-group' | 'select-wallet-in-wallet-group' | 'wait-for-email-confirmation-view' | 'email-wallet-otp-verification-view' | 'social-redirect-view' | 'wallet-locked-view' | 'social-wrong-account' | 'gate-blocked-wallet' | 'bridge-welcome' | 'bridge-summary' | 'bridge-next-wallet-connection' | 'account-exists' | 'merge-user-accounts' | 'merge-user-accounts-conflicts' | 'merge-user-accounts-with-same-email' | 'mfa-choose-device' | 'mfa-recovery' | 'mfa-secure-device' | 'mfa-secure-device-help' | 'mfa-verification' | 'mfa-display-backup-codes' | 'wallet-cannot-be-transferred' | 'passkey-intro' | 'passkey-recovery-add-email' | 'global-wallet-confirm' | 'global-wallet-malicious' | 'global-wallet-info' | 'passkey-recovery-start' | 'passkey-recovery-bundle' | 'passkey-recovery-complete' | 'passkey-new-domain-detected' | 'passkey-setup' | 'passkey-confirm' | 'embedded-delete-view' | 'embedded-reveal-view' | 'export-shares-view' | 'embedded-reveal-account-view' | 'embedded-wallet-auth-choice' | 'rename-passkey' | 'wallet-redirect-view' | 'wallet-upgrade-flow-view' | 'mobile-wallet-redirect-view' | 'farcaster-connect-view' | 'embedded-wallet-exists' | 'user-delete-account' | 'waas-upgrade-view' | 'wallet-delegation-view' | 'waas-backup-view' | 'waas-backup-info-view' | 'waas-backup-cloud-provider-view' | 'waas-backup-download-view' | 'waas-backup-progress-view' | 'waas-backup-success-view' | 'setup-password-terms' | 'setup-password-for-wallet-creation' | 'reset-password-flow' | 'unlock-wallet' | 'step-up-reauth-choose' | 'step-up-reauth-otp' | 'step-up-reauth-social' | 'step-up-reauth-wallet';
3
+ export type ViewType = 'auth-loading' | 'access-blocked' | 'account-upgraded' | 'backup-unsuccessful' | 'select-hardware-wallet' | 'captcha' | 'chainalysis-blocked-wallet' | 'collect-user-data' | 'collect-user-data-login-no-wallet' | 'device-registration' | 'login-with-email-or-wallet-full-wallet-list' | 'login-with-email-or-wallet' | 'login-with-wallet-only' | 'login-with-email-verification' | 'login-with-sms-verification' | 'network-not-supported' | 'network-not-supported-manual' | 'no-access' | 'no-qr-not-installed' | 'pending-connect' | 'pending-signature-without-back-button' | 'pending-signature' | 'qr-code' | 'verify-email' | 'verify-sms' | 'wallet-connect-mobile-wallets-list' | 'wallet-list' | 'unified-wallet-exchange-list' | 'external-funding-exchange-list' | 'external-funding-wallet-list' | 'mfa-exchange-view' | 'exchange-whitelist-warning' | 'sandbox-maximum-threshold-reached' | 'multi-wallet-wallet-list' | 'duplicate-wallet' | 'wallet-sign' | 'wallet-used' | 'wallet-group' | 'select-wallet-in-wallet-group' | 'wait-for-email-confirmation-view' | 'email-wallet-otp-verification-view' | 'social-redirect-view' | 'wallet-locked-view' | 'social-wrong-account' | 'gate-blocked-wallet' | 'bridge-welcome' | 'bridge-summary' | 'bridge-next-wallet-connection' | 'account-exists' | 'merge-user-accounts' | 'merge-user-accounts-conflicts' | 'merge-user-accounts-with-same-email' | 'mfa-choose-device' | 'mfa-recovery' | 'mfa-secure-device' | 'mfa-secure-device-help' | 'mfa-verification' | 'mfa-display-backup-codes' | 'wallet-cannot-be-transferred' | 'passkey-intro' | 'passkey-recovery-add-email' | 'global-wallet-confirm' | 'global-wallet-malicious' | 'global-wallet-info' | 'passkey-recovery-start' | 'passkey-recovery-bundle' | 'passkey-recovery-complete' | 'passkey-new-domain-detected' | 'passkey-setup' | 'passkey-confirm' | 'embedded-delete-view' | 'embedded-reveal-view' | 'export-shares-view' | 'embedded-reveal-account-view' | 'embedded-wallet-auth-choice' | 'rename-passkey' | 'wallet-redirect-view' | 'wallet-upgrade-flow-view' | 'mobile-wallet-redirect-view' | 'farcaster-connect-view' | 'embedded-wallet-exists' | 'user-delete-account' | 'waas-upgrade-view' | 'wallet-delegation-view' | 'waas-backup-view' | 'waas-backup-info-view' | 'waas-backup-cloud-provider-view' | 'waas-backup-download-view' | 'waas-backup-grant-access-view' | 'waas-backup-progress-view' | 'waas-backup-success-view' | 'setup-password-terms' | 'setup-password-for-wallet-creation' | 'reset-password-flow' | 'unlock-wallet' | 'step-up-reauth-choose' | 'step-up-reauth-otp' | 'step-up-reauth-social' | 'step-up-reauth-wallet';
4
4
  export type ViewMapConstraint = Record<ViewType, FC<any>>;
5
5
  export type ViewMap = typeof viewToComponentMap;
6
6
  export type ViewState<T extends ViewType> = {
@@ -1,5 +1,6 @@
1
1
  import type { LogoutEventMetadata } from '@dynamic-labs-sdk/client';
2
2
  import { AuthEventPayload } from '@dynamic-labs/types';
3
+ import { SdkLogoutReason } from '../context/DynamicContext/hooks/useHandleLogout';
3
4
  export type AuthEvents = {
4
5
  /**
5
6
  * Informs an auth attempt failed.
@@ -15,7 +16,7 @@ export type AuthEvents = {
15
16
  authInit: (method: AuthEventPayload) => void;
16
17
  logout: (metadata?: LogoutEventMetadata) => void;
17
18
  /** This event is used to trigger logout to be called, DO NOT listen to it. Listen to "logout" instead */
18
- triggerLogout: () => void;
19
+ triggerLogout: (reason: SdkLogoutReason) => void;
19
20
  /**
20
21
  * Emitted when the user succesfully completes an MFA challenge
21
22
  */