@dynamic-labs/sdk-react-core 2.3.3 → 2.3.4

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 CHANGED
@@ -1,4 +1,11 @@
1
1
 
2
+ ### [2.3.4](https://github.com/dynamic-labs/DynamicAuth/compare/v2.3.3...v2.3.4) (2024-07-19)
3
+
4
+
5
+ ### Bug Fixes
6
+
7
+ * not able to switch to secondary wallet ([#6373](https://github.com/dynamic-labs/DynamicAuth/issues/6373)) ([#6378](https://github.com/dynamic-labs/DynamicAuth/issues/6378)) ([7c4f220](https://github.com/dynamic-labs/DynamicAuth/commit/7c4f2200cc66da1889b5de03a6823a96043825da))
8
+
2
9
  ### [2.3.3](https://github.com/dynamic-labs/DynamicAuth/compare/v2.3.2...v2.3.3) (2024-07-18)
3
10
 
4
11
 
package/package.cjs CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var version = "2.3.3";
6
+ var version = "2.3.4";
7
7
  var dependencies = {
8
8
  "@dynamic-labs/sdk-api-core": "0.0.460",
9
9
  "@hcaptcha/react-hcaptcha": "1.4.4",
package/package.js CHANGED
@@ -1,5 +1,5 @@
1
1
  'use client'
2
- var version = "2.3.3";
2
+ var version = "2.3.4";
3
3
  var dependencies = {
4
4
  "@dynamic-labs/sdk-api-core": "0.0.460",
5
5
  "@hcaptcha/react-hcaptcha": "1.4.4",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/sdk-react-core",
3
- "version": "2.3.3",
3
+ "version": "2.3.4",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/dynamic-labs/dynamic-auth.git",
@@ -17,18 +17,18 @@
17
17
  "react-i18next": "13.5.0",
18
18
  "yup": "0.32.11",
19
19
  "react-international-phone": "4.2.5",
20
- "@dynamic-labs/iconic": "2.3.3",
21
- "@dynamic-labs/logger": "2.3.3",
22
- "@dynamic-labs/multi-wallet": "2.3.3",
23
- "@dynamic-labs/rpc-provider-ethereum": "2.3.3",
24
- "@dynamic-labs/rpc-provider-solana": "2.3.3",
25
- "@dynamic-labs/rpc-providers": "2.3.3",
26
- "@dynamic-labs/store": "2.3.3",
27
- "@dynamic-labs/types": "2.3.3",
28
- "@dynamic-labs/utils": "2.3.3",
29
- "@dynamic-labs/viem-utils": "2.3.3",
30
- "@dynamic-labs/wallet-book": "2.3.3",
31
- "@dynamic-labs/wallet-connector-core": "2.3.3",
20
+ "@dynamic-labs/iconic": "2.3.4",
21
+ "@dynamic-labs/logger": "2.3.4",
22
+ "@dynamic-labs/multi-wallet": "2.3.4",
23
+ "@dynamic-labs/rpc-provider-ethereum": "2.3.4",
24
+ "@dynamic-labs/rpc-provider-solana": "2.3.4",
25
+ "@dynamic-labs/rpc-providers": "2.3.4",
26
+ "@dynamic-labs/store": "2.3.4",
27
+ "@dynamic-labs/types": "2.3.4",
28
+ "@dynamic-labs/utils": "2.3.4",
29
+ "@dynamic-labs/viem-utils": "2.3.4",
30
+ "@dynamic-labs/wallet-book": "2.3.4",
31
+ "@dynamic-labs/wallet-connector-core": "2.3.4",
32
32
  "eventemitter3": "5.0.1"
33
33
  },
34
34
  "devDependencies": {
@@ -82,7 +82,7 @@ require('../../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/Passke
82
82
  var useInternalDynamicContext = require('../../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.cjs');
83
83
 
84
84
  const useSyncPrimaryWallet = (canSync = true) => {
85
- const { setShowAuthFlow, isAuthenticated, authMode, connectWallet, handleLogOut, multiWalletWidgetState, primaryWallet, setMultiWalletWidgetState, showLockedWalletView, secondaryWallets, setPrimaryWallet, setSelectedWalletWithAction, multiWallet, } = useInternalDynamicContext.useInternalDynamicContext();
85
+ const { setShowAuthFlow, isAuthenticated, authMode, connectWallet, handleLogOut, multiWalletWidgetState, primaryWallet, setMultiWalletWidgetState, showLockedWalletView, secondaryWallets, setPrimaryWallet, setSelectedWalletWithAction, multiWallet, selectedWalletWithAction, } = useInternalDynamicContext.useInternalDynamicContext();
86
86
  const { setView } = ViewContext.useViewContext();
87
87
  const handlePrimaryWalletNotActive = React.useCallback((connectedAddress) => {
88
88
  logVerboseTroubleshootingMessage.logVerboseTroubleshootingMessage('[useSyncPrimaryWallet] handlePrimaryWalletNotActive', {
@@ -104,7 +104,11 @@ const useSyncPrimaryWallet = (canSync = true) => {
104
104
  connectedWalletWithSameProvider,
105
105
  multiWallet,
106
106
  });
107
- if (multiWallet && connectedWalletWithSameProvider) {
107
+ // If user was explicitly trying to switch to this new wallet, let it be
108
+ const wasExplicitWalletChange = (selectedWalletWithAction === null || selectedWalletWithAction === void 0 ? void 0 : selectedWalletWithAction.wallet.address) === primaryWallet.address;
109
+ if (multiWallet &&
110
+ connectedWalletWithSameProvider &&
111
+ !wasExplicitWalletChange) {
108
112
  setPrimaryWallet(connectedWalletWithSameProvider.id);
109
113
  return;
110
114
  }
@@ -119,6 +123,7 @@ const useSyncPrimaryWallet = (canSync = true) => {
119
123
  primaryWallet,
120
124
  secondaryWallets,
121
125
  multiWallet,
126
+ selectedWalletWithAction === null || selectedWalletWithAction === void 0 ? void 0 : selectedWalletWithAction.wallet.address,
122
127
  setSelectedWalletWithAction,
123
128
  setMultiWalletWidgetState,
124
129
  connectWallet,
@@ -78,7 +78,7 @@ import '../../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/Passkey
78
78
  import { useInternalDynamicContext } from '../../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.js';
79
79
 
80
80
  const useSyncPrimaryWallet = (canSync = true) => {
81
- const { setShowAuthFlow, isAuthenticated, authMode, connectWallet, handleLogOut, multiWalletWidgetState, primaryWallet, setMultiWalletWidgetState, showLockedWalletView, secondaryWallets, setPrimaryWallet, setSelectedWalletWithAction, multiWallet, } = useInternalDynamicContext();
81
+ const { setShowAuthFlow, isAuthenticated, authMode, connectWallet, handleLogOut, multiWalletWidgetState, primaryWallet, setMultiWalletWidgetState, showLockedWalletView, secondaryWallets, setPrimaryWallet, setSelectedWalletWithAction, multiWallet, selectedWalletWithAction, } = useInternalDynamicContext();
82
82
  const { setView } = useViewContext();
83
83
  const handlePrimaryWalletNotActive = useCallback((connectedAddress) => {
84
84
  logVerboseTroubleshootingMessage('[useSyncPrimaryWallet] handlePrimaryWalletNotActive', {
@@ -100,7 +100,11 @@ const useSyncPrimaryWallet = (canSync = true) => {
100
100
  connectedWalletWithSameProvider,
101
101
  multiWallet,
102
102
  });
103
- if (multiWallet && connectedWalletWithSameProvider) {
103
+ // If user was explicitly trying to switch to this new wallet, let it be
104
+ const wasExplicitWalletChange = (selectedWalletWithAction === null || selectedWalletWithAction === void 0 ? void 0 : selectedWalletWithAction.wallet.address) === primaryWallet.address;
105
+ if (multiWallet &&
106
+ connectedWalletWithSameProvider &&
107
+ !wasExplicitWalletChange) {
104
108
  setPrimaryWallet(connectedWalletWithSameProvider.id);
105
109
  return;
106
110
  }
@@ -115,6 +119,7 @@ const useSyncPrimaryWallet = (canSync = true) => {
115
119
  primaryWallet,
116
120
  secondaryWallets,
117
121
  multiWallet,
122
+ selectedWalletWithAction === null || selectedWalletWithAction === void 0 ? void 0 : selectedWalletWithAction.wallet.address,
118
123
  setSelectedWalletWithAction,
119
124
  setMultiWalletWidgetState,
120
125
  connectWallet,