@dynamic-labs/sdk-react-core 3.0.0-alpha.57 → 3.0.0-alpha.58
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 +11 -0
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +12 -12
- package/src/lib/context/DynamicContext/DynamicContext.cjs +1 -3
- package/src/lib/context/DynamicContext/DynamicContext.js +1 -3
- package/src/lib/context/DynamicContext/types/DynamicContextProps.d.ts +0 -1
- package/src/lib/context/DynamicContext/types/IDynamicContext.d.ts +0 -2
- package/src/lib/utils/hooks/useSyncOnboardingFlow/useSyncOnboardingFlow.cjs +1 -6
- package/src/lib/utils/hooks/useSyncOnboardingFlow/useSyncOnboardingFlow.js +1 -6
- package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs +5 -2
- package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.js +5 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
|
|
2
|
+
## [3.0.0-alpha.58](https://github.com/dynamic-labs/DynamicAuth/compare/v3.0.0-alpha.57...v3.0.0-alpha.58) (2024-09-05)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### ⚠ BREAKING CHANGES
|
|
6
|
+
|
|
7
|
+
* remove headless prop from DynamicContextProvider ([#6806](https://github.com/dynamic-labs/DynamicAuth/issues/6806)) ([1ab55a1](https://github.com/dynamic-labs/DynamicAuth/commit/1ab55a1cf5d143316617aa88a487bb59446f6f28))
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* allow selecting which MetaMask account to connect with when linking new wallet ([#6796](https://github.com/dynamic-labs/DynamicAuth/issues/6796)) ([83e270f](https://github.com/dynamic-labs/DynamicAuth/commit/83e270ffd53d5f6c95464cf570663e1008ffa6fb))
|
|
12
|
+
|
|
2
13
|
## [3.0.0-alpha.57](https://github.com/dynamic-labs/DynamicAuth/compare/v3.0.0-alpha.56...v3.0.0-alpha.57) (2024-09-05)
|
|
3
14
|
|
|
4
15
|
|
package/package.cjs
CHANGED
package/package.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/sdk-react-core",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.58",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/dynamic-labs/dynamic-auth.git",
|
|
@@ -17,17 +17,17 @@
|
|
|
17
17
|
"react-i18next": "13.5.0",
|
|
18
18
|
"yup": "0.32.11",
|
|
19
19
|
"react-international-phone": "4.2.5",
|
|
20
|
-
"@dynamic-labs/global-wallet": "3.0.0-alpha.
|
|
21
|
-
"@dynamic-labs/iconic": "3.0.0-alpha.
|
|
22
|
-
"@dynamic-labs/logger": "3.0.0-alpha.
|
|
23
|
-
"@dynamic-labs/message-transport": "3.0.0-alpha.
|
|
24
|
-
"@dynamic-labs/multi-wallet": "3.0.0-alpha.
|
|
25
|
-
"@dynamic-labs/rpc-providers": "3.0.0-alpha.
|
|
26
|
-
"@dynamic-labs/store": "3.0.0-alpha.
|
|
27
|
-
"@dynamic-labs/types": "3.0.0-alpha.
|
|
28
|
-
"@dynamic-labs/utils": "3.0.0-alpha.
|
|
29
|
-
"@dynamic-labs/wallet-book": "3.0.0-alpha.
|
|
30
|
-
"@dynamic-labs/wallet-connector-core": "3.0.0-alpha.
|
|
20
|
+
"@dynamic-labs/global-wallet": "3.0.0-alpha.58",
|
|
21
|
+
"@dynamic-labs/iconic": "3.0.0-alpha.58",
|
|
22
|
+
"@dynamic-labs/logger": "3.0.0-alpha.58",
|
|
23
|
+
"@dynamic-labs/message-transport": "3.0.0-alpha.58",
|
|
24
|
+
"@dynamic-labs/multi-wallet": "3.0.0-alpha.58",
|
|
25
|
+
"@dynamic-labs/rpc-providers": "3.0.0-alpha.58",
|
|
26
|
+
"@dynamic-labs/store": "3.0.0-alpha.58",
|
|
27
|
+
"@dynamic-labs/types": "3.0.0-alpha.58",
|
|
28
|
+
"@dynamic-labs/utils": "3.0.0-alpha.58",
|
|
29
|
+
"@dynamic-labs/wallet-book": "3.0.0-alpha.58",
|
|
30
|
+
"@dynamic-labs/wallet-connector-core": "3.0.0-alpha.58",
|
|
31
31
|
"eventemitter3": "5.0.1"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
@@ -147,7 +147,7 @@ const DynamicContext = React.createContext(undefined);
|
|
|
147
147
|
/** The context provider itself we only use internally */
|
|
148
148
|
const InnerDynamicContextProvider = ({ children, theme, settings: settings$1, locale: locale$1, enableInstrumentation = false, }) => {
|
|
149
149
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
150
|
-
const { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, defaultPhoneInputIso2, apiBaseUrl, coinbaseWalletPreference, detectNewWalletsForLinking = false, enableConnectOnlyFallback = false, deepLinkPreference: deepLinkPreferenceProp = 'native', bridgeChains, cssOverrides, defaultNumberOfWalletsToShow = values.DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displaySiweStatement = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, walletsFilter, logLevel = 'WARN', mobileExperience, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, customPrivacyPolicy, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, customTermsOfServices, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectors: walletConnectorsProp, socialProvidersFilter, showLockedWalletView = false, walletConnectPreferredChains, walletConnectorExtensions, recommendedWallets, handlers,
|
|
150
|
+
const { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, defaultPhoneInputIso2, apiBaseUrl, coinbaseWalletPreference, detectNewWalletsForLinking = false, enableConnectOnlyFallback = false, deepLinkPreference: deepLinkPreferenceProp = 'native', bridgeChains, cssOverrides, defaultNumberOfWalletsToShow = values.DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displaySiweStatement = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, walletsFilter, logLevel = 'WARN', mobileExperience, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, customPrivacyPolicy, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, customTermsOfServices, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectors: walletConnectorsProp, socialProvidersFilter, showLockedWalletView = false, walletConnectPreferredChains, walletConnectorExtensions, recommendedWallets, handlers, } = settings$1;
|
|
151
151
|
localStorage.LocalStorage.setSuffix(settings$1.localStorageSuffix);
|
|
152
152
|
/**
|
|
153
153
|
* initialize global store
|
|
@@ -487,7 +487,6 @@ const InnerDynamicContextProvider = ({ children, theme, settings: settings$1, lo
|
|
|
487
487
|
handleLogOut,
|
|
488
488
|
handleUnlinkWallet: authMode === 'connect-only' ? disconnectWallet : handleUnlinkWallet,
|
|
489
489
|
handlers,
|
|
490
|
-
headless,
|
|
491
490
|
i18nSDKInstance,
|
|
492
491
|
isBridgeFlow,
|
|
493
492
|
isProjectSettingsLoading,
|
|
@@ -608,7 +607,6 @@ const InnerDynamicContextProvider = ({ children, theme, settings: settings$1, lo
|
|
|
608
607
|
handleLogOut,
|
|
609
608
|
handleUnlinkWallet,
|
|
610
609
|
handlers,
|
|
611
|
-
headless,
|
|
612
610
|
i18nSDKInstance,
|
|
613
611
|
isBridgeFlow,
|
|
614
612
|
isProjectSettingsLoading,
|
|
@@ -143,7 +143,7 @@ const DynamicContext = createContext(undefined);
|
|
|
143
143
|
/** The context provider itself we only use internally */
|
|
144
144
|
const InnerDynamicContextProvider = ({ children, theme, settings, locale, enableInstrumentation = false, }) => {
|
|
145
145
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
146
|
-
const { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, defaultPhoneInputIso2, apiBaseUrl, coinbaseWalletPreference, detectNewWalletsForLinking = false, enableConnectOnlyFallback = false, deepLinkPreference: deepLinkPreferenceProp = 'native', bridgeChains, cssOverrides, defaultNumberOfWalletsToShow = DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displaySiweStatement = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, walletsFilter, logLevel = 'WARN', mobileExperience, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, customPrivacyPolicy, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, customTermsOfServices, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectors: walletConnectorsProp, socialProvidersFilter, showLockedWalletView = false, walletConnectPreferredChains, walletConnectorExtensions, recommendedWallets, handlers,
|
|
146
|
+
const { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, defaultPhoneInputIso2, apiBaseUrl, coinbaseWalletPreference, detectNewWalletsForLinking = false, enableConnectOnlyFallback = false, deepLinkPreference: deepLinkPreferenceProp = 'native', bridgeChains, cssOverrides, defaultNumberOfWalletsToShow = DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displaySiweStatement = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, walletsFilter, logLevel = 'WARN', mobileExperience, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, customPrivacyPolicy, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, customTermsOfServices, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectors: walletConnectorsProp, socialProvidersFilter, showLockedWalletView = false, walletConnectPreferredChains, walletConnectorExtensions, recommendedWallets, handlers, } = settings;
|
|
147
147
|
LocalStorage.setSuffix(settings.localStorageSuffix);
|
|
148
148
|
/**
|
|
149
149
|
* initialize global store
|
|
@@ -483,7 +483,6 @@ const InnerDynamicContextProvider = ({ children, theme, settings, locale, enable
|
|
|
483
483
|
handleLogOut,
|
|
484
484
|
handleUnlinkWallet: authMode === 'connect-only' ? disconnectWallet : handleUnlinkWallet,
|
|
485
485
|
handlers,
|
|
486
|
-
headless,
|
|
487
486
|
i18nSDKInstance,
|
|
488
487
|
isBridgeFlow,
|
|
489
488
|
isProjectSettingsLoading,
|
|
@@ -604,7 +603,6 @@ const InnerDynamicContextProvider = ({ children, theme, settings, locale, enable
|
|
|
604
603
|
handleLogOut,
|
|
605
604
|
handleUnlinkWallet,
|
|
606
605
|
handlers,
|
|
607
|
-
headless,
|
|
608
606
|
i18nSDKInstance,
|
|
609
607
|
isBridgeFlow,
|
|
610
608
|
isProjectSettingsLoading,
|
|
@@ -62,8 +62,6 @@ export interface IDynamicContext {
|
|
|
62
62
|
handleLogOut: () => Promise<void>;
|
|
63
63
|
handleUnlinkWallet: (walletId: string) => Promise<void> | void;
|
|
64
64
|
handlers?: DynamicHandlers;
|
|
65
|
-
/** Flag for customer to set when using dynamic fully headless */
|
|
66
|
-
headless?: boolean;
|
|
67
65
|
isBridgeFlow: boolean;
|
|
68
66
|
isProjectSettingsLoading: boolean;
|
|
69
67
|
/** Whether there is an instance of DynamicEmbeddedAuthFlow being rendered */
|
|
@@ -99,7 +99,7 @@ require('../../../store/state/tokenBalances.cjs');
|
|
|
99
99
|
var useInternalDynamicContext = require('../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.cjs');
|
|
100
100
|
|
|
101
101
|
const useSyncOnboardingFlow = () => {
|
|
102
|
-
const { setShowAuthFlow, userWithMissingInfo, handlers,
|
|
102
|
+
const { setShowAuthFlow, userWithMissingInfo, handlers, sdkHasLoaded, setSelectedWalletConnectorKey, } = useInternalDynamicContext.useInternalDynamicContext();
|
|
103
103
|
const { setView } = ViewContext.useViewContext();
|
|
104
104
|
const { updateUser } = useUserUpdateRequest.useUserUpdateRequestInternal({
|
|
105
105
|
validationSchemaStripUnknown: false,
|
|
@@ -184,10 +184,6 @@ const useSyncOnboardingFlow = () => {
|
|
|
184
184
|
handleHeadlessOnboarding();
|
|
185
185
|
return;
|
|
186
186
|
}
|
|
187
|
-
if (headless) {
|
|
188
|
-
logger.logger.error('No onboarding handler found. Please add a handleUserOnboarding handler to your dynamic provider settings.');
|
|
189
|
-
return;
|
|
190
|
-
}
|
|
191
187
|
handleOnboarding();
|
|
192
188
|
return;
|
|
193
189
|
}, [
|
|
@@ -196,7 +192,6 @@ const useSyncOnboardingFlow = () => {
|
|
|
196
192
|
handlers,
|
|
197
193
|
completeAuth,
|
|
198
194
|
updateUser,
|
|
199
|
-
headless,
|
|
200
195
|
setShowAuthFlow,
|
|
201
196
|
setView,
|
|
202
197
|
formattedPhone,
|
|
@@ -95,7 +95,7 @@ import '../../../store/state/tokenBalances.js';
|
|
|
95
95
|
import { useInternalDynamicContext } from '../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.js';
|
|
96
96
|
|
|
97
97
|
const useSyncOnboardingFlow = () => {
|
|
98
|
-
const { setShowAuthFlow, userWithMissingInfo, handlers,
|
|
98
|
+
const { setShowAuthFlow, userWithMissingInfo, handlers, sdkHasLoaded, setSelectedWalletConnectorKey, } = useInternalDynamicContext();
|
|
99
99
|
const { setView } = useViewContext();
|
|
100
100
|
const { updateUser } = useUserUpdateRequestInternal({
|
|
101
101
|
validationSchemaStripUnknown: false,
|
|
@@ -180,10 +180,6 @@ const useSyncOnboardingFlow = () => {
|
|
|
180
180
|
handleHeadlessOnboarding();
|
|
181
181
|
return;
|
|
182
182
|
}
|
|
183
|
-
if (headless) {
|
|
184
|
-
logger.error('No onboarding handler found. Please add a handleUserOnboarding handler to your dynamic provider settings.');
|
|
185
|
-
return;
|
|
186
|
-
}
|
|
187
183
|
handleOnboarding();
|
|
188
184
|
return;
|
|
189
185
|
}, [
|
|
@@ -192,7 +188,6 @@ const useSyncOnboardingFlow = () => {
|
|
|
192
188
|
handlers,
|
|
193
189
|
completeAuth,
|
|
194
190
|
updateUser,
|
|
195
|
-
headless,
|
|
196
191
|
setShowAuthFlow,
|
|
197
192
|
setView,
|
|
198
193
|
formattedPhone,
|
|
@@ -175,7 +175,11 @@ const useWalletItemActions = () => {
|
|
|
175
175
|
});
|
|
176
176
|
const handleAlreadyConnectedWallet = (walletConnector) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
177
177
|
logger.logger.debug('handleAlreadyConnectedWallet', walletConnector);
|
|
178
|
-
|
|
178
|
+
setShowAuthFlow(false);
|
|
179
|
+
const connectedAccounts = yield walletConnector.getConnectedAccounts({
|
|
180
|
+
chooseAccounts: true,
|
|
181
|
+
forceFetch: true,
|
|
182
|
+
});
|
|
179
183
|
const activeAccountAlreadyLinked = linkedWallets.find((wallet) => { var _a; return wallet.address.toLowerCase() === ((_a = connectedAccounts[0]) === null || _a === void 0 ? void 0 : _a.toLowerCase()); });
|
|
180
184
|
logVerboseTroubleshootingMessage.logVerboseTroubleshootingMessage('[handleAlreadyConnectedWallet]', {
|
|
181
185
|
activeAccountAlreadyLinked,
|
|
@@ -188,7 +192,6 @@ const useWalletItemActions = () => {
|
|
|
188
192
|
else {
|
|
189
193
|
setMultiWalletWidgetState('awaiting_signature', undefined, 'linking_new_wallet');
|
|
190
194
|
}
|
|
191
|
-
setShowAuthFlow(false);
|
|
192
195
|
setSelectedWalletConnectorKey(walletConnector.key);
|
|
193
196
|
});
|
|
194
197
|
const openWallet = (walletKey, handlers) => {
|
|
@@ -171,7 +171,11 @@ const useWalletItemActions = () => {
|
|
|
171
171
|
});
|
|
172
172
|
const handleAlreadyConnectedWallet = (walletConnector) => __awaiter(void 0, void 0, void 0, function* () {
|
|
173
173
|
logger.debug('handleAlreadyConnectedWallet', walletConnector);
|
|
174
|
-
|
|
174
|
+
setShowAuthFlow(false);
|
|
175
|
+
const connectedAccounts = yield walletConnector.getConnectedAccounts({
|
|
176
|
+
chooseAccounts: true,
|
|
177
|
+
forceFetch: true,
|
|
178
|
+
});
|
|
175
179
|
const activeAccountAlreadyLinked = linkedWallets.find((wallet) => { var _a; return wallet.address.toLowerCase() === ((_a = connectedAccounts[0]) === null || _a === void 0 ? void 0 : _a.toLowerCase()); });
|
|
176
180
|
logVerboseTroubleshootingMessage('[handleAlreadyConnectedWallet]', {
|
|
177
181
|
activeAccountAlreadyLinked,
|
|
@@ -184,7 +188,6 @@ const useWalletItemActions = () => {
|
|
|
184
188
|
else {
|
|
185
189
|
setMultiWalletWidgetState('awaiting_signature', undefined, 'linking_new_wallet');
|
|
186
190
|
}
|
|
187
|
-
setShowAuthFlow(false);
|
|
188
191
|
setSelectedWalletConnectorKey(walletConnector.key);
|
|
189
192
|
});
|
|
190
193
|
const openWallet = (walletKey, handlers) => {
|