@dynamic-labs/sdk-react-core 2.1.0-alpha.10 → 2.1.0-alpha.11
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 +13 -0
- package/package.cjs +2 -2
- package/package.js +2 -2
- package/package.json +13 -13
- package/src/index.cjs +2 -0
- package/src/index.d.ts +1 -1
- package/src/index.js +1 -0
- package/src/lib/data/api/chains/balances.cjs +38 -0
- package/src/lib/data/api/chains/balances.d.ts +8 -0
- package/src/lib/data/api/chains/balances.js +34 -0
- package/src/lib/data/api/chains/index.d.ts +1 -0
- package/src/lib/shared/types/general.d.ts +1 -0
- package/src/lib/utils/constants/errors.cjs +2 -0
- package/src/lib/utils/constants/errors.d.ts +1 -0
- package/src/lib/utils/constants/errors.js +2 -1
- package/src/lib/utils/hooks/index.d.ts +1 -0
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.cjs +34 -3
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.d.ts +18 -9
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.js +34 -3
- package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useMPCEmbeddedWallet.cjs +5 -1
- package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useMPCEmbeddedWallet.d.ts +1 -0
- package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useMPCEmbeddedWallet.js +5 -1
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/constants.cjs +4 -0
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/constants.d.ts +2 -0
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/constants.js +3 -1
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.cjs +68 -28
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.d.ts +11 -6
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.js +70 -30
- package/src/lib/utils/hooks/useTokenBalances/index.d.ts +1 -0
- package/src/lib/utils/hooks/useTokenBalances/useTokenBalances.cjs +141 -0
- package/src/lib/utils/hooks/useTokenBalances/useTokenBalances.d.ts +12 -0
- package/src/lib/utils/hooks/useTokenBalances/useTokenBalances.js +137 -0
- package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.cjs +1 -1
- package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.js +1 -1
- package/src/lib/views/EmbeddedReveal/utils/turnkeyExport/turnkeyExport.cjs +5 -4
- package/src/lib/views/EmbeddedReveal/utils/turnkeyExport/turnkeyExport.js +5 -4
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var _tslib = require('../../../../../_virtual/_tslib.cjs');
|
|
7
|
+
var React = require('react');
|
|
8
|
+
var sdkApiCore = require('@dynamic-labs/sdk-api-core');
|
|
9
|
+
require('@dynamic-labs/wallet-connector-core');
|
|
10
|
+
require('../../../shared/logger.cjs');
|
|
11
|
+
require('@dynamic-labs/iconic');
|
|
12
|
+
require('react/jsx-runtime');
|
|
13
|
+
require('../../../context/ViewContext/ViewContext.cjs');
|
|
14
|
+
require('@dynamic-labs/wallet-book');
|
|
15
|
+
require('../../constants/colors.cjs');
|
|
16
|
+
require('../../constants/values.cjs');
|
|
17
|
+
require('../../../shared/utils/classes/storage/localStorage.cjs');
|
|
18
|
+
require('@dynamic-labs/utils');
|
|
19
|
+
require('../../../shared/consts/index.cjs');
|
|
20
|
+
require('@dynamic-labs/multi-wallet');
|
|
21
|
+
var getAuthToken = require('../../functions/getAuthToken/getAuthToken.cjs');
|
|
22
|
+
require('react-international-phone');
|
|
23
|
+
require('viem');
|
|
24
|
+
require('viem/chains');
|
|
25
|
+
require('../../../config/ApiEndpoint.cjs');
|
|
26
|
+
require('../../../locale/locale.cjs');
|
|
27
|
+
var balances = require('../../../data/api/chains/balances.cjs');
|
|
28
|
+
require('../../../context/DynamicContext/DynamicContext.cjs');
|
|
29
|
+
require('../../../events/dynamicEvents.cjs');
|
|
30
|
+
require('../../../context/CaptchaContext/CaptchaContext.cjs');
|
|
31
|
+
require('../../../context/ErrorContext/ErrorContext.cjs');
|
|
32
|
+
require('../../../context/AccessDeniedContext/AccessDeniedContext.cjs');
|
|
33
|
+
require('../../../context/AccountExistsContext/AccountExistsContext.cjs');
|
|
34
|
+
require('../../../context/UserWalletsContext/UserWalletsContext.cjs');
|
|
35
|
+
require('../../../context/VerificationContext/VerificationContext.cjs');
|
|
36
|
+
require('react-dom');
|
|
37
|
+
require('../../../context/WalletContext/WalletContext.cjs');
|
|
38
|
+
require('../../../context/ThemeContext/ThemeContext.cjs');
|
|
39
|
+
require('@dynamic-labs/types');
|
|
40
|
+
require('yup');
|
|
41
|
+
require('../../../context/MockContext/MockContext.cjs');
|
|
42
|
+
require('react-i18next');
|
|
43
|
+
require('../../../context/FieldsStateContext/FieldsStateContext.cjs');
|
|
44
|
+
require('../useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs');
|
|
45
|
+
require('../../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
46
|
+
require('@dynamic-labs/rpc-providers');
|
|
47
|
+
require('../../../components/Alert/Alert.cjs');
|
|
48
|
+
require('../../../components/ShadowDOM/ShadowDOM.cjs');
|
|
49
|
+
require('../../../components/IconButton/IconButton.cjs');
|
|
50
|
+
require('../../../components/InlineWidget/InlineWidget.cjs');
|
|
51
|
+
require('../../../components/Input/Input.cjs');
|
|
52
|
+
require('../../../components/IsBrowser/IsBrowser.cjs');
|
|
53
|
+
require('../../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
54
|
+
require('../../../components/Transition/ZoomTransition/ZoomTransition.cjs');
|
|
55
|
+
require('../../../components/Transition/SlideInUpTransition/SlideInUpTransition.cjs');
|
|
56
|
+
require('../../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
57
|
+
require('../../../components/OverlayCard/OverlayCardTarget/OverlayCardTarget.cjs');
|
|
58
|
+
require('../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.cjs');
|
|
59
|
+
require('../../../components/Popper/Popper/Popper.cjs');
|
|
60
|
+
require('../../../components/Popper/PopperContext/PopperContext.cjs');
|
|
61
|
+
require('react-focus-lock');
|
|
62
|
+
require('qrcode');
|
|
63
|
+
require('formik');
|
|
64
|
+
require('../../../views/WalletList/WalletList.cjs');
|
|
65
|
+
require('../../../context/SocialRedirectContext/SocialRedirectContext.cjs');
|
|
66
|
+
require('../../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.cjs');
|
|
67
|
+
require('@hcaptcha/react-hcaptcha');
|
|
68
|
+
require('../../../context/LoadingContext/LoadingContext.cjs');
|
|
69
|
+
require('../../../context/FooterAnimationContext/index.cjs');
|
|
70
|
+
require('../../../views/LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.cjs');
|
|
71
|
+
require('../../../context/WalletGroupContext/WalletGroupContext.cjs');
|
|
72
|
+
require('../../../context/PasskeyContext/PasskeyContext.cjs');
|
|
73
|
+
require('../../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs');
|
|
74
|
+
require('../../../widgets/DynamicWidget/context/DynamicWidgetContext.cjs');
|
|
75
|
+
require('../../../views/TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
76
|
+
require('../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
|
|
77
|
+
var useInternalDynamicContext = require('../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.cjs');
|
|
78
|
+
|
|
79
|
+
// Hook exposed to customers and used internally to fetch account balances
|
|
80
|
+
const useTokenBalances = ({ accountAddress, networkId, chainName = sdkApiCore.ChainEnum.Evm, tokenAddresses, } = {}) => {
|
|
81
|
+
const [tokenBalancesData, setTokenBalancesData] = React.useState(undefined);
|
|
82
|
+
const [isLoading, setIsLoading] = React.useState(false);
|
|
83
|
+
const [error, setError] = React.useState(undefined);
|
|
84
|
+
const { primaryWallet, environmentId, network, walletConnector } = useInternalDynamicContext.useInternalDynamicContext();
|
|
85
|
+
const requestChainName = chainName !== null && chainName !== void 0 ? chainName : walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.connectedChain;
|
|
86
|
+
const requestAccount = accountAddress !== null && accountAddress !== void 0 ? accountAddress : primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.address;
|
|
87
|
+
const requestNetwork = networkId !== null && networkId !== void 0 ? networkId : network;
|
|
88
|
+
const fetchAccountBalances = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
89
|
+
const jwt = getAuthToken.getAuthToken();
|
|
90
|
+
if (!jwt) {
|
|
91
|
+
setError('User is not logged in');
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
if (requestChainName !== sdkApiCore.ChainEnum.Evm) {
|
|
95
|
+
setError(`Chain ${requestChainName} is not supported for token balances`);
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
if (!isLoading &&
|
|
99
|
+
requestAccount &&
|
|
100
|
+
requestNetwork &&
|
|
101
|
+
Object.values(sdkApiCore.GetAccountBalancesNetworkIdEnum).includes(requestNetwork)) {
|
|
102
|
+
setIsLoading(true);
|
|
103
|
+
balances.getAccountTokenBalances({
|
|
104
|
+
accountAddress: requestAccount,
|
|
105
|
+
chainName: requestChainName,
|
|
106
|
+
environmentId,
|
|
107
|
+
networkId: Number(requestNetwork),
|
|
108
|
+
userJwt: jwt,
|
|
109
|
+
})
|
|
110
|
+
.then((response) => {
|
|
111
|
+
if (response) {
|
|
112
|
+
setTokenBalancesData(response);
|
|
113
|
+
setError(undefined);
|
|
114
|
+
}
|
|
115
|
+
})
|
|
116
|
+
.catch((e) => {
|
|
117
|
+
setError(e.message);
|
|
118
|
+
})
|
|
119
|
+
.finally(() => {
|
|
120
|
+
setIsLoading(false);
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
}), [
|
|
124
|
+
isLoading,
|
|
125
|
+
requestAccount,
|
|
126
|
+
requestNetwork,
|
|
127
|
+
requestChainName,
|
|
128
|
+
environmentId,
|
|
129
|
+
]);
|
|
130
|
+
React.useEffect(() => {
|
|
131
|
+
fetchAccountBalances();
|
|
132
|
+
}, [requestAccount, requestNetwork]);
|
|
133
|
+
let tokenBalances = tokenBalancesData;
|
|
134
|
+
if (tokenAddresses) {
|
|
135
|
+
const lowerTokenAddresses = tokenAddresses === null || tokenAddresses === void 0 ? void 0 : tokenAddresses.map((address) => address.toLowerCase());
|
|
136
|
+
tokenBalances = tokenBalancesData === null || tokenBalancesData === void 0 ? void 0 : tokenBalancesData.filter((token) => lowerTokenAddresses === null || lowerTokenAddresses === void 0 ? void 0 : lowerTokenAddresses.includes(token.address.toLowerCase()));
|
|
137
|
+
}
|
|
138
|
+
return { error, isError: Boolean(error), isLoading, tokenBalances };
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
exports.useTokenBalances = useTokenBalances;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ChainEnum, TokenBalance } from '@dynamic-labs/sdk-api-core';
|
|
2
|
+
export declare const useTokenBalances: ({ accountAddress, networkId, chainName, tokenAddresses, }?: {
|
|
3
|
+
accountAddress?: string;
|
|
4
|
+
networkId?: number;
|
|
5
|
+
chainName?: ChainEnum;
|
|
6
|
+
tokenAddresses?: string[];
|
|
7
|
+
}) => {
|
|
8
|
+
error: string | undefined;
|
|
9
|
+
isError: boolean;
|
|
10
|
+
isLoading: boolean;
|
|
11
|
+
tokenBalances: TokenBalance[] | undefined;
|
|
12
|
+
};
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import { __awaiter } from '../../../../../_virtual/_tslib.js';
|
|
3
|
+
import { useState, useCallback, useEffect } from 'react';
|
|
4
|
+
import { ChainEnum, GetAccountBalancesNetworkIdEnum } from '@dynamic-labs/sdk-api-core';
|
|
5
|
+
import '@dynamic-labs/wallet-connector-core';
|
|
6
|
+
import '../../../shared/logger.js';
|
|
7
|
+
import '@dynamic-labs/iconic';
|
|
8
|
+
import 'react/jsx-runtime';
|
|
9
|
+
import '../../../context/ViewContext/ViewContext.js';
|
|
10
|
+
import '@dynamic-labs/wallet-book';
|
|
11
|
+
import '../../constants/colors.js';
|
|
12
|
+
import '../../constants/values.js';
|
|
13
|
+
import '../../../shared/utils/classes/storage/localStorage.js';
|
|
14
|
+
import '@dynamic-labs/utils';
|
|
15
|
+
import '../../../shared/consts/index.js';
|
|
16
|
+
import '@dynamic-labs/multi-wallet';
|
|
17
|
+
import { getAuthToken } from '../../functions/getAuthToken/getAuthToken.js';
|
|
18
|
+
import 'react-international-phone';
|
|
19
|
+
import 'viem';
|
|
20
|
+
import 'viem/chains';
|
|
21
|
+
import '../../../config/ApiEndpoint.js';
|
|
22
|
+
import '../../../locale/locale.js';
|
|
23
|
+
import { getAccountTokenBalances } from '../../../data/api/chains/balances.js';
|
|
24
|
+
import '../../../context/DynamicContext/DynamicContext.js';
|
|
25
|
+
import '../../../events/dynamicEvents.js';
|
|
26
|
+
import '../../../context/CaptchaContext/CaptchaContext.js';
|
|
27
|
+
import '../../../context/ErrorContext/ErrorContext.js';
|
|
28
|
+
import '../../../context/AccessDeniedContext/AccessDeniedContext.js';
|
|
29
|
+
import '../../../context/AccountExistsContext/AccountExistsContext.js';
|
|
30
|
+
import '../../../context/UserWalletsContext/UserWalletsContext.js';
|
|
31
|
+
import '../../../context/VerificationContext/VerificationContext.js';
|
|
32
|
+
import 'react-dom';
|
|
33
|
+
import '../../../context/WalletContext/WalletContext.js';
|
|
34
|
+
import '../../../context/ThemeContext/ThemeContext.js';
|
|
35
|
+
import '@dynamic-labs/types';
|
|
36
|
+
import 'yup';
|
|
37
|
+
import '../../../context/MockContext/MockContext.js';
|
|
38
|
+
import 'react-i18next';
|
|
39
|
+
import '../../../context/FieldsStateContext/FieldsStateContext.js';
|
|
40
|
+
import '../useUserUpdateRequest/useUpdateUser/useUpdateUser.js';
|
|
41
|
+
import '../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
42
|
+
import '@dynamic-labs/rpc-providers';
|
|
43
|
+
import '../../../components/Alert/Alert.js';
|
|
44
|
+
import '../../../components/ShadowDOM/ShadowDOM.js';
|
|
45
|
+
import '../../../components/IconButton/IconButton.js';
|
|
46
|
+
import '../../../components/InlineWidget/InlineWidget.js';
|
|
47
|
+
import '../../../components/Input/Input.js';
|
|
48
|
+
import '../../../components/IsBrowser/IsBrowser.js';
|
|
49
|
+
import '../../../components/MenuList/Dropdown/Dropdown.js';
|
|
50
|
+
import '../../../components/Transition/ZoomTransition/ZoomTransition.js';
|
|
51
|
+
import '../../../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
|
|
52
|
+
import '../../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
53
|
+
import '../../../components/OverlayCard/OverlayCardTarget/OverlayCardTarget.js';
|
|
54
|
+
import '../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.js';
|
|
55
|
+
import '../../../components/Popper/Popper/Popper.js';
|
|
56
|
+
import '../../../components/Popper/PopperContext/PopperContext.js';
|
|
57
|
+
import 'react-focus-lock';
|
|
58
|
+
import 'qrcode';
|
|
59
|
+
import 'formik';
|
|
60
|
+
import '../../../views/WalletList/WalletList.js';
|
|
61
|
+
import '../../../context/SocialRedirectContext/SocialRedirectContext.js';
|
|
62
|
+
import '../../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js';
|
|
63
|
+
import '@hcaptcha/react-hcaptcha';
|
|
64
|
+
import '../../../context/LoadingContext/LoadingContext.js';
|
|
65
|
+
import '../../../context/FooterAnimationContext/index.js';
|
|
66
|
+
import '../../../views/LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.js';
|
|
67
|
+
import '../../../context/WalletGroupContext/WalletGroupContext.js';
|
|
68
|
+
import '../../../context/PasskeyContext/PasskeyContext.js';
|
|
69
|
+
import '../../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js';
|
|
70
|
+
import '../../../widgets/DynamicWidget/context/DynamicWidgetContext.js';
|
|
71
|
+
import '../../../views/TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
72
|
+
import '../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
|
|
73
|
+
import { useInternalDynamicContext } from '../../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.js';
|
|
74
|
+
|
|
75
|
+
// Hook exposed to customers and used internally to fetch account balances
|
|
76
|
+
const useTokenBalances = ({ accountAddress, networkId, chainName = ChainEnum.Evm, tokenAddresses, } = {}) => {
|
|
77
|
+
const [tokenBalancesData, setTokenBalancesData] = useState(undefined);
|
|
78
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
79
|
+
const [error, setError] = useState(undefined);
|
|
80
|
+
const { primaryWallet, environmentId, network, walletConnector } = useInternalDynamicContext();
|
|
81
|
+
const requestChainName = chainName !== null && chainName !== void 0 ? chainName : walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.connectedChain;
|
|
82
|
+
const requestAccount = accountAddress !== null && accountAddress !== void 0 ? accountAddress : primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.address;
|
|
83
|
+
const requestNetwork = networkId !== null && networkId !== void 0 ? networkId : network;
|
|
84
|
+
const fetchAccountBalances = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
85
|
+
const jwt = getAuthToken();
|
|
86
|
+
if (!jwt) {
|
|
87
|
+
setError('User is not logged in');
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
if (requestChainName !== ChainEnum.Evm) {
|
|
91
|
+
setError(`Chain ${requestChainName} is not supported for token balances`);
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
if (!isLoading &&
|
|
95
|
+
requestAccount &&
|
|
96
|
+
requestNetwork &&
|
|
97
|
+
Object.values(GetAccountBalancesNetworkIdEnum).includes(requestNetwork)) {
|
|
98
|
+
setIsLoading(true);
|
|
99
|
+
getAccountTokenBalances({
|
|
100
|
+
accountAddress: requestAccount,
|
|
101
|
+
chainName: requestChainName,
|
|
102
|
+
environmentId,
|
|
103
|
+
networkId: Number(requestNetwork),
|
|
104
|
+
userJwt: jwt,
|
|
105
|
+
})
|
|
106
|
+
.then((response) => {
|
|
107
|
+
if (response) {
|
|
108
|
+
setTokenBalancesData(response);
|
|
109
|
+
setError(undefined);
|
|
110
|
+
}
|
|
111
|
+
})
|
|
112
|
+
.catch((e) => {
|
|
113
|
+
setError(e.message);
|
|
114
|
+
})
|
|
115
|
+
.finally(() => {
|
|
116
|
+
setIsLoading(false);
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
}), [
|
|
120
|
+
isLoading,
|
|
121
|
+
requestAccount,
|
|
122
|
+
requestNetwork,
|
|
123
|
+
requestChainName,
|
|
124
|
+
environmentId,
|
|
125
|
+
]);
|
|
126
|
+
useEffect(() => {
|
|
127
|
+
fetchAccountBalances();
|
|
128
|
+
}, [requestAccount, requestNetwork]);
|
|
129
|
+
let tokenBalances = tokenBalancesData;
|
|
130
|
+
if (tokenAddresses) {
|
|
131
|
+
const lowerTokenAddresses = tokenAddresses === null || tokenAddresses === void 0 ? void 0 : tokenAddresses.map((address) => address.toLowerCase());
|
|
132
|
+
tokenBalances = tokenBalancesData === null || tokenBalancesData === void 0 ? void 0 : tokenBalancesData.filter((token) => lowerTokenAddresses === null || lowerTokenAddresses === void 0 ? void 0 : lowerTokenAddresses.includes(token.address.toLowerCase()));
|
|
133
|
+
}
|
|
134
|
+
return { error, isError: Boolean(error), isLoading, tokenBalances };
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
export { useTokenBalances };
|
|
@@ -43,6 +43,7 @@ require('../../../context/VerificationContext/VerificationContext.cjs');
|
|
|
43
43
|
require('react-dom');
|
|
44
44
|
require('../../../context/WalletContext/WalletContext.cjs');
|
|
45
45
|
var useIsTurnkeyWallet = require('../../../utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs');
|
|
46
|
+
var turnkeyExport = require('../utils/turnkeyExport/turnkeyExport.cjs');
|
|
46
47
|
var usePromise = require('../../../utils/hooks/usePromise/usePromise.cjs');
|
|
47
48
|
require('../../../context/ThemeContext/ThemeContext.cjs');
|
|
48
49
|
var useMutation = require('../../../utils/hooks/useMutation/useMutation.cjs');
|
|
@@ -88,7 +89,6 @@ require('qrcode');
|
|
|
88
89
|
require('../../WalletList/WalletList.cjs');
|
|
89
90
|
require('../../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.cjs');
|
|
90
91
|
require('@hcaptcha/react-hcaptcha');
|
|
91
|
-
var turnkeyExport = require('../utils/turnkeyExport/turnkeyExport.cjs');
|
|
92
92
|
var constants = require('../constants.cjs');
|
|
93
93
|
require('../../LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.cjs');
|
|
94
94
|
|
|
@@ -39,6 +39,7 @@ import '../../../context/VerificationContext/VerificationContext.js';
|
|
|
39
39
|
import 'react-dom';
|
|
40
40
|
import '../../../context/WalletContext/WalletContext.js';
|
|
41
41
|
import { useIsTurnkeyWallet } from '../../../utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js';
|
|
42
|
+
import { cleanupExport, exportCredential, initExport } from '../utils/turnkeyExport/turnkeyExport.js';
|
|
42
43
|
import { usePromise } from '../../../utils/hooks/usePromise/usePromise.js';
|
|
43
44
|
import '../../../context/ThemeContext/ThemeContext.js';
|
|
44
45
|
import { useMutation } from '../../../utils/hooks/useMutation/useMutation.js';
|
|
@@ -84,7 +85,6 @@ import 'qrcode';
|
|
|
84
85
|
import '../../WalletList/WalletList.js';
|
|
85
86
|
import '../../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js';
|
|
86
87
|
import '@hcaptcha/react-hcaptcha';
|
|
87
|
-
import { cleanupExport, exportCredential, initExport } from '../utils/turnkeyExport/turnkeyExport.js';
|
|
88
88
|
import { iframeContainerId, iframeElementId } from '../constants.js';
|
|
89
89
|
import '../../LoginView/sections/PhoneNumberSignInSection/PhoneNumberSignInSection.js';
|
|
90
90
|
|
|
@@ -21,18 +21,19 @@ require('../../../../shared/consts/index.cjs');
|
|
|
21
21
|
require('../../../../config/ApiEndpoint.cjs');
|
|
22
22
|
var embeddedWallets = require('../../../../data/api/embeddedWallets/embeddedWallets.cjs');
|
|
23
23
|
require('../../../../locale/locale.cjs');
|
|
24
|
+
var errors = require('../../../../utils/constants/errors.cjs');
|
|
24
25
|
|
|
25
26
|
const initExport = (_a) => _tslib.__awaiter(void 0, [_a], void 0, function* ({ iframeContainer, iframeElementId, wallet, }) {
|
|
26
27
|
var _b;
|
|
27
28
|
if (!(wallet === null || wallet === void 0 ? void 0 : wallet.connector) ||
|
|
28
29
|
!(wallet === null || wallet === void 0 ? void 0 : wallet.id) ||
|
|
29
30
|
!walletConnectorCore.isPasskeyWalletConnector(wallet === null || wallet === void 0 ? void 0 : wallet.connector)) {
|
|
30
|
-
throw new utils.DynamicError('Connector is missing. Please make sure you added EthereumWalletConnectors and/or SolanaWalletConnectors to DynamicProvider settings');
|
|
31
|
+
throw new utils.DynamicError('Connector is missing. Please make sure you added EthereumWalletConnectors and/or SolanaWalletConnectors to DynamicProvider settings', errors.INVALID_WALLET_DATA);
|
|
31
32
|
}
|
|
32
33
|
const turnkeyExportHandler = (_b = wallet.connector) === null || _b === void 0 ? void 0 : _b.getExportHandler();
|
|
33
34
|
const publicKey = yield turnkeyExportHandler.initExport(iframeContainer, iframeElementId);
|
|
34
35
|
if (!publicKey) {
|
|
35
|
-
throw new utils.DynamicError('Something went wrong');
|
|
36
|
+
throw new utils.DynamicError('Something went wrong', errors.ERROR_PROCESSING_REVEAL_REQUEST);
|
|
36
37
|
}
|
|
37
38
|
return turnkeyExportHandler;
|
|
38
39
|
});
|
|
@@ -86,7 +87,7 @@ const exportCredential = (_c) => _tslib.__awaiter(void 0, [_c], void 0, function
|
|
|
86
87
|
const turnkeyExportHandler = connector.getExportHandler();
|
|
87
88
|
const targetPublicKey = turnkeyExportHandler.publicKey;
|
|
88
89
|
if (!targetPublicKey) {
|
|
89
|
-
throw new utils.DynamicError('Must initialize export first');
|
|
90
|
+
throw new utils.DynamicError('Must initialize export first', errors.ERROR_PROCESSING_REVEAL_REQUEST);
|
|
90
91
|
}
|
|
91
92
|
// calls turnkey export api
|
|
92
93
|
let newActivity;
|
|
@@ -123,7 +124,7 @@ const exportCredential = (_c) => _tslib.__awaiter(void 0, [_c], void 0, function
|
|
|
123
124
|
exportBundle = res === null || res === void 0 ? void 0 : res.exportBundle;
|
|
124
125
|
}
|
|
125
126
|
if (!exportBundle) {
|
|
126
|
-
throw new utils.DynamicError('Invalid export response');
|
|
127
|
+
throw new utils.DynamicError('Invalid export response', errors.ERROR_PROCESSING_REVEAL_REQUEST);
|
|
127
128
|
}
|
|
128
129
|
if (address || privateKeyId) {
|
|
129
130
|
return turnkeyExportHandler.verifyExportPrivateKey(exportBundle);
|
|
@@ -17,18 +17,19 @@ import '../../../../shared/consts/index.js';
|
|
|
17
17
|
import '../../../../config/ApiEndpoint.js';
|
|
18
18
|
import { exportEmbeddedWallet } from '../../../../data/api/embeddedWallets/embeddedWallets.js';
|
|
19
19
|
import '../../../../locale/locale.js';
|
|
20
|
+
import { INVALID_WALLET_DATA, ERROR_PROCESSING_REVEAL_REQUEST } from '../../../../utils/constants/errors.js';
|
|
20
21
|
|
|
21
22
|
const initExport = (_a) => __awaiter(void 0, [_a], void 0, function* ({ iframeContainer, iframeElementId, wallet, }) {
|
|
22
23
|
var _b;
|
|
23
24
|
if (!(wallet === null || wallet === void 0 ? void 0 : wallet.connector) ||
|
|
24
25
|
!(wallet === null || wallet === void 0 ? void 0 : wallet.id) ||
|
|
25
26
|
!isPasskeyWalletConnector(wallet === null || wallet === void 0 ? void 0 : wallet.connector)) {
|
|
26
|
-
throw new DynamicError('Connector is missing. Please make sure you added EthereumWalletConnectors and/or SolanaWalletConnectors to DynamicProvider settings');
|
|
27
|
+
throw new DynamicError('Connector is missing. Please make sure you added EthereumWalletConnectors and/or SolanaWalletConnectors to DynamicProvider settings', INVALID_WALLET_DATA);
|
|
27
28
|
}
|
|
28
29
|
const turnkeyExportHandler = (_b = wallet.connector) === null || _b === void 0 ? void 0 : _b.getExportHandler();
|
|
29
30
|
const publicKey = yield turnkeyExportHandler.initExport(iframeContainer, iframeElementId);
|
|
30
31
|
if (!publicKey) {
|
|
31
|
-
throw new DynamicError('Something went wrong');
|
|
32
|
+
throw new DynamicError('Something went wrong', ERROR_PROCESSING_REVEAL_REQUEST);
|
|
32
33
|
}
|
|
33
34
|
return turnkeyExportHandler;
|
|
34
35
|
});
|
|
@@ -82,7 +83,7 @@ const exportCredential = (_c) => __awaiter(void 0, [_c], void 0, function* ({ au
|
|
|
82
83
|
const turnkeyExportHandler = connector.getExportHandler();
|
|
83
84
|
const targetPublicKey = turnkeyExportHandler.publicKey;
|
|
84
85
|
if (!targetPublicKey) {
|
|
85
|
-
throw new DynamicError('Must initialize export first');
|
|
86
|
+
throw new DynamicError('Must initialize export first', ERROR_PROCESSING_REVEAL_REQUEST);
|
|
86
87
|
}
|
|
87
88
|
// calls turnkey export api
|
|
88
89
|
let newActivity;
|
|
@@ -119,7 +120,7 @@ const exportCredential = (_c) => __awaiter(void 0, [_c], void 0, function* ({ au
|
|
|
119
120
|
exportBundle = res === null || res === void 0 ? void 0 : res.exportBundle;
|
|
120
121
|
}
|
|
121
122
|
if (!exportBundle) {
|
|
122
|
-
throw new DynamicError('Invalid export response');
|
|
123
|
+
throw new DynamicError('Invalid export response', ERROR_PROCESSING_REVEAL_REQUEST);
|
|
123
124
|
}
|
|
124
125
|
if (address || privateKeyId) {
|
|
125
126
|
return turnkeyExportHandler.verifyExportPrivateKey(exportBundle);
|