@dynamic-labs/sdk-react-core 4.44.1 → 4.44.2
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 +7 -0
- package/package.cjs +2 -2
- package/package.js +2 -2
- package/package.json +13 -13
- package/src/lib/client/extension/deprecated/mfa/verifyTotpMfaDevice/verifyTotpMfaDevice.d.ts +1 -1
- package/src/lib/context/CaptchaContext/CaptchaContext.js +1 -1
- package/src/lib/utils/hooks/useDynamicWaas/useDynamicWaas.cjs +2 -3
- package/src/lib/utils/hooks/useDynamicWaas/useDynamicWaas.d.ts +1 -2
- package/src/lib/utils/hooks/useDynamicWaas/useDynamicWaas.js +2 -3
- package/src/lib/utils/hooks/useSetWalletConnectorFetchers/useSetWalletConnectorFetchers.cjs +0 -3
- package/src/lib/utils/hooks/useSetWalletConnectorFetchers/useSetWalletConnectorFetchers.js +0 -3
- package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.cjs +3 -0
- package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.js +3 -0
- package/src/lib/utils/hooks/useTelegramLogin/useTelegramLogin.cjs +3 -1
- package/src/lib/utils/hooks/useTelegramLogin/useTelegramLogin.js +3 -1
- package/src/lib/utils/hooks/useUserAuth/useUserAuth.cjs +52 -1
- package/src/lib/utils/hooks/useUserAuth/useUserAuth.js +53 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
|
|
2
|
+
### [4.44.2](https://github.com/dynamic-labs/dynamic-auth/compare/v4.44.1...v4.44.2) (2025-11-08)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
|
|
7
|
+
* adds hCaptcha token on telegram login ([#9848](https://github.com/dynamic-labs/dynamic-auth/issues/9848)) ([962e9b9](https://github.com/dynamic-labs/dynamic-auth/commit/962e9b95e7df1a0f321076b317ab80dd35cd0e72))
|
|
8
|
+
|
|
2
9
|
### [4.44.1](https://github.com/dynamic-labs/dynamic-auth/compare/v4.44.0...v4.44.1) (2025-11-06)
|
|
3
10
|
|
|
4
11
|
|
package/package.cjs
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
5
|
|
|
6
|
-
var version = "4.44.
|
|
6
|
+
var version = "4.44.2";
|
|
7
7
|
var dependencies = {
|
|
8
|
-
"@dynamic-labs/sdk-api-core": "0.0.
|
|
8
|
+
"@dynamic-labs/sdk-api-core": "0.0.821",
|
|
9
9
|
"@dynamic-labs-sdk/client": "0.1.0-alpha.28",
|
|
10
10
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
11
11
|
"@thumbmarkjs/thumbmarkjs": "0.16.0",
|
package/package.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client'
|
|
2
|
-
var version = "4.44.
|
|
2
|
+
var version = "4.44.2";
|
|
3
3
|
var dependencies = {
|
|
4
|
-
"@dynamic-labs/sdk-api-core": "0.0.
|
|
4
|
+
"@dynamic-labs/sdk-api-core": "0.0.821",
|
|
5
5
|
"@dynamic-labs-sdk/client": "0.1.0-alpha.28",
|
|
6
6
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
7
7
|
"@thumbmarkjs/thumbmarkjs": "0.16.0",
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/sdk-react-core",
|
|
3
|
-
"version": "4.44.
|
|
3
|
+
"version": "4.44.2",
|
|
4
4
|
"dependencies": {
|
|
5
|
-
"@dynamic-labs/sdk-api-core": "0.0.
|
|
5
|
+
"@dynamic-labs/sdk-api-core": "0.0.821",
|
|
6
6
|
"@dynamic-labs-sdk/client": "0.1.0-alpha.28",
|
|
7
7
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
8
8
|
"@thumbmarkjs/thumbmarkjs": "0.16.0",
|
|
@@ -15,17 +15,17 @@
|
|
|
15
15
|
"yup": "0.32.11",
|
|
16
16
|
"react-international-phone": "4.5.0",
|
|
17
17
|
"bs58": "5.0.0",
|
|
18
|
-
"@dynamic-labs/assert-package-version": "4.44.
|
|
19
|
-
"@dynamic-labs/iconic": "4.44.
|
|
20
|
-
"@dynamic-labs/locale": "4.44.
|
|
21
|
-
"@dynamic-labs/logger": "4.44.
|
|
22
|
-
"@dynamic-labs/multi-wallet": "4.44.
|
|
23
|
-
"@dynamic-labs/rpc-providers": "4.44.
|
|
24
|
-
"@dynamic-labs/store": "4.44.
|
|
25
|
-
"@dynamic-labs/types": "4.44.
|
|
26
|
-
"@dynamic-labs/utils": "4.44.
|
|
27
|
-
"@dynamic-labs/wallet-book": "4.44.
|
|
28
|
-
"@dynamic-labs/wallet-connector-core": "4.44.
|
|
18
|
+
"@dynamic-labs/assert-package-version": "4.44.2",
|
|
19
|
+
"@dynamic-labs/iconic": "4.44.2",
|
|
20
|
+
"@dynamic-labs/locale": "4.44.2",
|
|
21
|
+
"@dynamic-labs/logger": "4.44.2",
|
|
22
|
+
"@dynamic-labs/multi-wallet": "4.44.2",
|
|
23
|
+
"@dynamic-labs/rpc-providers": "4.44.2",
|
|
24
|
+
"@dynamic-labs/store": "4.44.2",
|
|
25
|
+
"@dynamic-labs/types": "4.44.2",
|
|
26
|
+
"@dynamic-labs/utils": "4.44.2",
|
|
27
|
+
"@dynamic-labs/wallet-book": "4.44.2",
|
|
28
|
+
"@dynamic-labs/wallet-connector-core": "4.44.2",
|
|
29
29
|
"eventemitter3": "5.0.1"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use client'
|
|
2
2
|
import { jsx } from 'react/jsx-runtime';
|
|
3
|
-
import { createContext, useState, useCallback, useMemo
|
|
3
|
+
import { createContext, useContext, useState, useCallback, useMemo } from 'react';
|
|
4
4
|
import { useViewContext } from '../ViewContext/ViewContext.js';
|
|
5
5
|
import '@dynamic-labs/iconic';
|
|
6
6
|
import '@dynamic-labs/wallet-connector-core';
|
|
@@ -117,7 +117,7 @@ require('../../../shared/utils/functions/getInitialUrl/getInitialUrl.cjs');
|
|
|
117
117
|
var useInternalDynamicContext = require('../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext/useInternalDynamicContext.cjs');
|
|
118
118
|
|
|
119
119
|
const dynamicWaasKey = 'dynamicwaas';
|
|
120
|
-
const configWaasWalletConnector = ({ walletConnector, environmentId, apiBaseUrl,
|
|
120
|
+
const configWaasWalletConnector = ({ walletConnector, environmentId, apiBaseUrl, relayUrl, authMode = 'header', getSignedSessionId, getMfaToken, }) => {
|
|
121
121
|
var _a;
|
|
122
122
|
walletConnector.setEnvironmentId(environmentId);
|
|
123
123
|
walletConnector.setBaseApiUrl((_a = (apiBaseUrl || apiUrl.DEFAULT_WAAS_API_URL)) === null || _a === void 0 ? void 0 : _a.replace('/api/v0', ''));
|
|
@@ -127,7 +127,7 @@ const configWaasWalletConnector = ({ walletConnector, environmentId, apiBaseUrl,
|
|
|
127
127
|
}
|
|
128
128
|
else {
|
|
129
129
|
walletConnector.setWaasAuthMode('header');
|
|
130
|
-
walletConnector.setGetAuthTokenFunction(
|
|
130
|
+
walletConnector.setGetAuthTokenFunction(getMinAuthToken.getMinAuthToken);
|
|
131
131
|
}
|
|
132
132
|
walletConnector.setGetSignedSessionIdFunction(getSignedSessionId);
|
|
133
133
|
walletConnector.setRelayUrl(relayUrl);
|
|
@@ -173,7 +173,6 @@ const useDynamicWaas = () => {
|
|
|
173
173
|
const configuredWalletConnector = configWaasWalletConnector({
|
|
174
174
|
apiBaseUrl: apiBaseUrl || apiUrl.DEFAULT_WAAS_API_URL,
|
|
175
175
|
authMode: isCookieAuthEnabled ? 'cookie' : 'header',
|
|
176
|
-
authToken,
|
|
177
176
|
environmentId,
|
|
178
177
|
getMfaToken,
|
|
179
178
|
getSignedSessionId,
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { ChainEnum, MFAAction } from '@dynamic-labs/sdk-api-core';
|
|
2
2
|
import { IDynamicWaasConnector, Wallet, WalletConnectorCore } from '@dynamic-labs/wallet-connector-core';
|
|
3
3
|
import { WalletDelegationStatus } from '../useWalletDelegation/useWalletDelegation';
|
|
4
|
-
export declare const configWaasWalletConnector: ({ walletConnector, environmentId, apiBaseUrl,
|
|
4
|
+
export declare const configWaasWalletConnector: ({ walletConnector, environmentId, apiBaseUrl, relayUrl, authMode, getSignedSessionId, getMfaToken, }: {
|
|
5
5
|
walletConnector: IDynamicWaasConnector;
|
|
6
6
|
environmentId: string;
|
|
7
7
|
apiBaseUrl: string;
|
|
8
|
-
authToken: string | undefined;
|
|
9
8
|
relayUrl: string;
|
|
10
9
|
authMode?: 'cookie' | 'header';
|
|
11
10
|
getSignedSessionId: () => Promise<string>;
|
|
@@ -113,7 +113,7 @@ import '../../../shared/utils/functions/getInitialUrl/getInitialUrl.js';
|
|
|
113
113
|
import { useInternalDynamicContext } from '../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext/useInternalDynamicContext.js';
|
|
114
114
|
|
|
115
115
|
const dynamicWaasKey = 'dynamicwaas';
|
|
116
|
-
const configWaasWalletConnector = ({ walletConnector, environmentId, apiBaseUrl,
|
|
116
|
+
const configWaasWalletConnector = ({ walletConnector, environmentId, apiBaseUrl, relayUrl, authMode = 'header', getSignedSessionId, getMfaToken, }) => {
|
|
117
117
|
var _a;
|
|
118
118
|
walletConnector.setEnvironmentId(environmentId);
|
|
119
119
|
walletConnector.setBaseApiUrl((_a = (apiBaseUrl || DEFAULT_WAAS_API_URL)) === null || _a === void 0 ? void 0 : _a.replace('/api/v0', ''));
|
|
@@ -123,7 +123,7 @@ const configWaasWalletConnector = ({ walletConnector, environmentId, apiBaseUrl,
|
|
|
123
123
|
}
|
|
124
124
|
else {
|
|
125
125
|
walletConnector.setWaasAuthMode('header');
|
|
126
|
-
walletConnector.setGetAuthTokenFunction(
|
|
126
|
+
walletConnector.setGetAuthTokenFunction(getMinAuthToken);
|
|
127
127
|
}
|
|
128
128
|
walletConnector.setGetSignedSessionIdFunction(getSignedSessionId);
|
|
129
129
|
walletConnector.setRelayUrl(relayUrl);
|
|
@@ -169,7 +169,6 @@ const useDynamicWaas = () => {
|
|
|
169
169
|
const configuredWalletConnector = configWaasWalletConnector({
|
|
170
170
|
apiBaseUrl: apiBaseUrl || DEFAULT_WAAS_API_URL,
|
|
171
171
|
authMode: isCookieAuthEnabled ? 'cookie' : 'header',
|
|
172
|
-
authToken,
|
|
173
172
|
environmentId,
|
|
174
173
|
getMfaToken,
|
|
175
174
|
getSignedSessionId,
|
|
@@ -29,7 +29,6 @@ require('@dynamic-labs-sdk/client/core');
|
|
|
29
29
|
require('../../../client/client.cjs');
|
|
30
30
|
require('@dynamic-labs-sdk/client');
|
|
31
31
|
require('../../../config/ApiEndpoint.cjs');
|
|
32
|
-
var getMinAuthToken = require('../../../client/extension/functions/getMinAuthToken/getMinAuthToken.cjs');
|
|
33
32
|
require('@dynamic-labs/locale');
|
|
34
33
|
var dynamicContextProps = require('../../../store/state/dynamicContextProps/dynamicContextProps.cjs');
|
|
35
34
|
require('../../../store/state/primaryWalletId/primaryWalletId.cjs');
|
|
@@ -109,7 +108,6 @@ var useClientSessionKeys = require('../useClientSessionKeys/useClientSessionKeys
|
|
|
109
108
|
|
|
110
109
|
const useSetWalletConnectorFetchers = (walletOptions, environmentId, projectSettings) => {
|
|
111
110
|
const apiBaseUrl = dynamicContextProps.useApiBaseUrl();
|
|
112
|
-
const authToken = getMinAuthToken.getMinAuthToken();
|
|
113
111
|
const { registerEmbeddedWalletSessionKey, removeSessionKey } = useEmbeddedWalletSessionKeys.useEmbeddedWalletSessionKeys({ environmentId, projectSettings });
|
|
114
112
|
const { getSignedSessionId } = useClientSessionKeys.useClientSessionKeys();
|
|
115
113
|
const getMfaToken = useGetMfaToken.useGetMfaToken();
|
|
@@ -124,7 +122,6 @@ const useSetWalletConnectorFetchers = (walletOptions, environmentId, projectSett
|
|
|
124
122
|
else if (walletConnectorCore.isDynamicWaasConnector(walletOption.walletConnector)) {
|
|
125
123
|
useDynamicWaas.configWaasWalletConnector({
|
|
126
124
|
apiBaseUrl: apiBaseUrl !== null && apiBaseUrl !== void 0 ? apiBaseUrl : apiUrl.DEFAULT_WAAS_API_URL,
|
|
127
|
-
authToken,
|
|
128
125
|
environmentId,
|
|
129
126
|
getMfaToken,
|
|
130
127
|
getSignedSessionId,
|
|
@@ -25,7 +25,6 @@ import '@dynamic-labs-sdk/client/core';
|
|
|
25
25
|
import '../../../client/client.js';
|
|
26
26
|
import '@dynamic-labs-sdk/client';
|
|
27
27
|
import '../../../config/ApiEndpoint.js';
|
|
28
|
-
import { getMinAuthToken } from '../../../client/extension/functions/getMinAuthToken/getMinAuthToken.js';
|
|
29
28
|
import '@dynamic-labs/locale';
|
|
30
29
|
import { useApiBaseUrl } from '../../../store/state/dynamicContextProps/dynamicContextProps.js';
|
|
31
30
|
import '../../../store/state/primaryWalletId/primaryWalletId.js';
|
|
@@ -105,7 +104,6 @@ import { useClientSessionKeys } from '../useClientSessionKeys/useClientSessionKe
|
|
|
105
104
|
|
|
106
105
|
const useSetWalletConnectorFetchers = (walletOptions, environmentId, projectSettings) => {
|
|
107
106
|
const apiBaseUrl = useApiBaseUrl();
|
|
108
|
-
const authToken = getMinAuthToken();
|
|
109
107
|
const { registerEmbeddedWalletSessionKey, removeSessionKey } = useEmbeddedWalletSessionKeys({ environmentId, projectSettings });
|
|
110
108
|
const { getSignedSessionId } = useClientSessionKeys();
|
|
111
109
|
const getMfaToken = useGetMfaToken();
|
|
@@ -120,7 +118,6 @@ const useSetWalletConnectorFetchers = (walletOptions, environmentId, projectSett
|
|
|
120
118
|
else if (isDynamicWaasConnector(walletOption.walletConnector)) {
|
|
121
119
|
configWaasWalletConnector({
|
|
122
120
|
apiBaseUrl: apiBaseUrl !== null && apiBaseUrl !== void 0 ? apiBaseUrl : DEFAULT_WAAS_API_URL,
|
|
123
|
-
authToken,
|
|
124
121
|
environmentId,
|
|
125
122
|
getMfaToken,
|
|
126
123
|
getSignedSessionId,
|
|
@@ -226,6 +226,7 @@ const useSocialAuth = ({ onSettled, onError, onFarcasterUrl, }) => {
|
|
|
226
226
|
if (authMode === 'signin') {
|
|
227
227
|
if (provider === sdkApiCore.ProviderEnum.Telegram && telegramAuthToken) {
|
|
228
228
|
const apiCall = () => oauth.telegramSignIn(environmentId, {
|
|
229
|
+
captchaToken,
|
|
229
230
|
forceCreateUser,
|
|
230
231
|
sessionPublicKey,
|
|
231
232
|
telegramAuthToken,
|
|
@@ -234,6 +235,7 @@ const useSocialAuth = ({ onSettled, onError, onFarcasterUrl, }) => {
|
|
|
234
235
|
}
|
|
235
236
|
else if (provider === sdkApiCore.ProviderEnum.Telegram) {
|
|
236
237
|
const apiCall = () => oauth.telegramSignIn(environmentId, {
|
|
238
|
+
captchaToken,
|
|
237
239
|
code: authCode,
|
|
238
240
|
sessionPublicKey,
|
|
239
241
|
state,
|
|
@@ -255,6 +257,7 @@ const useSocialAuth = ({ onSettled, onError, onFarcasterUrl, }) => {
|
|
|
255
257
|
else {
|
|
256
258
|
if (provider === sdkApiCore.ProviderEnum.Telegram) {
|
|
257
259
|
const apiCall = () => oauth.telegramVerify(environmentId, {
|
|
260
|
+
captchaToken,
|
|
258
261
|
code: authCode,
|
|
259
262
|
state,
|
|
260
263
|
});
|
|
@@ -222,6 +222,7 @@ const useSocialAuth = ({ onSettled, onError, onFarcasterUrl, }) => {
|
|
|
222
222
|
if (authMode === 'signin') {
|
|
223
223
|
if (provider === ProviderEnum.Telegram && telegramAuthToken) {
|
|
224
224
|
const apiCall = () => telegramSignIn(environmentId, {
|
|
225
|
+
captchaToken,
|
|
225
226
|
forceCreateUser,
|
|
226
227
|
sessionPublicKey,
|
|
227
228
|
telegramAuthToken,
|
|
@@ -230,6 +231,7 @@ const useSocialAuth = ({ onSettled, onError, onFarcasterUrl, }) => {
|
|
|
230
231
|
}
|
|
231
232
|
else if (provider === ProviderEnum.Telegram) {
|
|
232
233
|
const apiCall = () => telegramSignIn(environmentId, {
|
|
234
|
+
captchaToken,
|
|
233
235
|
code: authCode,
|
|
234
236
|
sessionPublicKey,
|
|
235
237
|
state,
|
|
@@ -251,6 +253,7 @@ const useSocialAuth = ({ onSettled, onError, onFarcasterUrl, }) => {
|
|
|
251
253
|
else {
|
|
252
254
|
if (provider === ProviderEnum.Telegram) {
|
|
253
255
|
const apiCall = () => telegramVerify(environmentId, {
|
|
256
|
+
captchaToken,
|
|
254
257
|
code: authCode,
|
|
255
258
|
state,
|
|
256
259
|
});
|
|
@@ -32,7 +32,7 @@ require('../../../store/state/primaryWalletId/primaryWalletId.cjs');
|
|
|
32
32
|
require('../../../store/state/connectedWalletsInfo/connectedWalletsInfo.cjs');
|
|
33
33
|
require('../../../context/DynamicContext/DynamicContext.cjs');
|
|
34
34
|
require('../../../store/state/loadingAndLifecycle/loadingAndLifecycle.cjs');
|
|
35
|
-
require('../../../context/CaptchaContext/CaptchaContext.cjs');
|
|
35
|
+
var CaptchaContext = require('../../../context/CaptchaContext/CaptchaContext.cjs');
|
|
36
36
|
require('../../../context/ErrorContext/ErrorContext.cjs');
|
|
37
37
|
require('../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
|
|
38
38
|
require('../../../context/AccountExistsContext/AccountExistsContext.cjs');
|
|
@@ -108,6 +108,7 @@ var useInternalDynamicContext = require('../../../context/DynamicContext/useDyna
|
|
|
108
108
|
const useTelegramLogin = () => {
|
|
109
109
|
const { sdkHasLoaded, user, projectSettings, environmentId } = useInternalDynamicContext.useInternalDynamicContext();
|
|
110
110
|
const providers = (projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.providers) || [];
|
|
111
|
+
const { getCaptchaToken } = CaptchaContext.useCaptchaContext();
|
|
111
112
|
const { completeConnection } = useSocialAuth.useSocialAuth({});
|
|
112
113
|
const getTelegramAuthTokenFromURL = () => {
|
|
113
114
|
var _a, _b;
|
|
@@ -158,6 +159,7 @@ const useTelegramLogin = () => {
|
|
|
158
159
|
}
|
|
159
160
|
yield completeConnection({
|
|
160
161
|
authMode: 'signin',
|
|
162
|
+
captchaToken: getCaptchaToken(),
|
|
161
163
|
forceCreateUser,
|
|
162
164
|
provider: sdkApiCore.ProviderEnum.Telegram,
|
|
163
165
|
state: '',
|
|
@@ -28,7 +28,7 @@ import '../../../store/state/primaryWalletId/primaryWalletId.js';
|
|
|
28
28
|
import '../../../store/state/connectedWalletsInfo/connectedWalletsInfo.js';
|
|
29
29
|
import '../../../context/DynamicContext/DynamicContext.js';
|
|
30
30
|
import '../../../store/state/loadingAndLifecycle/loadingAndLifecycle.js';
|
|
31
|
-
import '../../../context/CaptchaContext/CaptchaContext.js';
|
|
31
|
+
import { useCaptchaContext } from '../../../context/CaptchaContext/CaptchaContext.js';
|
|
32
32
|
import '../../../context/ErrorContext/ErrorContext.js';
|
|
33
33
|
import '../../../context/AccessDeniedContext/AccessDeniedContext.js';
|
|
34
34
|
import '../../../context/AccountExistsContext/AccountExistsContext.js';
|
|
@@ -104,6 +104,7 @@ import { useInternalDynamicContext } from '../../../context/DynamicContext/useDy
|
|
|
104
104
|
const useTelegramLogin = () => {
|
|
105
105
|
const { sdkHasLoaded, user, projectSettings, environmentId } = useInternalDynamicContext();
|
|
106
106
|
const providers = (projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.providers) || [];
|
|
107
|
+
const { getCaptchaToken } = useCaptchaContext();
|
|
107
108
|
const { completeConnection } = useSocialAuth({});
|
|
108
109
|
const getTelegramAuthTokenFromURL = () => {
|
|
109
110
|
var _a, _b;
|
|
@@ -154,6 +155,7 @@ const useTelegramLogin = () => {
|
|
|
154
155
|
}
|
|
155
156
|
yield completeConnection({
|
|
156
157
|
authMode: 'signin',
|
|
158
|
+
captchaToken: getCaptchaToken(),
|
|
157
159
|
forceCreateUser,
|
|
158
160
|
provider: ProviderEnum.Telegram,
|
|
159
161
|
state: '',
|
|
@@ -11,7 +11,7 @@ require('@dynamic-labs-sdk/client/core');
|
|
|
11
11
|
require('../../../client/client.cjs');
|
|
12
12
|
require('react');
|
|
13
13
|
require('../../../config/ApiEndpoint.cjs');
|
|
14
|
-
require('../../constants/values.cjs');
|
|
14
|
+
var values = require('../../constants/values.cjs');
|
|
15
15
|
require('@dynamic-labs/multi-wallet');
|
|
16
16
|
require('react-international-phone');
|
|
17
17
|
require('../../constants/colors.cjs');
|
|
@@ -28,6 +28,7 @@ require('@dynamic-labs/locale');
|
|
|
28
28
|
require('../../../store/state/dynamicContextProps/dynamicContextProps.cjs');
|
|
29
29
|
require('../../../store/state/primaryWalletId/primaryWalletId.cjs');
|
|
30
30
|
require('../../../store/state/connectedWalletsInfo/connectedWalletsInfo.cjs');
|
|
31
|
+
var getClientSessionKeys = require('../../functions/clientSessionKeys/getClientSessionKeys.cjs');
|
|
31
32
|
require('../../../events/dynamicEvents.cjs');
|
|
32
33
|
var storeTokenAndUser = require('../../../client/extension/storeTokenAndUser/storeTokenAndUser.cjs');
|
|
33
34
|
var AccessDeniedContext = require('../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
|
|
@@ -160,6 +161,12 @@ const useUserAuth = ({ authMethod, }) => {
|
|
|
160
161
|
}
|
|
161
162
|
if (isSignIn) {
|
|
162
163
|
setCallback('authSuccess');
|
|
164
|
+
const hasWaasWallets = verifiedUser.verifiedCredentials.some((vc) => vc.walletProvider === sdkApiCore.WalletProviderEnum.EmbeddedWallet &&
|
|
165
|
+
vc.walletName === 'dynamicwaas');
|
|
166
|
+
if (hasWaasWallets) {
|
|
167
|
+
// Eagerly initialize waas wallets
|
|
168
|
+
yield handleWaasInitialization(verifiedUser);
|
|
169
|
+
}
|
|
163
170
|
}
|
|
164
171
|
const walletVersion = embeddedWalletSettingVersion();
|
|
165
172
|
if (walletVersion === sdkApiCore.EmbeddedWalletVersionEnum.V1 &&
|
|
@@ -184,6 +191,50 @@ const useUserAuth = ({ authMethod, }) => {
|
|
|
184
191
|
onSettled === null || onSettled === void 0 ? void 0 : onSettled();
|
|
185
192
|
}
|
|
186
193
|
});
|
|
194
|
+
const handleWaasInitialization = (verifiedUser) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
195
|
+
const sessionSignatureResult = yield getClientSessionKeys.getClientSessionSignature({
|
|
196
|
+
sessionId: verifiedUser === null || verifiedUser === void 0 ? void 0 : verifiedUser.sessionId,
|
|
197
|
+
});
|
|
198
|
+
const dynamicWaasConnectors = walletConnectorOptions.filter((walletOption) => walletOption.walletConnector.key === 'dynamicwaas');
|
|
199
|
+
dynamicWaasConnectors.forEach((walletOption) => {
|
|
200
|
+
var _a;
|
|
201
|
+
const walletAddress = (_a = verifiedUser.verifiedCredentials.find((credential) => {
|
|
202
|
+
var _a;
|
|
203
|
+
return values.VerifiedCredentialNameToChainEnum[(_a = credential.chain) !== null && _a !== void 0 ? _a : ''] ===
|
|
204
|
+
walletOption.walletConnector.connectedChain;
|
|
205
|
+
})) === null || _a === void 0 ? void 0 : _a.address;
|
|
206
|
+
if (walletAddress) {
|
|
207
|
+
// Create the waas iframe
|
|
208
|
+
walletOption.walletConnector
|
|
209
|
+
.getWaasWalletClient()
|
|
210
|
+
.then((client) => {
|
|
211
|
+
// Restore the wallet keyshare to the iframe
|
|
212
|
+
client
|
|
213
|
+
.getWallet({
|
|
214
|
+
accountAddress: walletAddress,
|
|
215
|
+
signedSessionId: sessionSignatureResult.sessionSignature,
|
|
216
|
+
walletOperation: 'SIGN_MESSAGE',
|
|
217
|
+
})
|
|
218
|
+
.catch((error) => {
|
|
219
|
+
logger.logger.error('Error restoring wallet keyshare', {
|
|
220
|
+
error,
|
|
221
|
+
sessionId: verifiedUser.sessionId,
|
|
222
|
+
userId: verifiedUser.userId,
|
|
223
|
+
walletAddress,
|
|
224
|
+
});
|
|
225
|
+
});
|
|
226
|
+
})
|
|
227
|
+
.catch((error) => {
|
|
228
|
+
logger.logger.error('Error initializing waas wallet client', {
|
|
229
|
+
error,
|
|
230
|
+
sessionId: verifiedUser.sessionId,
|
|
231
|
+
userId: verifiedUser.userId,
|
|
232
|
+
walletAddress,
|
|
233
|
+
});
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
});
|
|
237
|
+
});
|
|
187
238
|
const handleAuthError = (error, { options = {}, onError, }) => {
|
|
188
239
|
var _a;
|
|
189
240
|
if (error instanceof client.MfaInvalidOtpError ||
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use client'
|
|
2
2
|
import { __awaiter } from '../../../../../_virtual/_tslib.js';
|
|
3
3
|
import { MfaInvalidOtpError, MfaRateLimitedError, SandboxMaximumThresholdReachedError as SandboxMaximumThresholdReachedError$1 } from '@dynamic-labs-sdk/client';
|
|
4
|
-
import { EmbeddedWalletVersionEnum, MfaBackupCodeAcknowledgement } from '@dynamic-labs/sdk-api-core';
|
|
4
|
+
import { WalletProviderEnum, EmbeddedWalletVersionEnum, MfaBackupCodeAcknowledgement } from '@dynamic-labs/sdk-api-core';
|
|
5
5
|
import { DynamicError, EmailAlreadyExistsError, CustomFieldNotUniqueError, UsernameAlreadyExistsError, TooManyEmailVerificationsError, InvalidPhoneNumberError, NoAccessError, AccountExistsError, SandboxMaximumThresholdReachedError, UserHasAccountWithEmailError, sleep } from '@dynamic-labs/utils';
|
|
6
6
|
import '@dynamic-labs-sdk/client/core';
|
|
7
7
|
import '../../../client/client.js';
|
|
8
8
|
import 'react';
|
|
9
9
|
import '../../../config/ApiEndpoint.js';
|
|
10
|
-
import '../../constants/values.js';
|
|
10
|
+
import { VerifiedCredentialNameToChainEnum } from '../../constants/values.js';
|
|
11
11
|
import '@dynamic-labs/multi-wallet';
|
|
12
12
|
import 'react-international-phone';
|
|
13
13
|
import '../../constants/colors.js';
|
|
@@ -24,6 +24,7 @@ import '@dynamic-labs/locale';
|
|
|
24
24
|
import '../../../store/state/dynamicContextProps/dynamicContextProps.js';
|
|
25
25
|
import '../../../store/state/primaryWalletId/primaryWalletId.js';
|
|
26
26
|
import '../../../store/state/connectedWalletsInfo/connectedWalletsInfo.js';
|
|
27
|
+
import { getClientSessionSignature } from '../../functions/clientSessionKeys/getClientSessionKeys.js';
|
|
27
28
|
import '../../../events/dynamicEvents.js';
|
|
28
29
|
import { storeTokenAndUser } from '../../../client/extension/storeTokenAndUser/storeTokenAndUser.js';
|
|
29
30
|
import { useAccessDeniedContext } from '../../../context/AccessDeniedContext/AccessDeniedContext.js';
|
|
@@ -156,6 +157,12 @@ const useUserAuth = ({ authMethod, }) => {
|
|
|
156
157
|
}
|
|
157
158
|
if (isSignIn) {
|
|
158
159
|
setCallback('authSuccess');
|
|
160
|
+
const hasWaasWallets = verifiedUser.verifiedCredentials.some((vc) => vc.walletProvider === WalletProviderEnum.EmbeddedWallet &&
|
|
161
|
+
vc.walletName === 'dynamicwaas');
|
|
162
|
+
if (hasWaasWallets) {
|
|
163
|
+
// Eagerly initialize waas wallets
|
|
164
|
+
yield handleWaasInitialization(verifiedUser);
|
|
165
|
+
}
|
|
159
166
|
}
|
|
160
167
|
const walletVersion = embeddedWalletSettingVersion();
|
|
161
168
|
if (walletVersion === EmbeddedWalletVersionEnum.V1 &&
|
|
@@ -180,6 +187,50 @@ const useUserAuth = ({ authMethod, }) => {
|
|
|
180
187
|
onSettled === null || onSettled === void 0 ? void 0 : onSettled();
|
|
181
188
|
}
|
|
182
189
|
});
|
|
190
|
+
const handleWaasInitialization = (verifiedUser) => __awaiter(void 0, void 0, void 0, function* () {
|
|
191
|
+
const sessionSignatureResult = yield getClientSessionSignature({
|
|
192
|
+
sessionId: verifiedUser === null || verifiedUser === void 0 ? void 0 : verifiedUser.sessionId,
|
|
193
|
+
});
|
|
194
|
+
const dynamicWaasConnectors = walletConnectorOptions.filter((walletOption) => walletOption.walletConnector.key === 'dynamicwaas');
|
|
195
|
+
dynamicWaasConnectors.forEach((walletOption) => {
|
|
196
|
+
var _a;
|
|
197
|
+
const walletAddress = (_a = verifiedUser.verifiedCredentials.find((credential) => {
|
|
198
|
+
var _a;
|
|
199
|
+
return VerifiedCredentialNameToChainEnum[(_a = credential.chain) !== null && _a !== void 0 ? _a : ''] ===
|
|
200
|
+
walletOption.walletConnector.connectedChain;
|
|
201
|
+
})) === null || _a === void 0 ? void 0 : _a.address;
|
|
202
|
+
if (walletAddress) {
|
|
203
|
+
// Create the waas iframe
|
|
204
|
+
walletOption.walletConnector
|
|
205
|
+
.getWaasWalletClient()
|
|
206
|
+
.then((client) => {
|
|
207
|
+
// Restore the wallet keyshare to the iframe
|
|
208
|
+
client
|
|
209
|
+
.getWallet({
|
|
210
|
+
accountAddress: walletAddress,
|
|
211
|
+
signedSessionId: sessionSignatureResult.sessionSignature,
|
|
212
|
+
walletOperation: 'SIGN_MESSAGE',
|
|
213
|
+
})
|
|
214
|
+
.catch((error) => {
|
|
215
|
+
logger.error('Error restoring wallet keyshare', {
|
|
216
|
+
error,
|
|
217
|
+
sessionId: verifiedUser.sessionId,
|
|
218
|
+
userId: verifiedUser.userId,
|
|
219
|
+
walletAddress,
|
|
220
|
+
});
|
|
221
|
+
});
|
|
222
|
+
})
|
|
223
|
+
.catch((error) => {
|
|
224
|
+
logger.error('Error initializing waas wallet client', {
|
|
225
|
+
error,
|
|
226
|
+
sessionId: verifiedUser.sessionId,
|
|
227
|
+
userId: verifiedUser.userId,
|
|
228
|
+
walletAddress,
|
|
229
|
+
});
|
|
230
|
+
});
|
|
231
|
+
}
|
|
232
|
+
});
|
|
233
|
+
});
|
|
183
234
|
const handleAuthError = (error, { options = {}, onError, }) => {
|
|
184
235
|
var _a;
|
|
185
236
|
if (error instanceof MfaInvalidOtpError ||
|