@dynamic-labs/sdk-react-core 2.1.0-alpha.1 → 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 +92 -0
- package/package.cjs +2 -2
- package/package.js +2 -2
- package/package.json +13 -14
- package/src/index.cjs +8 -2
- package/src/index.d.ts +2 -1
- package/src/index.js +4 -1
- package/src/lib/Main.cjs +7 -0
- package/src/lib/Main.js +7 -0
- package/src/lib/components/Alert/Alert.cjs +2 -2
- package/src/lib/components/Alert/Alert.js +2 -2
- package/src/lib/components/Alert/Alert.types.d.ts +1 -0
- package/src/lib/components/EmailForm/EmailForm.cjs +1 -1
- package/src/lib/components/EmailForm/EmailForm.js +1 -1
- package/src/lib/components/PhoneNumberField/PhoneNumberField.cjs +1 -1
- package/src/lib/components/PhoneNumberField/PhoneNumberField.js +1 -1
- package/src/lib/components/Portal/Portal.cjs +2 -1
- package/src/lib/components/Portal/Portal.js +2 -1
- package/src/lib/components/RadioButton/RadioButton.cjs +14 -0
- package/src/lib/components/RadioButton/RadioButton.d.ts +5 -0
- package/src/lib/components/RadioButton/RadioButton.js +10 -0
- package/src/lib/components/RadioButton/index.d.ts +1 -0
- package/src/lib/components/Tooltip/Tooltip.cjs +2 -1
- package/src/lib/components/Tooltip/Tooltip.js +2 -1
- package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.cjs +1 -1
- package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.d.ts +2 -1
- package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.js +1 -1
- package/src/lib/components/index.d.ts +1 -0
- package/src/lib/context/DynamicContext/DynamicContext.cjs +23 -7
- package/src/lib/context/DynamicContext/DynamicContext.d.ts +5 -0
- package/src/lib/context/DynamicContext/DynamicContext.js +20 -4
- package/src/lib/context/DynamicContext/hooks/useTieCallbacksToEvents/useTieCallbacksToEvents.cjs +2 -2
- package/src/lib/context/DynamicContext/hooks/useTieCallbacksToEvents/useTieCallbacksToEvents.js +2 -2
- package/src/lib/context/DynamicContext/types/index.d.ts +0 -1
- package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerCallbacks.cjs +5 -2
- package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerCallbacks.js +5 -2
- package/src/lib/context/DynamicContext/useDynamicContext/useDynamicContext.cjs +2 -1
- package/src/lib/context/DynamicContext/useDynamicContext/useDynamicContext.d.ts +1 -1
- package/src/lib/context/DynamicContext/useDynamicContext/useDynamicContext.js +2 -1
- package/src/lib/context/ErrorBoundary/ErrorBoundary.cjs +64 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundary.d.ts +3 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundary.js +60 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryBase.cjs +40 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryBase.d.ts +14 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryBase.js +36 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryContext.cjs +24 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryContext.d.ts +5 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryContext.js +18 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryExclude.cjs +17 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryExclude.d.ts +4 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryExclude.js +13 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryInclude.cjs +17 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryInclude.d.ts +4 -0
- package/src/lib/context/ErrorBoundary/ErrorBoundaryInclude.js +13 -0
- package/src/lib/context/ErrorBoundary/index.d.ts +3 -0
- package/src/lib/context/ErrorBoundary/types.d.ts +13 -0
- package/src/lib/context/ViewContext/ViewContext.cjs +2 -2
- package/src/lib/context/ViewContext/ViewContext.js +2 -2
- package/src/lib/context/ViewContext/types/index.d.ts +7 -2
- 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/data/api/user/user.cjs +16 -0
- package/src/lib/data/api/user/user.js +16 -1
- package/src/lib/data/api/wallets/wallets.cjs +26 -6
- package/src/lib/data/api/wallets/wallets.d.ts +4 -0
- package/src/lib/data/api/wallets/wallets.js +26 -7
- package/src/lib/events/dynamicEvents.d.ts +1 -1
- package/src/lib/layout/DynamicAuthLayout/Header/header.cjs +6 -0
- package/src/lib/layout/DynamicAuthLayout/Header/header.js +6 -0
- package/src/lib/locale/en/translation.cjs +45 -4
- package/src/lib/locale/en/translation.d.ts +44 -3
- package/src/lib/locale/en/translation.js +45 -4
- package/src/lib/shared/types/dynamicEventsCallbacks.d.ts +2 -1
- package/src/lib/shared/types/general.d.ts +1 -0
- package/src/lib/shared/utils/classes/storage/localStorage.cjs +2 -2
- package/src/lib/shared/utils/classes/storage/localStorage.js +2 -2
- package/src/lib/styles/index.shadow.cjs +1 -1
- package/src/lib/styles/index.shadow.js +1 -1
- package/src/lib/utils/constants/errors.cjs +2 -2
- package/src/lib/utils/constants/errors.d.ts +1 -0
- package/src/lib/utils/constants/errors.js +2 -2
- package/src/lib/utils/functions/addPasskeyIdentifierToWalletConnector/addPasskeyIdentifierToWalletConnector.cjs +14 -0
- package/src/lib/utils/functions/addPasskeyIdentifierToWalletConnector/addPasskeyIdentifierToWalletConnector.d.ts +3 -0
- package/src/lib/utils/functions/addPasskeyIdentifierToWalletConnector/addPasskeyIdentifierToWalletConnector.js +10 -0
- package/src/lib/utils/functions/addPasskeyIdentifierToWalletConnector/index.d.ts +1 -0
- package/src/lib/utils/functions/createUserProfile/createUserProfile.cjs +1 -2
- package/src/lib/utils/functions/createUserProfile/createUserProfile.js +1 -2
- package/src/lib/utils/functions/findEmbeddedWalletFromVerifiedCredentials/findEmbeddedWalletFromVerifiedCredentials.cjs +3 -4
- package/src/lib/utils/functions/findEmbeddedWalletFromVerifiedCredentials/findEmbeddedWalletFromVerifiedCredentials.d.ts +1 -1
- package/src/lib/utils/functions/findEmbeddedWalletFromVerifiedCredentials/findEmbeddedWalletFromVerifiedCredentials.js +4 -5
- package/src/lib/utils/functions/findTurnkeyWallet/findTurnkeyWallet.cjs +12 -9
- package/src/lib/utils/functions/findTurnkeyWallet/findTurnkeyWallet.d.ts +8 -2
- package/src/lib/utils/functions/findTurnkeyWallet/findTurnkeyWallet.js +13 -10
- package/src/lib/utils/functions/findTurnkeyWallet/index.d.ts +1 -1
- package/src/lib/utils/functions/getUserVerifiedCredentialType/getUserVerifiedCredentialType.cjs +5 -5
- package/src/lib/utils/functions/getUserVerifiedCredentialType/getUserVerifiedCredentialType.d.ts +3 -2
- package/src/lib/utils/functions/getUserVerifiedCredentialType/getUserVerifiedCredentialType.js +5 -5
- package/src/lib/utils/functions/hasEmbeddedWallet/hasEmbeddedWallet.cjs +7 -2
- package/src/lib/utils/functions/hasEmbeddedWallet/hasEmbeddedWallet.js +7 -2
- package/src/lib/utils/functions/index.d.ts +2 -1
- package/src/lib/utils/functions/serializeWalletConnectors/index.d.ts +1 -0
- package/src/lib/utils/functions/serializeWalletConnectors/serializeWalletConnectors.cjs +32 -0
- package/src/lib/utils/functions/serializeWalletConnectors/serializeWalletConnectors.d.ts +2 -0
- package/src/lib/utils/functions/serializeWalletConnectors/serializeWalletConnectors.js +28 -0
- package/src/lib/utils/hooks/index.d.ts +2 -0
- package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.cjs +22 -17
- package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.js +22 -17
- package/src/lib/utils/hooks/useConfirmationModal/useConfirmationModal.cjs +2 -1
- package/src/lib/utils/hooks/useConfirmationModal/useConfirmationModal.js +2 -1
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.cjs +22 -18
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.d.ts +7 -2
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.js +22 -18
- package/src/lib/utils/hooks/useDynamicLayoutData/useDynamicLayoutData.cjs +8 -0
- package/src/lib/utils/hooks/useDynamicLayoutData/useDynamicLayoutData.js +8 -0
- package/src/lib/utils/hooks/useDynamicScopes/useDynamicScopes.cjs +3 -3
- package/src/lib/utils/hooks/useDynamicScopes/useDynamicScopes.js +3 -3
- package/src/lib/utils/hooks/useElementById/useElementById.cjs +33 -18
- package/src/lib/utils/hooks/useElementById/useElementById.d.ts +3 -1
- package/src/lib/utils/hooks/useElementById/useElementById.js +33 -18
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.cjs +46 -11
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.d.ts +23 -2
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.js +46 -11
- package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.cjs +6 -6
- package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.d.ts +1 -1
- package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.js +6 -6
- package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useMPCEmbeddedWallet.cjs +13 -9
- package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useMPCEmbeddedWallet.d.ts +3 -2
- package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useMPCEmbeddedWallet.js +13 -9
- 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 +192 -50
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.d.ts +26 -8
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.js +197 -55
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.cjs +45 -18
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.d.ts +4 -1
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.js +45 -18
- package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs +2 -2
- package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js +2 -2
- package/src/lib/utils/hooks/useMergeUserAccounts/index.d.ts +1 -0
- package/src/lib/utils/hooks/useMergeUserAccounts/useMergeUserAccounts.cjs +99 -0
- package/src/lib/utils/hooks/useMergeUserAccounts/useMergeUserAccounts.d.ts +4 -0
- package/src/lib/utils/hooks/useMergeUserAccounts/useMergeUserAccounts.js +95 -0
- package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs +2 -1
- package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js +2 -1
- package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.cjs +13 -4
- package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.d.ts +10 -2
- package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.js +13 -4
- package/src/lib/utils/hooks/useSendDynamicProps/useSendDynamicProps.cjs +6 -13
- package/src/lib/utils/hooks/useSendDynamicProps/useSendDynamicProps.d.ts +1 -3
- package/src/lib/utils/hooks/useSendDynamicProps/useSendDynamicProps.js +6 -12
- 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/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +5 -0
- package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +6 -1
- package/src/lib/utils/hooks/useWalletConnectorOptions/useWalletConnectorOptions.cjs +25 -2
- package/src/lib/utils/hooks/useWalletConnectorOptions/useWalletConnectorOptions.js +25 -2
- package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +2 -4
- package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.d.ts +2 -1
- package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +2 -4
- package/src/lib/views/CollectUserDataView/UserDataFields/UserField/UserField.cjs +3 -3
- package/src/lib/views/CollectUserDataView/UserDataFields/UserField/UserField.js +3 -3
- package/src/lib/views/CollectUserDataView/useFields.cjs +1 -0
- package/src/lib/views/CollectUserDataView/useFields.d.ts +2 -0
- package/src/lib/views/CollectUserDataView/useFields.js +1 -0
- package/src/lib/views/EmailVerification/EmailVerification.cjs +38 -11
- package/src/lib/views/EmailVerification/EmailVerification.js +38 -11
- 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 +6 -5
- package/src/lib/views/EmbeddedReveal/utils/turnkeyExport/turnkeyExport.js +6 -5
- package/src/lib/views/MergeUserAccountsConflictsView/MergeUserAccountsConflictsView.cjs +126 -0
- package/src/lib/views/MergeUserAccountsConflictsView/MergeUserAccountsConflictsView.d.ts +6 -0
- package/src/lib/views/MergeUserAccountsConflictsView/MergeUserAccountsConflictsView.js +122 -0
- package/src/lib/views/MergeUserAccountsConflictsView/index.d.ts +1 -0
- package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.cjs +123 -0
- package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.d.ts +4 -0
- package/src/lib/views/MergeUserAccountsView/MergeUserAccountsView.js +119 -0
- package/src/lib/views/MergeUserAccountsView/index.d.ts +1 -0
- package/src/lib/views/MergeUserAccountsWithSameEmailView/MergeUserAccountsWithSameEmailView.cjs +3 -3
- package/src/lib/views/MergeUserAccountsWithSameEmailView/MergeUserAccountsWithSameEmailView.js +3 -3
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +2 -3
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +2 -3
- package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/EmbeddedAuthChoiceCards.cjs +2 -1
- package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/EmbeddedAuthChoiceCards.js +2 -1
- package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.cjs +9 -9
- package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.d.ts +6 -1
- package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.js +9 -9
- package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.cjs +2 -1
- package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.js +2 -1
- package/src/lib/views/Passkey/utils/{createEmbeddedWalletWithPasskey/createEmbeddedWalletWithPasskey.cjs → createEmbeddedWalletRequest/createEmbeddedWalletRequest.cjs} +18 -19
- package/src/lib/views/Passkey/utils/{createEmbeddedWalletWithPasskey/createEmbeddedWalletWithPasskey.d.ts → createEmbeddedWalletRequest/createEmbeddedWalletRequest.d.ts} +7 -3
- package/src/lib/views/Passkey/utils/{createEmbeddedWalletWithPasskey/createEmbeddedWalletWithPasskey.js → createEmbeddedWalletRequest/createEmbeddedWalletRequest.js} +18 -19
- package/src/lib/views/Passkey/utils/createEmbeddedWalletRequest/index.d.ts +1 -0
- package/src/lib/views/Passkey/utils/findPrimaryEmbeddedChain/findPrimaryEmbeddedChain.cjs +16 -0
- package/src/lib/views/Passkey/utils/findPrimaryEmbeddedChain/findPrimaryEmbeddedChain.d.ts +2 -0
- package/src/lib/views/Passkey/utils/findPrimaryEmbeddedChain/findPrimaryEmbeddedChain.js +12 -0
- package/src/lib/views/Passkey/utils/findPrimaryEmbeddedChain/index.d.ts +1 -0
- package/src/lib/views/Passkey/utils/index.d.ts +1 -2
- package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.cjs +9 -9
- package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.js +9 -9
- package/src/lib/views/WalletList/WalletList.cjs +3 -6
- package/src/lib/views/WalletList/WalletList.js +3 -6
- package/src/lib/views/WalletLockedView/WalletLockedView.cjs +2 -8
- package/src/lib/views/WalletLockedView/WalletLockedView.js +2 -8
- package/src/lib/views/viewToComponentMap.cjs +4 -0
- package/src/lib/views/viewToComponentMap.d.ts +6 -2
- package/src/lib/views/viewToComponentMap.js +4 -0
- package/src/lib/widgets/DynamicWidget/components/PromptModal/PromptModal.cjs +2 -1
- package/src/lib/widgets/DynamicWidget/components/PromptModal/PromptModal.js +2 -1
- package/src/lib/widgets/DynamicWidget/hooks/useFetchNameService/useFetchNameService.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/hooks/useFetchNameService/useFetchNameService.js +1 -1
- package/src/lib/utils/functions/isEmbeddedWalletPresent/index.d.ts +0 -1
- package/src/lib/utils/functions/isEmbeddedWalletPresent/isEmbeddedWalletPresent.cjs +0 -19
- package/src/lib/utils/functions/isEmbeddedWalletPresent/isEmbeddedWalletPresent.d.ts +0 -1
- package/src/lib/utils/functions/isEmbeddedWalletPresent/isEmbeddedWalletPresent.js +0 -15
- package/src/lib/views/Passkey/utils/createEmbeddedWalletWithPasskey/index.d.ts +0 -1
- package/src/lib/views/Passkey/utils/createPregeneratedWallet/createPregeneratedWallet.cjs +0 -65
- package/src/lib/views/Passkey/utils/createPregeneratedWallet/createPregeneratedWallet.d.ts +0 -16
- package/src/lib/views/Passkey/utils/createPregeneratedWallet/createPregeneratedWallet.js +0 -61
- package/src/lib/views/Passkey/utils/createPregeneratedWallet/index.d.ts +0 -1
|
@@ -8,6 +8,7 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
8
8
|
var React = require('react');
|
|
9
9
|
var reactI18next = require('react-i18next');
|
|
10
10
|
var iconic = require('@dynamic-labs/iconic');
|
|
11
|
+
var logger = require('@dynamic-labs/logger');
|
|
11
12
|
var utils = require('@dynamic-labs/utils');
|
|
12
13
|
var walletBook = require('@dynamic-labs/wallet-book');
|
|
13
14
|
var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
|
|
@@ -15,7 +16,7 @@ var app = require('../../app.cjs');
|
|
|
15
16
|
require('../../events/dynamicEvents.cjs');
|
|
16
17
|
var decodeJwt = require('../../shared/utils/functions/decodeJwt/decodeJwt.cjs');
|
|
17
18
|
require('@dynamic-labs/sdk-api-core');
|
|
18
|
-
var logger = require('../../shared/logger.cjs');
|
|
19
|
+
var logger$1 = require('../../shared/logger.cjs');
|
|
19
20
|
var ViewContext = require('../ViewContext/ViewContext.cjs');
|
|
20
21
|
var localStorage$1 = require('../../utils/constants/localStorage.cjs');
|
|
21
22
|
require('../../utils/constants/colors.cjs');
|
|
@@ -110,6 +111,9 @@ var FundingContext = require('../FundingContext/FundingContext.cjs');
|
|
|
110
111
|
var PhantomRedirectContext = require('../PhantomRedirectContext/PhantomRedirectContext.cjs');
|
|
111
112
|
var SendBalanceContext = require('../SendBalanceContext/SendBalanceContext.cjs');
|
|
112
113
|
var UseNetworkValidation = require('../UseNetworkValidation/UseNetworkValidation.cjs');
|
|
114
|
+
var ErrorBoundary = require('../ErrorBoundary/ErrorBoundary.cjs');
|
|
115
|
+
var ErrorBoundaryExclude = require('../ErrorBoundary/ErrorBoundaryExclude.cjs');
|
|
116
|
+
require('../ErrorBoundary/ErrorBoundaryBase.cjs');
|
|
113
117
|
var helpers = require('./helpers/helpers.cjs');
|
|
114
118
|
var useDisplayOrderState = require('./hooks/useDisplayOrderState/useDisplayOrderState.cjs');
|
|
115
119
|
var useEmailLoginState = require('./hooks/useEmailLoginState/useEmailLoginState.cjs');
|
|
@@ -146,10 +150,10 @@ const InnerDynamicContextProvider = ({ children, theme, settings: settings$1, lo
|
|
|
146
150
|
if (!environmentId) {
|
|
147
151
|
throw new utils.MissingEnvironmentIdError();
|
|
148
152
|
}
|
|
149
|
-
logger.logger.setLogLevel(logLevel);
|
|
153
|
+
logger$1.logger.setLogLevel(logLevel);
|
|
150
154
|
walletConnectorCore.logger.setLogLevel(logLevel);
|
|
151
155
|
if (environmentId === PUBLIC_PROJECT_LIVE_ENVIRONMENT_ID) {
|
|
152
|
-
logger.logger.warn(`WARNING: DYNAMIC is using a test environment ID ${environmentId}. Please sign up on https://app.dynamic.xyz/ to get your production environment ID.`);
|
|
156
|
+
logger$1.logger.warn(`WARNING: DYNAMIC is using a test environment ID ${environmentId}. Please sign up on https://app.dynamic.xyz/ to get your production environment ID.`);
|
|
153
157
|
}
|
|
154
158
|
ApiEndpoint.setBaseUrl((_b = process.env.DYNAMIC_API_BASE_URL) !== null && _b !== void 0 ? _b : apiBaseUrl);
|
|
155
159
|
localStorage.LocalStorage.setSuffix(localStorageSuffix);
|
|
@@ -167,6 +171,12 @@ const InnerDynamicContextProvider = ({ children, theme, settings: settings$1, lo
|
|
|
167
171
|
const [showBridgeWidget, setShowBridgeWidget] = React.useState(false);
|
|
168
172
|
const [isSingleWalletAccount, setIsSingleWalletAccount] = React.useState(false);
|
|
169
173
|
const [user, setUser, removeUser] = useLocalStorage.useLocalStorage(localStorage$1.AUTH_USER, EMPTY_INITIAL_USER, validators.validateAuthUser, [localStorage$1.AUTH_TOKEN]);
|
|
174
|
+
if (user) {
|
|
175
|
+
logger$1.logger.setMetaData('user', user);
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
logger$1.logger.setMetaData('user', undefined);
|
|
179
|
+
}
|
|
170
180
|
const { consumeNonce } = useFetchNonce.useFetchNonce(environmentId);
|
|
171
181
|
const [qrcodeUri, setQrcodeUri] = React.useState('');
|
|
172
182
|
const [desktopUri, setDesktopUri] = React.useState('');
|
|
@@ -218,7 +228,11 @@ const InnerDynamicContextProvider = ({ children, theme, settings: settings$1, lo
|
|
|
218
228
|
walletUiUtils,
|
|
219
229
|
});
|
|
220
230
|
const [authMode, setAuthMode] = useLocalStorage.useLocalStorage(localStorage$1.AUTH_MODE, initialAuthenticationMode);
|
|
221
|
-
const { clearPrimaryWalletId, primaryWalletId, setPrimaryWalletId } = usePrimaryWalletId.usePrimaryWalletId(
|
|
231
|
+
const { clearPrimaryWalletId, primaryWalletId, setPrimaryWalletId } = usePrimaryWalletId.usePrimaryWalletId({
|
|
232
|
+
environmentId,
|
|
233
|
+
minAuthToken: getMinAuthToken.getMinAuthToken(),
|
|
234
|
+
setUser,
|
|
235
|
+
});
|
|
222
236
|
// this is a state because it's set based on primaryWallet and bridgeChainsToConnect,
|
|
223
237
|
// which are only available further down and have would have circular dependencies
|
|
224
238
|
const [requiredWalletsConnected, setRequiredWalletsConnected] = React.useState(false);
|
|
@@ -334,6 +348,7 @@ const InnerDynamicContextProvider = ({ children, theme, settings: settings$1, lo
|
|
|
334
348
|
const { isLoading: loadingNetwork, network } = useWalletConnectorNetwork.useWalletConnectorNetwork(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector);
|
|
335
349
|
useWalletEventListeners.useWalletEventListeners({
|
|
336
350
|
authMode,
|
|
351
|
+
disconnectWallet,
|
|
337
352
|
handleLogOut,
|
|
338
353
|
multiWallet,
|
|
339
354
|
multiWalletWidgetState,
|
|
@@ -429,7 +444,6 @@ const InnerDynamicContextProvider = ({ children, theme, settings: settings$1, lo
|
|
|
429
444
|
customPrivacyPolicy,
|
|
430
445
|
customTermsOfServices,
|
|
431
446
|
debugError,
|
|
432
|
-
decodedAuthToken: decodeJwt.decodeJwt(getAuthToken.getAuthToken()),
|
|
433
447
|
decodedOnboardingOnlyToken: decodeJwt.decodeJwt(onboardingOnlyJwt),
|
|
434
448
|
defaultNumberOfWalletsToShow,
|
|
435
449
|
desktopUri,
|
|
@@ -675,12 +689,14 @@ const InnerDynamicContextProvider = ({ children, theme, settings: settings$1, lo
|
|
|
675
689
|
isAuthenticated: isAuthenticated || Boolean(primaryWallet),
|
|
676
690
|
isBridgeFlow,
|
|
677
691
|
isMultiWalletEnabled: multiWallet,
|
|
678
|
-
}), children: [networkValidationMode === 'always' && jsxRuntime.jsx(UseNetworkValidation.UseNetworkValidation, {}), jsxRuntime.jsx(CaptchaContext.CaptchaContextProvider, { children: jsxRuntime.jsx(AccountExistsContext.AccountExistsContextProvider, { children: jsxRuntime.jsx(WalletContext.WalletContextProvider, { canSync: didConnectedStateLoad, children: jsxRuntime.jsx(PasskeyContext.PasskeyContextProvider, { children: jsxRuntime.jsx(VerificationContext.VerificationProvider, { children: jsxRuntime.jsx(DynamicWidgetContext.DynamicWidgetContextProvider, { children: jsxRuntime.jsx(DynamicBridgeWidgetContext.DynamicBridgeWidgetContextProvider, { children: jsxRuntime.jsx(FundingContext.FundingContextProvider, { children: jsxRuntime.jsx(AccessDeniedContext.AccessDeniedContextProvider, { children: jsxRuntime.jsx(SendBalanceContext.SendBalanceContextProvider, { children: jsxRuntime.jsx(WalletGroupContext.WalletGroupContextProvider, { children: jsxRuntime.jsx(UserFieldEditorContext.UserFieldEditorContextProvider, { children: jsxRuntime.jsx(ConnectWithOtpProvider.ConnectWithOtpProvider, { children: jsxRuntime.jsx(PhantomRedirectContext.PhantomRedirectContextProvider, { children: jsxRuntime.jsxs(SocialRedirectContext.SocialRedirectContextProvider, { children: [jsxRuntime.jsx(app.DynamicAuthFlow, {}), jsxRuntime.jsx(Toolkit.Toolkit, {}), jsxRuntime.jsx(FundingWidget.FundingWidget, {}), jsxRuntime.jsx(SyncEmbeddedWalletAuthFlow.SyncEmbeddedWalletAuthFlow, {}), confirmationModal, children] }) }) }) }) }) }) }) }) }) }) }) }) }) }) })] }) }) }) }) }) }));
|
|
692
|
+
}), children: [networkValidationMode === 'always' && jsxRuntime.jsx(UseNetworkValidation.UseNetworkValidation, {}), jsxRuntime.jsx(CaptchaContext.CaptchaContextProvider, { children: jsxRuntime.jsx(AccountExistsContext.AccountExistsContextProvider, { children: jsxRuntime.jsx(WalletContext.WalletContextProvider, { canSync: didConnectedStateLoad, children: jsxRuntime.jsx(PasskeyContext.PasskeyContextProvider, { children: jsxRuntime.jsx(VerificationContext.VerificationProvider, { children: jsxRuntime.jsx(DynamicWidgetContext.DynamicWidgetContextProvider, { children: jsxRuntime.jsx(DynamicBridgeWidgetContext.DynamicBridgeWidgetContextProvider, { children: jsxRuntime.jsx(FundingContext.FundingContextProvider, { children: jsxRuntime.jsx(AccessDeniedContext.AccessDeniedContextProvider, { children: jsxRuntime.jsx(SendBalanceContext.SendBalanceContextProvider, { children: jsxRuntime.jsx(WalletGroupContext.WalletGroupContextProvider, { children: jsxRuntime.jsx(UserFieldEditorContext.UserFieldEditorContextProvider, { children: jsxRuntime.jsx(ConnectWithOtpProvider.ConnectWithOtpProvider, { children: jsxRuntime.jsx(PhantomRedirectContext.PhantomRedirectContextProvider, { children: jsxRuntime.jsxs(SocialRedirectContext.SocialRedirectContextProvider, { children: [jsxRuntime.jsx(app.DynamicAuthFlow, {}), jsxRuntime.jsx(Toolkit.Toolkit, {}), jsxRuntime.jsx(FundingWidget.FundingWidget, {}), jsxRuntime.jsx(SyncEmbeddedWalletAuthFlow.SyncEmbeddedWalletAuthFlow, {}), confirmationModal, jsxRuntime.jsx(ErrorBoundaryExclude.ErrorBoundaryExclude, { children: children })] }) }) }) }) }) }) }) }) }) }) }) }) }) }) })] }) }) }) }) }) }));
|
|
679
693
|
};
|
|
680
694
|
/** The context provider you need to have access too all of Dynamic's hooks */
|
|
681
695
|
const DynamicContextProvider = (props) => {
|
|
696
|
+
logger.Logger.setEnvironmentId(props.settings.environmentId);
|
|
697
|
+
logger.Logger.setEmitErrors(props.emitErrors);
|
|
682
698
|
useParentDynamicContextGuard.useParentDynamicContextGuard();
|
|
683
|
-
return (jsxRuntime.jsx(ErrorContext.ErrorContextProvider, { children: jsxRuntime.jsx(UserWalletsContext.UserWalletsProvider, { children: jsxRuntime.jsx(FieldsStateContext.FieldsStateProvider, { children: jsxRuntime.jsx(InnerDynamicContextProvider, Object.assign({}, props)) }) }) }));
|
|
699
|
+
return (jsxRuntime.jsx(ErrorBoundary.ErrorBoundary, { children: jsxRuntime.jsx(ErrorContext.ErrorContextProvider, { children: jsxRuntime.jsx(UserWalletsContext.UserWalletsProvider, { children: jsxRuntime.jsx(FieldsStateContext.FieldsStateProvider, { children: jsxRuntime.jsx(InnerDynamicContextProvider, Object.assign({}, props)) }) }) }) }));
|
|
684
700
|
};
|
|
685
701
|
|
|
686
702
|
exports.DynamicContext = DynamicContext;
|
|
@@ -82,6 +82,11 @@ export interface DynamicContextProps {
|
|
|
82
82
|
walletsFilter?: (options: WalletOption[]) => WalletOption[];
|
|
83
83
|
};
|
|
84
84
|
theme?: ThemeData | ThemeSetting;
|
|
85
|
+
/**
|
|
86
|
+
* Emit errors to Dynamic API for debugging purposes
|
|
87
|
+
* @default true
|
|
88
|
+
*/
|
|
89
|
+
emitErrors?: boolean;
|
|
85
90
|
}
|
|
86
91
|
export declare const DynamicContext: import("react").Context<IDynamicContext | undefined>;
|
|
87
92
|
/** The context provider itself we only use internally */
|
|
@@ -4,6 +4,7 @@ import { jsx, jsxs } from 'react/jsx-runtime';
|
|
|
4
4
|
import { createContext, useState, useRef, useMemo, useEffect, useCallback } from 'react';
|
|
5
5
|
import { I18nextProvider } from 'react-i18next';
|
|
6
6
|
import { getIconicSpriteUrl } from '@dynamic-labs/iconic';
|
|
7
|
+
import { Logger } from '@dynamic-labs/logger';
|
|
7
8
|
import { MissingEnvironmentIdError } from '@dynamic-labs/utils';
|
|
8
9
|
import { useWalletBookCdn, getWalletBookCdnUrl, WalletBookContextProvider } from '@dynamic-labs/wallet-book';
|
|
9
10
|
import { logger as logger$1 } from '@dynamic-labs/wallet-connector-core';
|
|
@@ -106,6 +107,9 @@ import { FundingContextProvider } from '../FundingContext/FundingContext.js';
|
|
|
106
107
|
import { PhantomRedirectContextProvider } from '../PhantomRedirectContext/PhantomRedirectContext.js';
|
|
107
108
|
import { SendBalanceContextProvider } from '../SendBalanceContext/SendBalanceContext.js';
|
|
108
109
|
import { UseNetworkValidation } from '../UseNetworkValidation/UseNetworkValidation.js';
|
|
110
|
+
import { ErrorBoundary } from '../ErrorBoundary/ErrorBoundary.js';
|
|
111
|
+
import { ErrorBoundaryExclude } from '../ErrorBoundary/ErrorBoundaryExclude.js';
|
|
112
|
+
import '../ErrorBoundary/ErrorBoundaryBase.js';
|
|
109
113
|
import { resolveNetworkValidationMode, initExpirationTime, getInitialView, getDeepLinkPreference } from './helpers/helpers.js';
|
|
110
114
|
import { useDisplayOrderState } from './hooks/useDisplayOrderState/useDisplayOrderState.js';
|
|
111
115
|
import { useEmailLoginState } from './hooks/useEmailLoginState/useEmailLoginState.js';
|
|
@@ -163,6 +167,12 @@ const InnerDynamicContextProvider = ({ children, theme, settings, locale, }) =>
|
|
|
163
167
|
const [showBridgeWidget, setShowBridgeWidget] = useState(false);
|
|
164
168
|
const [isSingleWalletAccount, setIsSingleWalletAccount] = useState(false);
|
|
165
169
|
const [user, setUser, removeUser] = useLocalStorage(AUTH_USER, EMPTY_INITIAL_USER, validateAuthUser, [AUTH_TOKEN]);
|
|
170
|
+
if (user) {
|
|
171
|
+
logger.setMetaData('user', user);
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
logger.setMetaData('user', undefined);
|
|
175
|
+
}
|
|
166
176
|
const { consumeNonce } = useFetchNonce(environmentId);
|
|
167
177
|
const [qrcodeUri, setQrcodeUri] = useState('');
|
|
168
178
|
const [desktopUri, setDesktopUri] = useState('');
|
|
@@ -214,7 +224,11 @@ const InnerDynamicContextProvider = ({ children, theme, settings, locale, }) =>
|
|
|
214
224
|
walletUiUtils,
|
|
215
225
|
});
|
|
216
226
|
const [authMode, setAuthMode] = useLocalStorage(AUTH_MODE, initialAuthenticationMode);
|
|
217
|
-
const { clearPrimaryWalletId, primaryWalletId, setPrimaryWalletId } = usePrimaryWalletId(
|
|
227
|
+
const { clearPrimaryWalletId, primaryWalletId, setPrimaryWalletId } = usePrimaryWalletId({
|
|
228
|
+
environmentId,
|
|
229
|
+
minAuthToken: getMinAuthToken(),
|
|
230
|
+
setUser,
|
|
231
|
+
});
|
|
218
232
|
// this is a state because it's set based on primaryWallet and bridgeChainsToConnect,
|
|
219
233
|
// which are only available further down and have would have circular dependencies
|
|
220
234
|
const [requiredWalletsConnected, setRequiredWalletsConnected] = useState(false);
|
|
@@ -330,6 +344,7 @@ const InnerDynamicContextProvider = ({ children, theme, settings, locale, }) =>
|
|
|
330
344
|
const { isLoading: loadingNetwork, network } = useWalletConnectorNetwork(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector);
|
|
331
345
|
useWalletEventListeners({
|
|
332
346
|
authMode,
|
|
347
|
+
disconnectWallet,
|
|
333
348
|
handleLogOut,
|
|
334
349
|
multiWallet,
|
|
335
350
|
multiWalletWidgetState,
|
|
@@ -425,7 +440,6 @@ const InnerDynamicContextProvider = ({ children, theme, settings, locale, }) =>
|
|
|
425
440
|
customPrivacyPolicy,
|
|
426
441
|
customTermsOfServices,
|
|
427
442
|
debugError,
|
|
428
|
-
decodedAuthToken: decodeJwt(getAuthToken()),
|
|
429
443
|
decodedOnboardingOnlyToken: decodeJwt(onboardingOnlyJwt),
|
|
430
444
|
defaultNumberOfWalletsToShow,
|
|
431
445
|
desktopUri,
|
|
@@ -671,12 +685,14 @@ const InnerDynamicContextProvider = ({ children, theme, settings, locale, }) =>
|
|
|
671
685
|
isAuthenticated: isAuthenticated || Boolean(primaryWallet),
|
|
672
686
|
isBridgeFlow,
|
|
673
687
|
isMultiWalletEnabled: multiWallet,
|
|
674
|
-
}), children: [networkValidationMode === 'always' && jsx(UseNetworkValidation, {}), jsx(CaptchaContextProvider, { children: jsx(AccountExistsContextProvider, { children: jsx(WalletContextProvider, { canSync: didConnectedStateLoad, children: jsx(PasskeyContextProvider, { children: jsx(VerificationProvider, { children: jsx(DynamicWidgetContextProvider, { children: jsx(DynamicBridgeWidgetContextProvider, { children: jsx(FundingContextProvider, { children: jsx(AccessDeniedContextProvider, { children: jsx(SendBalanceContextProvider, { children: jsx(WalletGroupContextProvider, { children: jsx(UserFieldEditorContextProvider, { children: jsx(ConnectWithOtpProvider, { children: jsx(PhantomRedirectContextProvider, { children: jsxs(SocialRedirectContextProvider, { children: [jsx(DynamicAuthFlow, {}), jsx(Toolkit, {}), jsx(FundingWidget, {}), jsx(SyncEmbeddedWalletAuthFlow, {}), confirmationModal, children] }) }) }) }) }) }) }) }) }) }) }) }) }) }) })] }) }) }) }) }) }));
|
|
688
|
+
}), children: [networkValidationMode === 'always' && jsx(UseNetworkValidation, {}), jsx(CaptchaContextProvider, { children: jsx(AccountExistsContextProvider, { children: jsx(WalletContextProvider, { canSync: didConnectedStateLoad, children: jsx(PasskeyContextProvider, { children: jsx(VerificationProvider, { children: jsx(DynamicWidgetContextProvider, { children: jsx(DynamicBridgeWidgetContextProvider, { children: jsx(FundingContextProvider, { children: jsx(AccessDeniedContextProvider, { children: jsx(SendBalanceContextProvider, { children: jsx(WalletGroupContextProvider, { children: jsx(UserFieldEditorContextProvider, { children: jsx(ConnectWithOtpProvider, { children: jsx(PhantomRedirectContextProvider, { children: jsxs(SocialRedirectContextProvider, { children: [jsx(DynamicAuthFlow, {}), jsx(Toolkit, {}), jsx(FundingWidget, {}), jsx(SyncEmbeddedWalletAuthFlow, {}), confirmationModal, jsx(ErrorBoundaryExclude, { children: children })] }) }) }) }) }) }) }) }) }) }) }) }) }) }) })] }) }) }) }) }) }));
|
|
675
689
|
};
|
|
676
690
|
/** The context provider you need to have access too all of Dynamic's hooks */
|
|
677
691
|
const DynamicContextProvider = (props) => {
|
|
692
|
+
Logger.setEnvironmentId(props.settings.environmentId);
|
|
693
|
+
Logger.setEmitErrors(props.emitErrors);
|
|
678
694
|
useParentDynamicContextGuard();
|
|
679
|
-
return (jsx(ErrorContextProvider, { children: jsx(UserWalletsProvider, { children: jsx(FieldsStateProvider, { children: jsx(InnerDynamicContextProvider, Object.assign({}, props)) }) }) }));
|
|
695
|
+
return (jsx(ErrorBoundary, { children: jsx(ErrorContextProvider, { children: jsx(UserWalletsProvider, { children: jsx(FieldsStateProvider, { children: jsx(InnerDynamicContextProvider, Object.assign({}, props)) }) }) }) }));
|
|
680
696
|
};
|
|
681
697
|
|
|
682
698
|
export { DynamicContext, DynamicContextProvider, InnerDynamicContextProvider, PUBLIC_PROJECT_LIVE_ENVIRONMENT_ID };
|
package/src/lib/context/DynamicContext/hooks/useTieCallbacksToEvents/useTieCallbacksToEvents.cjs
CHANGED
|
@@ -108,9 +108,9 @@ const useTieCallbacksToEvents = ({ clientCallbacks, user, setHasLoggedOut, }) =>
|
|
|
108
108
|
var _a;
|
|
109
109
|
(_a = clientCallbacks === null || clientCallbacks === void 0 ? void 0 : clientCallbacks.onWalletRemoved) === null || _a === void 0 ? void 0 : _a.call(clientCallbacks, { userWallets, wallet });
|
|
110
110
|
});
|
|
111
|
-
useDynamicEvents.useInternalDynamicEvents('embeddedWalletCreated', (_wallet, jwtVerifiedCredential) => {
|
|
111
|
+
useDynamicEvents.useInternalDynamicEvents('embeddedWalletCreated', (_wallet, jwtVerifiedCredential, authToken) => {
|
|
112
112
|
var _a;
|
|
113
|
-
(_a = clientCallbacks === null || clientCallbacks === void 0 ? void 0 : clientCallbacks.onEmbeddedWalletCreated) === null || _a === void 0 ? void 0 : _a.call(clientCallbacks, jwtVerifiedCredential);
|
|
113
|
+
(_a = clientCallbacks === null || clientCallbacks === void 0 ? void 0 : clientCallbacks.onEmbeddedWalletCreated) === null || _a === void 0 ? void 0 : _a.call(clientCallbacks, jwtVerifiedCredential, authToken);
|
|
114
114
|
});
|
|
115
115
|
useDynamicEvents.useInternalDynamicEvents('logout', () => {
|
|
116
116
|
var _a;
|
package/src/lib/context/DynamicContext/hooks/useTieCallbacksToEvents/useTieCallbacksToEvents.js
CHANGED
|
@@ -104,9 +104,9 @@ const useTieCallbacksToEvents = ({ clientCallbacks, user, setHasLoggedOut, }) =>
|
|
|
104
104
|
var _a;
|
|
105
105
|
(_a = clientCallbacks === null || clientCallbacks === void 0 ? void 0 : clientCallbacks.onWalletRemoved) === null || _a === void 0 ? void 0 : _a.call(clientCallbacks, { userWallets, wallet });
|
|
106
106
|
});
|
|
107
|
-
useInternalDynamicEvents('embeddedWalletCreated', (_wallet, jwtVerifiedCredential) => {
|
|
107
|
+
useInternalDynamicEvents('embeddedWalletCreated', (_wallet, jwtVerifiedCredential, authToken) => {
|
|
108
108
|
var _a;
|
|
109
|
-
(_a = clientCallbacks === null || clientCallbacks === void 0 ? void 0 : clientCallbacks.onEmbeddedWalletCreated) === null || _a === void 0 ? void 0 : _a.call(clientCallbacks, jwtVerifiedCredential);
|
|
109
|
+
(_a = clientCallbacks === null || clientCallbacks === void 0 ? void 0 : clientCallbacks.onEmbeddedWalletCreated) === null || _a === void 0 ? void 0 : _a.call(clientCallbacks, jwtVerifiedCredential, authToken);
|
|
110
110
|
});
|
|
111
111
|
useInternalDynamicEvents('logout', () => {
|
|
112
112
|
var _a;
|
|
@@ -78,7 +78,6 @@ export interface IDynamicContext {
|
|
|
78
78
|
customPrivacyPolicy?: ReactNode;
|
|
79
79
|
customTermsOfServices?: ReactNode;
|
|
80
80
|
debugError: boolean;
|
|
81
|
-
decodedAuthToken: Omit<DynamicJwt, 'jwt'> | undefined;
|
|
82
81
|
decodedOnboardingOnlyToken: Omit<DynamicJwt, 'jwt'> | undefined;
|
|
83
82
|
defaultNumberOfWalletsToShow: number;
|
|
84
83
|
desktopUri: string;
|
|
@@ -19,6 +19,7 @@ require('../../../shared/consts/index.cjs');
|
|
|
19
19
|
require('../../../../../_virtual/_tslib.cjs');
|
|
20
20
|
require('@dynamic-labs/multi-wallet');
|
|
21
21
|
var getAuthToken = require('../../../utils/functions/getAuthToken/getAuthToken.cjs');
|
|
22
|
+
var getMinAuthToken = require('../../../utils/functions/getMinAuthToken/getMinAuthToken.cjs');
|
|
22
23
|
require('react-international-phone');
|
|
23
24
|
require('viem');
|
|
24
25
|
require('viem/chains');
|
|
@@ -27,7 +28,7 @@ require('../../../locale/locale.cjs');
|
|
|
27
28
|
|
|
28
29
|
const useCustomerCallbacks = ({ callbacks: { onAuthSuccess, onUserProfileUpdate }, handleLogOut, primaryWallet, user, isAuthenticated, setHasLoggedOut, }) => {
|
|
29
30
|
const [callbackQueue, setCallbackQueue] = React.useState([]);
|
|
30
|
-
const handleNextCallback = React.useCallback((next, authToken, user) => {
|
|
31
|
+
const handleNextCallback = React.useCallback((next, authToken, user, minAuthToken) => {
|
|
31
32
|
switch (next === null || next === void 0 ? void 0 : next.callback) {
|
|
32
33
|
case 'authSuccess': {
|
|
33
34
|
try {
|
|
@@ -35,6 +36,7 @@ const useCustomerCallbacks = ({ callbacks: { onAuthSuccess, onUserProfileUpdate
|
|
|
35
36
|
authToken,
|
|
36
37
|
handleLogOut,
|
|
37
38
|
isAuthenticated,
|
|
39
|
+
minAuthToken,
|
|
38
40
|
primaryWallet,
|
|
39
41
|
user,
|
|
40
42
|
});
|
|
@@ -67,6 +69,7 @@ const useCustomerCallbacks = ({ callbacks: { onAuthSuccess, onUserProfileUpdate
|
|
|
67
69
|
if (!callbackQueue.length || !user)
|
|
68
70
|
return;
|
|
69
71
|
const authToken = getAuthToken.getAuthToken();
|
|
72
|
+
const minAuthToken = getMinAuthToken.getMinAuthToken();
|
|
70
73
|
// checks if user logged in with a wallet, so we need to wait
|
|
71
74
|
// for the primary wallet state to be set
|
|
72
75
|
// if user logged in with email without embedded wallet, then
|
|
@@ -74,7 +77,7 @@ const useCustomerCallbacks = ({ callbacks: { onAuthSuccess, onUserProfileUpdate
|
|
|
74
77
|
if (!authToken || (user.isAuthenticatedWithAWallet && !primaryWallet)) {
|
|
75
78
|
return;
|
|
76
79
|
}
|
|
77
|
-
handleNextCallback(callbackQueue[0], authToken, user);
|
|
80
|
+
handleNextCallback(callbackQueue[0], authToken, user, minAuthToken);
|
|
78
81
|
setCallbackQueue((prev) => {
|
|
79
82
|
const [resolvedCallback, ...updatedQueue] = prev;
|
|
80
83
|
if (resolvedCallback) {
|
|
@@ -15,6 +15,7 @@ import '../../../shared/consts/index.js';
|
|
|
15
15
|
import '../../../../../_virtual/_tslib.js';
|
|
16
16
|
import '@dynamic-labs/multi-wallet';
|
|
17
17
|
import { getAuthToken } from '../../../utils/functions/getAuthToken/getAuthToken.js';
|
|
18
|
+
import { getMinAuthToken } from '../../../utils/functions/getMinAuthToken/getMinAuthToken.js';
|
|
18
19
|
import 'react-international-phone';
|
|
19
20
|
import 'viem';
|
|
20
21
|
import 'viem/chains';
|
|
@@ -23,7 +24,7 @@ import '../../../locale/locale.js';
|
|
|
23
24
|
|
|
24
25
|
const useCustomerCallbacks = ({ callbacks: { onAuthSuccess, onUserProfileUpdate }, handleLogOut, primaryWallet, user, isAuthenticated, setHasLoggedOut, }) => {
|
|
25
26
|
const [callbackQueue, setCallbackQueue] = useState([]);
|
|
26
|
-
const handleNextCallback = useCallback((next, authToken, user) => {
|
|
27
|
+
const handleNextCallback = useCallback((next, authToken, user, minAuthToken) => {
|
|
27
28
|
switch (next === null || next === void 0 ? void 0 : next.callback) {
|
|
28
29
|
case 'authSuccess': {
|
|
29
30
|
try {
|
|
@@ -31,6 +32,7 @@ const useCustomerCallbacks = ({ callbacks: { onAuthSuccess, onUserProfileUpdate
|
|
|
31
32
|
authToken,
|
|
32
33
|
handleLogOut,
|
|
33
34
|
isAuthenticated,
|
|
35
|
+
minAuthToken,
|
|
34
36
|
primaryWallet,
|
|
35
37
|
user,
|
|
36
38
|
});
|
|
@@ -63,6 +65,7 @@ const useCustomerCallbacks = ({ callbacks: { onAuthSuccess, onUserProfileUpdate
|
|
|
63
65
|
if (!callbackQueue.length || !user)
|
|
64
66
|
return;
|
|
65
67
|
const authToken = getAuthToken();
|
|
68
|
+
const minAuthToken = getMinAuthToken();
|
|
66
69
|
// checks if user logged in with a wallet, so we need to wait
|
|
67
70
|
// for the primary wallet state to be set
|
|
68
71
|
// if user logged in with email without embedded wallet, then
|
|
@@ -70,7 +73,7 @@ const useCustomerCallbacks = ({ callbacks: { onAuthSuccess, onUserProfileUpdate
|
|
|
70
73
|
if (!authToken || (user.isAuthenticatedWithAWallet && !primaryWallet)) {
|
|
71
74
|
return;
|
|
72
75
|
}
|
|
73
|
-
handleNextCallback(callbackQueue[0], authToken, user);
|
|
76
|
+
handleNextCallback(callbackQueue[0], authToken, user, minAuthToken);
|
|
74
77
|
setCallbackQueue((prev) => {
|
|
75
78
|
const [resolvedCallback, ...updatedQueue] = prev;
|
|
76
79
|
if (resolvedCallback) {
|
|
@@ -13,7 +13,7 @@ const useDynamicContext = () => {
|
|
|
13
13
|
if (context === undefined) {
|
|
14
14
|
throw new Error('useDynamicContext must be used within a DynamicContextProvider');
|
|
15
15
|
}
|
|
16
|
-
const { accountSwitchState, authMode, authToken, awaitingSignatureState, getNameService, handleLogOut, handleUnlinkWallet, isAuthenticated, loadingNetwork, locale, loginWithEmail, multiWalletWidgetState, network, networkConfigurations, qrcodeUri, rpcProviders, sdkHasLoaded, setLogInWithEmail, setMultiWalletWidgetState, setPrimaryWallet, setShowAuthFlow, setShowDynamicUserProfile, setShowQrcodeModal, shadowDOMEnabled, showAuthFlow, showQrcodeModal, user, walletConnector, walletConnectorOptions, bridgeChains, bridgeChainsToConnect, primaryWallet, setShowBridgeWidget, sendWagmiSettings, showDynamicUserProfile, } = context;
|
|
16
|
+
const { accountSwitchState, authMode, authToken, awaitingSignatureState, getNameService, handleLogOut, handleUnlinkWallet, isAuthenticated, loadingNetwork, locale, loginWithEmail, multiWalletWidgetState, network, networkConfigurations, qrcodeUri, rpcProviders, sdkHasLoaded, setLogInWithEmail, setMultiWalletWidgetState, setPrimaryWallet, setShowAuthFlow, setShowDynamicUserProfile, setShowQrcodeModal, shadowDOMEnabled, showAuthFlow, showQrcodeModal, user, walletConnector, walletConnectorOptions, bridgeChains, bridgeChainsToConnect, primaryWallet, setShowBridgeWidget, sendWagmiSettings, showDynamicUserProfile, minAuthToken, } = context;
|
|
17
17
|
const { setAuthMode } = useOverrides.useOverrides(context);
|
|
18
18
|
return {
|
|
19
19
|
accountSwitchState,
|
|
@@ -29,6 +29,7 @@ const useDynamicContext = () => {
|
|
|
29
29
|
loadingNetwork,
|
|
30
30
|
locale,
|
|
31
31
|
loginWithEmail,
|
|
32
|
+
minAuthToken,
|
|
32
33
|
multiWalletWidgetState,
|
|
33
34
|
network,
|
|
34
35
|
networkConfigurations,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Dispatch, SetStateAction } from 'react';
|
|
2
2
|
import { IDynamicContext } from '../types';
|
|
3
|
-
export type UseDynamicContext = Pick<IDynamicContext, 'accountSwitchState' | 'authMode' | 'authToken' | 'awaitingSignatureState' | 'getNameService' | 'handleLogOut' | 'handleUnlinkWallet' | 'isAuthenticated' | 'loadingNetwork' | 'locale' | 'loginWithEmail' | 'multiWalletWidgetState' | 'network' | 'networkConfigurations' | 'primaryWallet' | 'qrcodeUri' | 'rpcProviders' | 'sdkHasLoaded' | 'setLogInWithEmail' | 'setMultiWalletWidgetState' | 'setPrimaryWallet' | 'setShowDynamicUserProfile' | 'setShowQrcodeModal' | 'shadowDOMEnabled' | 'showAuthFlow' | 'showQrcodeModal' | 'user' | 'walletConnector' | 'walletConnectorOptions' | 'bridgeChains' | 'bridgeChainsToConnect' | 'setShowBridgeWidget' | 'sendWagmiSettings' | 'showDynamicUserProfile' | 'setAuthMode'> & {
|
|
3
|
+
export type UseDynamicContext = Pick<IDynamicContext, 'accountSwitchState' | 'authMode' | 'authToken' | 'awaitingSignatureState' | 'getNameService' | 'handleLogOut' | 'handleUnlinkWallet' | 'isAuthenticated' | 'loadingNetwork' | 'locale' | 'loginWithEmail' | 'multiWalletWidgetState' | 'network' | 'networkConfigurations' | 'primaryWallet' | 'qrcodeUri' | 'rpcProviders' | 'sdkHasLoaded' | 'setLogInWithEmail' | 'setMultiWalletWidgetState' | 'setPrimaryWallet' | 'setShowDynamicUserProfile' | 'setShowQrcodeModal' | 'shadowDOMEnabled' | 'showAuthFlow' | 'showQrcodeModal' | 'user' | 'walletConnector' | 'walletConnectorOptions' | 'bridgeChains' | 'bridgeChainsToConnect' | 'setShowBridgeWidget' | 'sendWagmiSettings' | 'showDynamicUserProfile' | 'setAuthMode' | 'minAuthToken'> & {
|
|
4
4
|
setShowAuthFlow: Dispatch<SetStateAction<boolean>>;
|
|
5
5
|
};
|
|
6
6
|
export declare const useDynamicContext: () => UseDynamicContext;
|
|
@@ -9,7 +9,7 @@ const useDynamicContext = () => {
|
|
|
9
9
|
if (context === undefined) {
|
|
10
10
|
throw new Error('useDynamicContext must be used within a DynamicContextProvider');
|
|
11
11
|
}
|
|
12
|
-
const { accountSwitchState, authMode, authToken, awaitingSignatureState, getNameService, handleLogOut, handleUnlinkWallet, isAuthenticated, loadingNetwork, locale, loginWithEmail, multiWalletWidgetState, network, networkConfigurations, qrcodeUri, rpcProviders, sdkHasLoaded, setLogInWithEmail, setMultiWalletWidgetState, setPrimaryWallet, setShowAuthFlow, setShowDynamicUserProfile, setShowQrcodeModal, shadowDOMEnabled, showAuthFlow, showQrcodeModal, user, walletConnector, walletConnectorOptions, bridgeChains, bridgeChainsToConnect, primaryWallet, setShowBridgeWidget, sendWagmiSettings, showDynamicUserProfile, } = context;
|
|
12
|
+
const { accountSwitchState, authMode, authToken, awaitingSignatureState, getNameService, handleLogOut, handleUnlinkWallet, isAuthenticated, loadingNetwork, locale, loginWithEmail, multiWalletWidgetState, network, networkConfigurations, qrcodeUri, rpcProviders, sdkHasLoaded, setLogInWithEmail, setMultiWalletWidgetState, setPrimaryWallet, setShowAuthFlow, setShowDynamicUserProfile, setShowQrcodeModal, shadowDOMEnabled, showAuthFlow, showQrcodeModal, user, walletConnector, walletConnectorOptions, bridgeChains, bridgeChainsToConnect, primaryWallet, setShowBridgeWidget, sendWagmiSettings, showDynamicUserProfile, minAuthToken, } = context;
|
|
13
13
|
const { setAuthMode } = useOverrides(context);
|
|
14
14
|
return {
|
|
15
15
|
accountSwitchState,
|
|
@@ -25,6 +25,7 @@ const useDynamicContext = () => {
|
|
|
25
25
|
loadingNetwork,
|
|
26
26
|
locale,
|
|
27
27
|
loginWithEmail,
|
|
28
|
+
minAuthToken,
|
|
28
29
|
multiWalletWidgetState,
|
|
29
30
|
network,
|
|
30
31
|
networkConfigurations,
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var _tslib = require('../../../../_virtual/_tslib.cjs');
|
|
7
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
8
|
+
require('@dynamic-labs/sdk-api-core');
|
|
9
|
+
var logger = require('../../shared/logger.cjs');
|
|
10
|
+
require('@dynamic-labs/iconic');
|
|
11
|
+
require('@dynamic-labs/wallet-connector-core');
|
|
12
|
+
require('../ViewContext/ViewContext.cjs');
|
|
13
|
+
require('react');
|
|
14
|
+
require('@dynamic-labs/wallet-book');
|
|
15
|
+
require('../../utils/constants/colors.cjs');
|
|
16
|
+
require('../../utils/constants/values.cjs');
|
|
17
|
+
require('../../shared/utils/classes/storage/localStorage.cjs');
|
|
18
|
+
require('@dynamic-labs/utils');
|
|
19
|
+
require('../../shared/consts/index.cjs');
|
|
20
|
+
var ErrorBoundaryBase = require('./ErrorBoundaryBase.cjs');
|
|
21
|
+
var ErrorBoundaryContext = require('./ErrorBoundaryContext.cjs');
|
|
22
|
+
|
|
23
|
+
class ErrorBoundaryReporter extends ErrorBoundaryBase.ErrorBoundaryBase {
|
|
24
|
+
constructor(props) {
|
|
25
|
+
super(props);
|
|
26
|
+
this.state = { error: null, hasError: false };
|
|
27
|
+
}
|
|
28
|
+
componentDidCatch(error, info) {
|
|
29
|
+
var _a;
|
|
30
|
+
const { onError } = this.props;
|
|
31
|
+
if ((_a = this.context) === null || _a === void 0 ? void 0 : _a.isDynamicSdkError) {
|
|
32
|
+
onError === null || onError === void 0 ? void 0 : onError(error, info);
|
|
33
|
+
logger.logger.error(error, {
|
|
34
|
+
error: {
|
|
35
|
+
bundleStack: error.stack,
|
|
36
|
+
message: error,
|
|
37
|
+
stack: info.componentStack,
|
|
38
|
+
},
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
throw error;
|
|
42
|
+
}
|
|
43
|
+
render() {
|
|
44
|
+
const { children } = this.props;
|
|
45
|
+
const { hasError, error } = this.state;
|
|
46
|
+
if (hasError) {
|
|
47
|
+
ErrorBoundaryContext.assertErrorBoundaryContext(this.context);
|
|
48
|
+
this.context.error = error;
|
|
49
|
+
this.context.hasError = hasError;
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
return children;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
const ErrorBoundary = (_a) => {
|
|
56
|
+
var { children } = _a, props = _tslib.__rest(_a, ["children"]);
|
|
57
|
+
return (jsxRuntime.jsx(ErrorBoundaryContext.ErrorBoundaryContext.Provider, { value: {
|
|
58
|
+
error: null,
|
|
59
|
+
hasError: false,
|
|
60
|
+
isDynamicSdkError: true,
|
|
61
|
+
}, children: jsxRuntime.jsx(ErrorBoundaryReporter, Object.assign({}, props, { children: children })) }));
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
exports.ErrorBoundary = ErrorBoundary;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import { __rest } from '../../../../_virtual/_tslib.js';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
import '@dynamic-labs/sdk-api-core';
|
|
5
|
+
import { logger } from '../../shared/logger.js';
|
|
6
|
+
import '@dynamic-labs/iconic';
|
|
7
|
+
import '@dynamic-labs/wallet-connector-core';
|
|
8
|
+
import '../ViewContext/ViewContext.js';
|
|
9
|
+
import 'react';
|
|
10
|
+
import '@dynamic-labs/wallet-book';
|
|
11
|
+
import '../../utils/constants/colors.js';
|
|
12
|
+
import '../../utils/constants/values.js';
|
|
13
|
+
import '../../shared/utils/classes/storage/localStorage.js';
|
|
14
|
+
import '@dynamic-labs/utils';
|
|
15
|
+
import '../../shared/consts/index.js';
|
|
16
|
+
import { ErrorBoundaryBase } from './ErrorBoundaryBase.js';
|
|
17
|
+
import { ErrorBoundaryContext, assertErrorBoundaryContext } from './ErrorBoundaryContext.js';
|
|
18
|
+
|
|
19
|
+
class ErrorBoundaryReporter extends ErrorBoundaryBase {
|
|
20
|
+
constructor(props) {
|
|
21
|
+
super(props);
|
|
22
|
+
this.state = { error: null, hasError: false };
|
|
23
|
+
}
|
|
24
|
+
componentDidCatch(error, info) {
|
|
25
|
+
var _a;
|
|
26
|
+
const { onError } = this.props;
|
|
27
|
+
if ((_a = this.context) === null || _a === void 0 ? void 0 : _a.isDynamicSdkError) {
|
|
28
|
+
onError === null || onError === void 0 ? void 0 : onError(error, info);
|
|
29
|
+
logger.error(error, {
|
|
30
|
+
error: {
|
|
31
|
+
bundleStack: error.stack,
|
|
32
|
+
message: error,
|
|
33
|
+
stack: info.componentStack,
|
|
34
|
+
},
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
throw error;
|
|
38
|
+
}
|
|
39
|
+
render() {
|
|
40
|
+
const { children } = this.props;
|
|
41
|
+
const { hasError, error } = this.state;
|
|
42
|
+
if (hasError) {
|
|
43
|
+
assertErrorBoundaryContext(this.context);
|
|
44
|
+
this.context.error = error;
|
|
45
|
+
this.context.hasError = hasError;
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
return children;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const ErrorBoundary = (_a) => {
|
|
52
|
+
var { children } = _a, props = __rest(_a, ["children"]);
|
|
53
|
+
return (jsx(ErrorBoundaryContext.Provider, { value: {
|
|
54
|
+
error: null,
|
|
55
|
+
hasError: false,
|
|
56
|
+
isDynamicSdkError: true,
|
|
57
|
+
}, children: jsx(ErrorBoundaryReporter, Object.assign({}, props, { children: children })) }));
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export { ErrorBoundary };
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var React = require('react');
|
|
7
|
+
require('@dynamic-labs/sdk-api-core');
|
|
8
|
+
var logger = require('../../shared/logger.cjs');
|
|
9
|
+
require('@dynamic-labs/iconic');
|
|
10
|
+
require('@dynamic-labs/wallet-connector-core');
|
|
11
|
+
require('react/jsx-runtime');
|
|
12
|
+
require('../ViewContext/ViewContext.cjs');
|
|
13
|
+
require('@dynamic-labs/wallet-book');
|
|
14
|
+
require('../../utils/constants/colors.cjs');
|
|
15
|
+
require('../../utils/constants/values.cjs');
|
|
16
|
+
require('../../shared/utils/classes/storage/localStorage.cjs');
|
|
17
|
+
require('@dynamic-labs/utils');
|
|
18
|
+
require('../../shared/consts/index.cjs');
|
|
19
|
+
var ErrorContainer = require('../../components/ErrorContainer/ErrorContainer.cjs');
|
|
20
|
+
var ErrorBoundaryContext = require('./ErrorBoundaryContext.cjs');
|
|
21
|
+
|
|
22
|
+
class ErrorBoundaryBase extends React.Component {
|
|
23
|
+
static getDerivedStateFromError(error) {
|
|
24
|
+
return { error, hasError: true };
|
|
25
|
+
}
|
|
26
|
+
renderOrError(children, { isDynamicSdkError }) {
|
|
27
|
+
try {
|
|
28
|
+
ErrorBoundaryContext.assertErrorBoundaryContext(this.context);
|
|
29
|
+
this.context.isDynamicSdkError = isDynamicSdkError;
|
|
30
|
+
}
|
|
31
|
+
catch (e) {
|
|
32
|
+
logger.logger.error(e);
|
|
33
|
+
return React.createElement(ErrorContainer.ErrorContainer, null, 'ErrorBoundary must be used within ErrorBoundaryContext');
|
|
34
|
+
}
|
|
35
|
+
return children;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
ErrorBoundaryBase.contextType = ErrorBoundaryContext.ErrorBoundaryContext;
|
|
39
|
+
|
|
40
|
+
exports.ErrorBoundaryBase = ErrorBoundaryBase;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Component, PropsWithChildren } from 'react';
|
|
2
|
+
import { ErrorBoundaryState } from './types';
|
|
3
|
+
import { ErrorBoundaryContext } from './ErrorBoundaryContext';
|
|
4
|
+
export declare abstract class ErrorBoundaryBase extends Component<PropsWithChildren<any>, ErrorBoundaryState> {
|
|
5
|
+
static contextType: import("react").Context<import("./types").ErrorBoundaryContextType | null>;
|
|
6
|
+
context: React.ContextType<typeof ErrorBoundaryContext>;
|
|
7
|
+
static getDerivedStateFromError(error: Error): {
|
|
8
|
+
error: Error;
|
|
9
|
+
hasError: boolean;
|
|
10
|
+
};
|
|
11
|
+
renderOrError<T>(children: T, { isDynamicSdkError }: {
|
|
12
|
+
isDynamicSdkError: boolean;
|
|
13
|
+
}): T | JSX.Element;
|
|
14
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import { Component, createElement } from 'react';
|
|
3
|
+
import '@dynamic-labs/sdk-api-core';
|
|
4
|
+
import { logger } from '../../shared/logger.js';
|
|
5
|
+
import '@dynamic-labs/iconic';
|
|
6
|
+
import '@dynamic-labs/wallet-connector-core';
|
|
7
|
+
import 'react/jsx-runtime';
|
|
8
|
+
import '../ViewContext/ViewContext.js';
|
|
9
|
+
import '@dynamic-labs/wallet-book';
|
|
10
|
+
import '../../utils/constants/colors.js';
|
|
11
|
+
import '../../utils/constants/values.js';
|
|
12
|
+
import '../../shared/utils/classes/storage/localStorage.js';
|
|
13
|
+
import '@dynamic-labs/utils';
|
|
14
|
+
import '../../shared/consts/index.js';
|
|
15
|
+
import { ErrorContainer } from '../../components/ErrorContainer/ErrorContainer.js';
|
|
16
|
+
import { ErrorBoundaryContext, assertErrorBoundaryContext } from './ErrorBoundaryContext.js';
|
|
17
|
+
|
|
18
|
+
class ErrorBoundaryBase extends Component {
|
|
19
|
+
static getDerivedStateFromError(error) {
|
|
20
|
+
return { error, hasError: true };
|
|
21
|
+
}
|
|
22
|
+
renderOrError(children, { isDynamicSdkError }) {
|
|
23
|
+
try {
|
|
24
|
+
assertErrorBoundaryContext(this.context);
|
|
25
|
+
this.context.isDynamicSdkError = isDynamicSdkError;
|
|
26
|
+
}
|
|
27
|
+
catch (e) {
|
|
28
|
+
logger.error(e);
|
|
29
|
+
return createElement(ErrorContainer, null, 'ErrorBoundary must be used within ErrorBoundaryContext');
|
|
30
|
+
}
|
|
31
|
+
return children;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
ErrorBoundaryBase.contextType = ErrorBoundaryContext;
|
|
35
|
+
|
|
36
|
+
export { ErrorBoundaryBase };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var React = require('react');
|
|
7
|
+
|
|
8
|
+
/* eslint-disable prefer-arrow/prefer-arrow-functions */
|
|
9
|
+
const ERROR_BOUNDARY_CONTEXT_NOT_FOUND = 'ERROR_BOUNDARY_CONTEXT_NOT_FOUND';
|
|
10
|
+
const ErrorBoundaryContext = React.createContext(null);
|
|
11
|
+
function assertErrorBoundaryContext(value) {
|
|
12
|
+
if (value === null ||
|
|
13
|
+
typeof value.hasError !== 'boolean' ||
|
|
14
|
+
typeof value.error !== 'object' ||
|
|
15
|
+
typeof value.isDynamicSdkError !== 'boolean') {
|
|
16
|
+
const error = new Error('ErrorBoundaryContext not found');
|
|
17
|
+
error.cause = ERROR_BOUNDARY_CONTEXT_NOT_FOUND;
|
|
18
|
+
throw error;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
exports.ERROR_BOUNDARY_CONTEXT_NOT_FOUND = ERROR_BOUNDARY_CONTEXT_NOT_FOUND;
|
|
23
|
+
exports.ErrorBoundaryContext = ErrorBoundaryContext;
|
|
24
|
+
exports.assertErrorBoundaryContext = assertErrorBoundaryContext;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { ErrorBoundaryContextType } from './types';
|
|
3
|
+
export declare const ERROR_BOUNDARY_CONTEXT_NOT_FOUND = "ERROR_BOUNDARY_CONTEXT_NOT_FOUND";
|
|
4
|
+
export declare const ErrorBoundaryContext: import("react").Context<ErrorBoundaryContextType | null>;
|
|
5
|
+
export declare function assertErrorBoundaryContext(value: any): asserts value is ErrorBoundaryContextType;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import { createContext } from 'react';
|
|
3
|
+
|
|
4
|
+
/* eslint-disable prefer-arrow/prefer-arrow-functions */
|
|
5
|
+
const ERROR_BOUNDARY_CONTEXT_NOT_FOUND = 'ERROR_BOUNDARY_CONTEXT_NOT_FOUND';
|
|
6
|
+
const ErrorBoundaryContext = createContext(null);
|
|
7
|
+
function assertErrorBoundaryContext(value) {
|
|
8
|
+
if (value === null ||
|
|
9
|
+
typeof value.hasError !== 'boolean' ||
|
|
10
|
+
typeof value.error !== 'object' ||
|
|
11
|
+
typeof value.isDynamicSdkError !== 'boolean') {
|
|
12
|
+
const error = new Error('ErrorBoundaryContext not found');
|
|
13
|
+
error.cause = ERROR_BOUNDARY_CONTEXT_NOT_FOUND;
|
|
14
|
+
throw error;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { ERROR_BOUNDARY_CONTEXT_NOT_FOUND, ErrorBoundaryContext, assertErrorBoundaryContext };
|