@dynamic-labs/sdk-react-core 0.16.11 → 0.16.12-viem.1
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 +9 -0
- package/package.cjs +2 -2
- package/package.js +2 -2
- package/package.json +5 -5
- package/src/index.cjs +1 -1
- package/src/index.js +1 -1
- package/src/lib/Main.cjs +1 -1
- package/src/lib/Main.js +1 -1
- package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.cjs +1 -1
- package/src/lib/components/Accordion/components/AccordionItem/AccordionItem.js +1 -1
- package/src/lib/components/AnimatePresence/AnimatePresence.cjs +1 -1
- package/src/lib/components/AnimatePresence/AnimatePresence.js +1 -1
- package/src/lib/components/AnimatePresence/animations/VerticalDrawerAnimation/VerticalDrawerAnimation.cjs +1 -1
- package/src/lib/components/AnimatePresence/animations/VerticalDrawerAnimation/VerticalDrawerAnimation.js +1 -1
- package/src/lib/components/Divider/Divider.cjs +1 -1
- package/src/lib/components/Divider/Divider.js +1 -1
- package/src/lib/components/NetworkPicker/components/ActionList/ActionList.cjs +1 -1
- package/src/lib/components/NetworkPicker/components/ActionList/ActionList.js +1 -1
- package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.cjs +1 -1
- package/src/lib/components/NetworkPicker/components/EvmNetworkControl/EvmNetworkControl.js +1 -1
- package/src/lib/components/NetworkPicker/components/Network/Network.cjs +1 -1
- package/src/lib/components/NetworkPicker/components/Network/Network.js +1 -1
- package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.cjs +2 -2
- package/src/lib/components/NetworkPicker/components/NonNetworkSwitchingSupportedControl/NonNetworkSwitchingSupportedControl.js +2 -2
- package/src/lib/components/OTPVerificationView/OTPVerificationView.cjs +1 -1
- package/src/lib/components/OTPVerificationView/OTPVerificationView.js +1 -1
- package/src/lib/components/Tooltip/Tooltip.cjs +1 -1
- package/src/lib/components/Tooltip/Tooltip.js +1 -1
- package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.cjs +1 -1
- package/src/lib/components/UserProfile/parts/UserProfileField/UserProfileField.js +1 -1
- package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.cjs +1 -1
- package/src/lib/components/UserProfile/parts/UserProfileSection/UserProfileSection.js +1 -1
- package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.cjs +1 -1
- package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.js +1 -1
- package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.cjs +1 -1
- package/src/lib/context/DynamicContext/useCustomerCallbacks/useCustomerAuthFlowCallbacks.js +1 -1
- package/src/lib/context/QrCodeContext/QrCodeContext.cjs +1 -1
- package/src/lib/context/QrCodeContext/QrCodeContext.js +1 -1
- package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.cjs +1 -1
- package/src/lib/layout/DynamicAuthLayout/DynamicAuthLayout.js +1 -1
- package/src/lib/layout/DynamicAuthLayout/Footer/Footer.cjs +1 -1
- package/src/lib/layout/DynamicAuthLayout/Footer/Footer.js +1 -1
- package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/Item/Item.cjs +1 -1
- package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/Item/Item.js +1 -1
- package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.cjs +1 -1
- package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/WalletExtensionOrAppContinueButton/WalletExtensionOrAppContinueButton.js +1 -1
- package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/WalletListFooterContent.cjs +1 -1
- package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletListFooterContent/WalletListFooterContent.js +1 -1
- package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletMoreInfoContent/WalletMoreInfoContent.cjs +1 -1
- package/src/lib/layout/DynamicAuthLayout/FooterContent/WalletMoreInfoContent/WalletMoreInfoContent.js +1 -1
- package/src/lib/layout/DynamicAuthLayout/Header/header.cjs +1 -1
- package/src/lib/layout/DynamicAuthLayout/Header/header.js +1 -1
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +2 -2
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +2 -2
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.types.d.ts +3 -3
- package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs +25 -13
- package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.js +25 -13
- package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.types.d.ts +4 -5
- package/src/lib/shared/types/index.d.ts +9 -0
- package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +3 -3
- package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +3 -3
- package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.cjs +1 -1
- package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.js +1 -1
- package/src/lib/views/CollectUserDataView/CollectUserDataView.cjs +1 -1
- package/src/lib/views/CollectUserDataView/CollectUserDataView.js +1 -1
- package/src/lib/views/CollectUserDataView/UserDataFields/index.cjs +1 -1
- package/src/lib/views/CollectUserDataView/UserDataFields/index.js +1 -1
- package/src/lib/views/CollectUserDataView/UserDataForm/UserDataForm.cjs +1 -1
- package/src/lib/views/CollectUserDataView/UserDataForm/UserDataForm.js +1 -1
- package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.cjs +1 -1
- package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.js +1 -1
- package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.cjs +1 -1
- package/src/lib/views/EmailConfirmationWaitingView/EmailConfirmationWaitingView.js +1 -1
- package/src/lib/views/EmailUpdate/EmailUpdate.cjs +1 -1
- package/src/lib/views/EmailUpdate/EmailUpdate.js +1 -1
- package/src/lib/views/EmailVerification/EmailVerification.cjs +1 -1
- package/src/lib/views/EmailVerification/EmailVerification.js +1 -1
- package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.cjs +1 -1
- package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.js +1 -1
- package/src/lib/views/LoginWithEmailView/components/ListItemButton/ListItemButton.cjs +1 -1
- package/src/lib/views/LoginWithEmailView/components/ListItemButton/ListItemButton.js +1 -1
- package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.cjs +1 -1
- package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.js +1 -1
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +1 -1
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +1 -1
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +1 -1
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +1 -1
- package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.cjs +1 -1
- package/src/lib/views/NoQrNotInstalledView/NoQrNotInstalledView.js +1 -1
- package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.cjs +1 -1
- package/src/lib/views/NoQrNotInstalledView/WalletHelpLink.js +1 -1
- package/src/lib/views/PendingConnectView/PendingConnectView.cjs +1 -1
- package/src/lib/views/PendingConnectView/PendingConnectView.js +1 -1
- package/src/lib/views/PendingSignatureView/PendingSignatureView.cjs +1 -1
- package/src/lib/views/PendingSignatureView/PendingSignatureView.js +1 -1
- package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.cjs +1 -1
- package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.js +1 -1
- package/src/lib/views/QrCodeView/QrCodeView.cjs +1 -1
- package/src/lib/views/QrCodeView/QrCodeView.js +1 -1
- package/src/lib/views/WalletList/SearchInstead/SearchInstead.cjs +1 -1
- package/src/lib/views/WalletList/SearchInstead/SearchInstead.js +1 -1
- package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +1 -1
- package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +1 -1
- package/src/lib/views/WalletNoAccess/WalletNoAccess.cjs +1 -1
- package/src/lib/views/WalletNoAccess/WalletNoAccess.js +1 -1
- package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.cjs +1 -1
- package/src/lib/views/WalletSignSpinnerView/WalletSignSpinnerView.js +1 -1
- package/src/lib/views/WalletUsedView/WalletUsedView.cjs +1 -1
- package/src/lib/views/WalletUsedView/WalletUsedView.js +1 -1
- package/src/lib/widgets/DynamicWidget/DynamicWidget.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/DynamicWidget.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/AccountControl/AccountControl.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/Balance/Balance.cjs +3 -3
- package/src/lib/widgets/DynamicWidget/components/Balance/Balance.js +3 -3
- package/src/lib/widgets/DynamicWidget/components/DefaultPendingSignModalContent/DefaultPendingSignModalContent.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DefaultPendingSignModalContent/DefaultPendingSignModalContent.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DotsMenu/DotsMenu.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DotsMenuWrapper/DotsMenuWrapper.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DotsMenuWrapper/DotsMenuWrapper.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetSwitcher/DynamicWidgetSwitcher.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetSwitcher/DynamicWidgetSwitcher.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetVariants/variants/DynamicWidgetModal/DynamicWidgetModal.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/EmailConnectorPendingSignModalContent/EmailConnectorPendingSignModalContent.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/SingleWalletButtons/SingleWalletButtons.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.js +1 -1
- package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/context/DynamicWidgetContext.js +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/DetectedKnownSecondaryWalletModal/DetectedKnownSecondaryWalletModal.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/DetectedKnownSecondaryWalletModal/DetectedKnownSecondaryWalletModal.js +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/DetectedNewWalletModal/DetectedNewWalletModal.js +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/PendingAccountSwitchModal.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/PendingAccountSwitchModal.js +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/PrimaryNotConnectedModal/PrimaryNotConnectedModal.js +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.js +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/UnlinkWalletPopUp/UnlinkWalletPopUp.js +1 -1
- package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.js +1 -1
- package/src/lib/widgets/DynamicWidget/views/IndexView/IndexView.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/views/IndexView/IndexView.js +1 -1
- package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/views/ProfileView/ProfileView.js +1 -1
|
@@ -20,7 +20,7 @@ import '../../../components/Transition/SlideInUpTransition/SlideInUpTransition.j
|
|
|
20
20
|
import '../../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
21
21
|
import '../../../config/ApiEndpoint.js';
|
|
22
22
|
import '../../../context/ErrorContext/ErrorContext.js';
|
|
23
|
-
import '
|
|
23
|
+
import '../../../modals/TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
24
24
|
import '../../../context/MockContext/MockContext.js';
|
|
25
25
|
import '../../../context/CaptchaContext/CaptchaContext.js';
|
|
26
26
|
import '../../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
|
|
@@ -23,7 +23,7 @@ var Portal = require('../../components/Portal/Portal.cjs');
|
|
|
23
23
|
require('react-dom');
|
|
24
24
|
require('../../config/ApiEndpoint.cjs');
|
|
25
25
|
require('../../context/ErrorContext/ErrorContext.cjs');
|
|
26
|
-
require('
|
|
26
|
+
require('../TransactionConfirmationModal/TransactionConfirmationModal.cjs');
|
|
27
27
|
require('../../context/MockContext/MockContext.cjs');
|
|
28
28
|
require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
29
29
|
var useMutation = require('../../utils/hooks/useMutation/useMutation.cjs');
|
|
@@ -46,7 +46,7 @@ const SignMessageConfirmationModal = ({ appLogoUrl, appName, appOrigin, message,
|
|
|
46
46
|
didConfirmRef.current = false;
|
|
47
47
|
setShow(false);
|
|
48
48
|
}, [setShow]);
|
|
49
|
-
const { isLoading, mutate: confirm, data: signedMessage, error: signMessageError, } = useMutation.useMutation(
|
|
49
|
+
const { isLoading, mutate: confirm, data: signedMessage, error: signMessageError, } = useMutation.useMutation(handler, {
|
|
50
50
|
onSuccess: () => {
|
|
51
51
|
didConfirmRef.current = true;
|
|
52
52
|
setShow(false);
|
|
@@ -19,7 +19,7 @@ import { Portal } from '../../components/Portal/Portal.js';
|
|
|
19
19
|
import 'react-dom';
|
|
20
20
|
import '../../config/ApiEndpoint.js';
|
|
21
21
|
import '../../context/ErrorContext/ErrorContext.js';
|
|
22
|
-
import '
|
|
22
|
+
import '../TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
23
23
|
import '../../context/MockContext/MockContext.js';
|
|
24
24
|
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
25
25
|
import { useMutation } from '../../utils/hooks/useMutation/useMutation.js';
|
|
@@ -42,7 +42,7 @@ const SignMessageConfirmationModal = ({ appLogoUrl, appName, appOrigin, message,
|
|
|
42
42
|
didConfirmRef.current = false;
|
|
43
43
|
setShow(false);
|
|
44
44
|
}, [setShow]);
|
|
45
|
-
const { isLoading, mutate: confirm, data: signedMessage, error: signMessageError, } = useMutation(
|
|
45
|
+
const { isLoading, mutate: confirm, data: signedMessage, error: signMessageError, } = useMutation(handler, {
|
|
46
46
|
onSuccess: () => {
|
|
47
47
|
didConfirmRef.current = true;
|
|
48
48
|
setShow(false);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { Bytes } from '../../shared/types';
|
|
3
3
|
export type SignMessageConfirmationModalProps = {
|
|
4
4
|
appLogoUrl?: string;
|
|
5
5
|
appName?: string;
|
|
6
6
|
appOrigin: string;
|
|
7
|
-
handler: (
|
|
8
|
-
message: string |
|
|
7
|
+
handler: () => Promise<string>;
|
|
8
|
+
message: string | Bytes;
|
|
9
9
|
onReject: (error: unknown) => void;
|
|
10
10
|
onSignMessage: (signedMessage: string) => void;
|
|
11
11
|
};
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var _tslib = require('../../../../_virtual/_tslib.cjs');
|
|
6
6
|
var jsxRuntime = require('react/jsx-runtime');
|
|
7
7
|
var React = require('react');
|
|
8
|
-
var
|
|
8
|
+
var viem = require('viem');
|
|
9
9
|
var multiWallet = require('@dynamic-labs/multi-wallet');
|
|
10
10
|
var Typography = require('../../components/Typography/Typography.cjs');
|
|
11
11
|
require('@dynamic-labs/sdk-api');
|
|
@@ -27,8 +27,6 @@ var Portal = require('../../components/Portal/Portal.cjs');
|
|
|
27
27
|
require('react-dom');
|
|
28
28
|
require('../../config/ApiEndpoint.cjs');
|
|
29
29
|
require('../../context/ErrorContext/ErrorContext.cjs');
|
|
30
|
-
var useFetchCurrency = require('../../widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.cjs');
|
|
31
|
-
var transactionErrorMessage = require('./helpers/transactionErrorMessage.cjs');
|
|
32
30
|
require('../../context/MockContext/MockContext.cjs');
|
|
33
31
|
require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
34
32
|
var usePromise = require('../../utils/hooks/usePromise/usePromise.cjs');
|
|
@@ -43,9 +41,11 @@ var AppOriginTile = require('../../components/AppOriginTile/AppOriginTile.cjs');
|
|
|
43
41
|
var AnimatePresence = require('../../components/AnimatePresence/AnimatePresence.cjs');
|
|
44
42
|
var VerticalDrawerAnimation = require('../../components/AnimatePresence/animations/VerticalDrawerAnimation/VerticalDrawerAnimation.cjs');
|
|
45
43
|
var ErrorContainer = require('../../components/ErrorContainer/ErrorContainer.cjs');
|
|
44
|
+
var useFetchCurrency = require('../../widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.cjs');
|
|
45
|
+
var transactionErrorMessage = require('./helpers/transactionErrorMessage.cjs');
|
|
46
46
|
|
|
47
|
-
const digitsLimitSub = 1e8;
|
|
48
|
-
const TransactionConfirmationModal = ({ title, appOrigin, handler, onReject, onTransactionResponseSuccess, appLogoUrl, appName, transaction, buttonText = 'Send',
|
|
47
|
+
const digitsLimitSub = BigInt(1e8);
|
|
48
|
+
const TransactionConfirmationModal = ({ title, appOrigin, handler, onReject, onTransactionResponseSuccess, appLogoUrl, appName, transaction, buttonText = 'Send', }) => {
|
|
49
49
|
usePreventPageScroll.usePreventPageScroll(true);
|
|
50
50
|
const { primaryWallet } = useInternalDynamicContext.useInternalDynamicContext();
|
|
51
51
|
const didConfirmRef = React.useRef(false);
|
|
@@ -78,20 +78,22 @@ const TransactionConfirmationModal = ({ title, appOrigin, handler, onReject, onT
|
|
|
78
78
|
]);
|
|
79
79
|
const { data: effectiveValue, isLoading: isEffectiveValueLoading } = usePromise.usePromise(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
80
80
|
const val = yield value;
|
|
81
|
-
return val ?
|
|
81
|
+
return val ? BigInt(val) : undefined;
|
|
82
82
|
}));
|
|
83
83
|
const { data: effectiveGasPrice, isLoading: isEffectiveGasPriceLoading } = usePromise.usePromise(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
84
|
-
const
|
|
85
|
-
const
|
|
84
|
+
const publicClient = yield primaryWallet.connector.getWeb3Provider();
|
|
85
|
+
const gasPrice = yield publicClient.getGasPrice();
|
|
86
|
+
const estimatedGas = yield publicClient.estimateGas(Object.assign({ account: from, to,
|
|
87
|
+
value }, transaction));
|
|
86
88
|
return gasPrice && estimatedGas
|
|
87
|
-
?
|
|
89
|
+
? BigInt(gasPrice) * estimatedGas
|
|
88
90
|
: undefined;
|
|
89
91
|
}));
|
|
90
92
|
const { data: effectiveToAddress, isLoading: isEffectiveToAddressLoading } = usePromise.usePromise(() => to);
|
|
91
93
|
const { data: effectiveFromAddress, isLoading: isEffectiveFromAddressLoading, } = usePromise.usePromise(() => from);
|
|
92
94
|
const total = React.useMemo(() => {
|
|
93
95
|
if (effectiveGasPrice !== undefined && effectiveValue !== undefined) {
|
|
94
|
-
return effectiveGasPrice
|
|
96
|
+
return effectiveGasPrice + effectiveValue;
|
|
95
97
|
}
|
|
96
98
|
return effectiveValue || effectiveGasPrice;
|
|
97
99
|
}, [effectiveGasPrice, effectiveValue]);
|
|
@@ -107,14 +109,24 @@ const TransactionConfirmationModal = ({ title, appOrigin, handler, onReject, onT
|
|
|
107
109
|
const ChainIcon = getChainIcon.getChainIcon('evm');
|
|
108
110
|
const formatValue = (value, sub) => {
|
|
109
111
|
if (!sub) {
|
|
110
|
-
return
|
|
112
|
+
return viem.formatEther(value);
|
|
111
113
|
}
|
|
112
|
-
return
|
|
114
|
+
return viem.formatEther(value - (value % sub));
|
|
113
115
|
};
|
|
114
116
|
const closeButton = (jsxRuntime.jsx(IconButton.IconButton, Object.assign({ type: 'button', onClick: handleOnReject, "data-testid": 'close', disabled: isLoading }, { children: jsxRuntime.jsx(close.ReactComponent, {}) })));
|
|
115
117
|
return (jsxRuntime.jsx(Portal.Portal, Object.assign({ handleClose: handleOnReject, isShown: show, zIndex: index.authModalZIndex, withBackdrop: true, elementId: 'dynamic-send-transaction', transitionEvents: {
|
|
116
118
|
onUnmount: handleOnModalUnmount,
|
|
117
|
-
} }, { children: jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation' }, { children: [jsxRuntime.jsx(ModalHeader.ModalHeader, Object.assign({ trailing: closeButton, alignContent: 'bottom' }, { children: jsxRuntime.jsx(IconWithSpinner.IconWithSpinner, { Icon: (props) => (jsxRuntime.jsx(Icon.Icon, Object.assign({ color: 'brand-primary' }, { children: jsxRuntime.jsx(signCircle.ReactComponent, Object.assign({}, props)) }))), iconSize: 64, isSpinning: true }) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__body' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ variant: 'title', color: 'primary', className: 'transaction-confirmation__title' }, { children: title })), jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(VerticalDrawerAnimation.VerticalDrawerAnimation, {}) }, { children: transactionError && (jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__error' }, { children: jsxRuntime.jsx(ErrorContainer.ErrorContainer, { children: transactionErrorMessage.transactionErrorMessage(transactionError) }) }))) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__content' }, { children: [jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__app-origin-tile' }, { children: jsxRuntime.jsx(AppOriginTile.AppOriginTile, { appLogoUrl: appLogoUrl, appName: appName, appOrigin: appOrigin }) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-info' }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "From (You)" })), isEffectiveFromAddressLoading && jsxRuntime.jsx(CoinCell, { children: "--" }), !isEffectiveFromAddressLoading && effectiveFromAddress && (jsxRuntime.jsx(CoinCell, { children: shortenWalletAddress.shortenWalletAddress(effectiveFromAddress, 4, 4) })), !isEffectiveFromAddressLoading && !effectiveFromAddress && (jsxRuntime.jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" })))] })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "To" })), isEffectiveToAddressLoading && jsxRuntime.jsx(CoinCell, { children: "--" }), !isEffectiveToAddressLoading && !effectiveToAddress && (jsxRuntime.jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" }))), !isEffectiveToAddressLoading && effectiveToAddress && (jsxRuntime.jsx(CoinCell, { children: shortenWalletAddress.shortenWalletAddress(effectiveToAddress, 4, 4) }))] })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "Amount" })), isEffectiveValueLoading && (jsxRuntime.jsx(CoinCell, Object.assign({ symbol: currencySymbol, icon: jsxRuntime.jsx(ChainIcon, {}) }, { children: "--" }))), !isEffectiveValueLoading &&
|
|
119
|
+
} }, { children: jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation' }, { children: [jsxRuntime.jsx(ModalHeader.ModalHeader, Object.assign({ trailing: closeButton, alignContent: 'bottom' }, { children: jsxRuntime.jsx(IconWithSpinner.IconWithSpinner, { Icon: (props) => (jsxRuntime.jsx(Icon.Icon, Object.assign({ color: 'brand-primary' }, { children: jsxRuntime.jsx(signCircle.ReactComponent, Object.assign({}, props)) }))), iconSize: 64, isSpinning: true }) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__body' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ variant: 'title', color: 'primary', className: 'transaction-confirmation__title' }, { children: title })), jsxRuntime.jsx(AnimatePresence.AnimatePresence, Object.assign({ animationComponent: jsxRuntime.jsx(VerticalDrawerAnimation.VerticalDrawerAnimation, {}) }, { children: transactionError && (jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__error' }, { children: jsxRuntime.jsx(ErrorContainer.ErrorContainer, { children: transactionErrorMessage.transactionErrorMessage(transactionError) }) }))) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__content' }, { children: [jsxRuntime.jsx("div", Object.assign({ className: 'transaction-confirmation__app-origin-tile' }, { children: jsxRuntime.jsx(AppOriginTile.AppOriginTile, { appLogoUrl: appLogoUrl, appName: appName, appOrigin: appOrigin }) })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-info' }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "From (You)" })), isEffectiveFromAddressLoading && jsxRuntime.jsx(CoinCell, { children: "--" }), !isEffectiveFromAddressLoading && effectiveFromAddress && (jsxRuntime.jsx(CoinCell, { children: shortenWalletAddress.shortenWalletAddress(effectiveFromAddress, 4, 4) })), !isEffectiveFromAddressLoading && !effectiveFromAddress && (jsxRuntime.jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" })))] })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "To" })), isEffectiveToAddressLoading && jsxRuntime.jsx(CoinCell, { children: "--" }), !isEffectiveToAddressLoading && !effectiveToAddress && (jsxRuntime.jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" }))), !isEffectiveToAddressLoading && effectiveToAddress && (jsxRuntime.jsx(CoinCell, { children: shortenWalletAddress.shortenWalletAddress(effectiveToAddress, 4, 4) }))] })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "Amount" })), isEffectiveValueLoading && (jsxRuntime.jsx(CoinCell, Object.assign({ symbol: currencySymbol, icon: jsxRuntime.jsx(ChainIcon, {}) }, { children: "--" }))), !isEffectiveValueLoading && Boolean(effectiveValue) && (jsxRuntime.jsx(CoinCell, Object.assign({ symbol: currencySymbol, icon: jsxRuntime.jsx(ChainIcon, {}), dataTestId: 'transaction-amount',
|
|
120
|
+
// justification: Boolean(effectiveValue) is checked above
|
|
121
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
122
|
+
title: formatValue(effectiveValue) }, { children: formatValue(effectiveValue, digitsLimitSub) }))), !isEffectiveValueLoading && !effectiveValue && (jsxRuntime.jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" })))] })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "Gas (estimated)" })), isEffectiveGasPriceLoading && jsxRuntime.jsx(CoinCell, { children: "--" }), !isEffectiveGasPriceLoading && !effectiveGasPrice && (jsxRuntime.jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" }))), !isEffectiveGasPriceLoading &&
|
|
123
|
+
Boolean(effectiveGasPrice) && (jsxRuntime.jsx(CoinCell, Object.assign({ symbol: currencySymbol, icon: jsxRuntime.jsx(ChainIcon, {}), dataTestId: 'transaction-gas-free',
|
|
124
|
+
// justification: Boolean(effectiveValue) is checked above
|
|
125
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
126
|
+
title: formatValue(effectiveGasPrice) }, { children: formatValue(effectiveGasPrice, digitsLimitSub) })))] })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsxRuntime.jsx(Typography.Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "Total" })), Boolean(total) && (jsxRuntime.jsx(CoinCell, Object.assign({ symbol: currencySymbol, icon: jsxRuntime.jsx(ChainIcon, {}), dataTestId: 'transaction-total',
|
|
127
|
+
// justification: Boolean(total) is checked above
|
|
128
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
129
|
+
title: formatValue(total) }, { children: formatValue(total, digitsLimitSub) }))), !total && (jsxRuntime.jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" })))] }))] }))] })), jsxRuntime.jsxs("div", Object.assign({ className: 'transaction-confirmation__actions' }, { children: [jsxRuntime.jsx(Button.Button, Object.assign({ buttonVariant: 'secondary', onClick: handleOnReject, expanded: true, buttonPadding: 'large', buttonRounded: 'default', disabled: isLoading }, { children: "Cancel" })), jsxRuntime.jsx(Button.Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'large', onClick: () => sendTransaction(), expanded: true, buttonRounded: 'default', loading: isLoading, disabled: isLoadingTransaction }, { children: buttonText }))] })), jsxRuntime.jsx(PoweredByDynamic.PoweredByDynamic, {})] }))] })) })));
|
|
118
130
|
};
|
|
119
131
|
const CoinCell = ({ children, symbol, icon, color = 'primary', weight = 'medium', dataTestId, title, }) => (jsxRuntime.jsxs("div", Object.assign({ "data-testid": dataTestId, style: {
|
|
120
132
|
alignItems: 'center',
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { __awaiter } from '../../../../_virtual/_tslib.js';
|
|
2
2
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
3
|
import { useRef, useState, useCallback, useMemo } from 'react';
|
|
4
|
-
import {
|
|
4
|
+
import { formatEther } from 'viem';
|
|
5
5
|
import { DynamicError } from '@dynamic-labs/multi-wallet';
|
|
6
6
|
import { Typography } from '../../components/Typography/Typography.js';
|
|
7
7
|
import '@dynamic-labs/sdk-api';
|
|
@@ -23,8 +23,6 @@ import { Portal } from '../../components/Portal/Portal.js';
|
|
|
23
23
|
import 'react-dom';
|
|
24
24
|
import '../../config/ApiEndpoint.js';
|
|
25
25
|
import '../../context/ErrorContext/ErrorContext.js';
|
|
26
|
-
import { useFetchCurrency } from '../../widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.js';
|
|
27
|
-
import { transactionErrorMessage } from './helpers/transactionErrorMessage.js';
|
|
28
26
|
import '../../context/MockContext/MockContext.js';
|
|
29
27
|
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
30
28
|
import { usePromise } from '../../utils/hooks/usePromise/usePromise.js';
|
|
@@ -39,9 +37,11 @@ import { AppOriginTile } from '../../components/AppOriginTile/AppOriginTile.js';
|
|
|
39
37
|
import { AnimatePresence } from '../../components/AnimatePresence/AnimatePresence.js';
|
|
40
38
|
import { VerticalDrawerAnimation } from '../../components/AnimatePresence/animations/VerticalDrawerAnimation/VerticalDrawerAnimation.js';
|
|
41
39
|
import { ErrorContainer } from '../../components/ErrorContainer/ErrorContainer.js';
|
|
40
|
+
import { useFetchCurrency } from '../../widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.js';
|
|
41
|
+
import { transactionErrorMessage } from './helpers/transactionErrorMessage.js';
|
|
42
42
|
|
|
43
|
-
const digitsLimitSub = 1e8;
|
|
44
|
-
const TransactionConfirmationModal = ({ title, appOrigin, handler, onReject, onTransactionResponseSuccess, appLogoUrl, appName, transaction, buttonText = 'Send',
|
|
43
|
+
const digitsLimitSub = BigInt(1e8);
|
|
44
|
+
const TransactionConfirmationModal = ({ title, appOrigin, handler, onReject, onTransactionResponseSuccess, appLogoUrl, appName, transaction, buttonText = 'Send', }) => {
|
|
45
45
|
usePreventPageScroll(true);
|
|
46
46
|
const { primaryWallet } = useInternalDynamicContext();
|
|
47
47
|
const didConfirmRef = useRef(false);
|
|
@@ -74,20 +74,22 @@ const TransactionConfirmationModal = ({ title, appOrigin, handler, onReject, onT
|
|
|
74
74
|
]);
|
|
75
75
|
const { data: effectiveValue, isLoading: isEffectiveValueLoading } = usePromise(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
76
76
|
const val = yield value;
|
|
77
|
-
return val ?
|
|
77
|
+
return val ? BigInt(val) : undefined;
|
|
78
78
|
}));
|
|
79
79
|
const { data: effectiveGasPrice, isLoading: isEffectiveGasPriceLoading } = usePromise(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
80
|
-
const
|
|
81
|
-
const
|
|
80
|
+
const publicClient = yield primaryWallet.connector.getWeb3Provider();
|
|
81
|
+
const gasPrice = yield publicClient.getGasPrice();
|
|
82
|
+
const estimatedGas = yield publicClient.estimateGas(Object.assign({ account: from, to,
|
|
83
|
+
value }, transaction));
|
|
82
84
|
return gasPrice && estimatedGas
|
|
83
|
-
?
|
|
85
|
+
? BigInt(gasPrice) * estimatedGas
|
|
84
86
|
: undefined;
|
|
85
87
|
}));
|
|
86
88
|
const { data: effectiveToAddress, isLoading: isEffectiveToAddressLoading } = usePromise(() => to);
|
|
87
89
|
const { data: effectiveFromAddress, isLoading: isEffectiveFromAddressLoading, } = usePromise(() => from);
|
|
88
90
|
const total = useMemo(() => {
|
|
89
91
|
if (effectiveGasPrice !== undefined && effectiveValue !== undefined) {
|
|
90
|
-
return effectiveGasPrice
|
|
92
|
+
return effectiveGasPrice + effectiveValue;
|
|
91
93
|
}
|
|
92
94
|
return effectiveValue || effectiveGasPrice;
|
|
93
95
|
}, [effectiveGasPrice, effectiveValue]);
|
|
@@ -103,14 +105,24 @@ const TransactionConfirmationModal = ({ title, appOrigin, handler, onReject, onT
|
|
|
103
105
|
const ChainIcon = getChainIcon('evm');
|
|
104
106
|
const formatValue = (value, sub) => {
|
|
105
107
|
if (!sub) {
|
|
106
|
-
return
|
|
108
|
+
return formatEther(value);
|
|
107
109
|
}
|
|
108
|
-
return
|
|
110
|
+
return formatEther(value - (value % sub));
|
|
109
111
|
};
|
|
110
112
|
const closeButton = (jsx(IconButton, Object.assign({ type: 'button', onClick: handleOnReject, "data-testid": 'close', disabled: isLoading }, { children: jsx(SvgClose, {}) })));
|
|
111
113
|
return (jsx(Portal, Object.assign({ handleClose: handleOnReject, isShown: show, zIndex: authModalZIndex, withBackdrop: true, elementId: 'dynamic-send-transaction', transitionEvents: {
|
|
112
114
|
onUnmount: handleOnModalUnmount,
|
|
113
|
-
} }, { children: jsxs("div", Object.assign({ className: 'transaction-confirmation' }, { children: [jsx(ModalHeader, Object.assign({ trailing: closeButton, alignContent: 'bottom' }, { children: jsx(IconWithSpinner, { Icon: (props) => (jsx(Icon, Object.assign({ color: 'brand-primary' }, { children: jsx(SvgSignCircle, Object.assign({}, props)) }))), iconSize: 64, isSpinning: true }) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__body' }, { children: [jsx(Typography, Object.assign({ variant: 'title', color: 'primary', className: 'transaction-confirmation__title' }, { children: title })), jsx(AnimatePresence, Object.assign({ animationComponent: jsx(VerticalDrawerAnimation, {}) }, { children: transactionError && (jsx("div", Object.assign({ className: 'transaction-confirmation__error' }, { children: jsx(ErrorContainer, { children: transactionErrorMessage(transactionError) }) }))) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__content' }, { children: [jsx("div", Object.assign({ className: 'transaction-confirmation__app-origin-tile' }, { children: jsx(AppOriginTile, { appLogoUrl: appLogoUrl, appName: appName, appOrigin: appOrigin }) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-info' }, { children: [jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsx(Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "From (You)" })), isEffectiveFromAddressLoading && jsx(CoinCell, { children: "--" }), !isEffectiveFromAddressLoading && effectiveFromAddress && (jsx(CoinCell, { children: shortenWalletAddress(effectiveFromAddress, 4, 4) })), !isEffectiveFromAddressLoading && !effectiveFromAddress && (jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" })))] })), jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsx(Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "To" })), isEffectiveToAddressLoading && jsx(CoinCell, { children: "--" }), !isEffectiveToAddressLoading && !effectiveToAddress && (jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" }))), !isEffectiveToAddressLoading && effectiveToAddress && (jsx(CoinCell, { children: shortenWalletAddress(effectiveToAddress, 4, 4) }))] })), jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsx(Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "Amount" })), isEffectiveValueLoading && (jsx(CoinCell, Object.assign({ symbol: currencySymbol, icon: jsx(ChainIcon, {}) }, { children: "--" }))), !isEffectiveValueLoading &&
|
|
115
|
+
} }, { children: jsxs("div", Object.assign({ className: 'transaction-confirmation' }, { children: [jsx(ModalHeader, Object.assign({ trailing: closeButton, alignContent: 'bottom' }, { children: jsx(IconWithSpinner, { Icon: (props) => (jsx(Icon, Object.assign({ color: 'brand-primary' }, { children: jsx(SvgSignCircle, Object.assign({}, props)) }))), iconSize: 64, isSpinning: true }) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__body' }, { children: [jsx(Typography, Object.assign({ variant: 'title', color: 'primary', className: 'transaction-confirmation__title' }, { children: title })), jsx(AnimatePresence, Object.assign({ animationComponent: jsx(VerticalDrawerAnimation, {}) }, { children: transactionError && (jsx("div", Object.assign({ className: 'transaction-confirmation__error' }, { children: jsx(ErrorContainer, { children: transactionErrorMessage(transactionError) }) }))) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__content' }, { children: [jsx("div", Object.assign({ className: 'transaction-confirmation__app-origin-tile' }, { children: jsx(AppOriginTile, { appLogoUrl: appLogoUrl, appName: appName, appOrigin: appOrigin }) })), jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-info' }, { children: [jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsx(Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "From (You)" })), isEffectiveFromAddressLoading && jsx(CoinCell, { children: "--" }), !isEffectiveFromAddressLoading && effectiveFromAddress && (jsx(CoinCell, { children: shortenWalletAddress(effectiveFromAddress, 4, 4) })), !isEffectiveFromAddressLoading && !effectiveFromAddress && (jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" })))] })), jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsx(Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "To" })), isEffectiveToAddressLoading && jsx(CoinCell, { children: "--" }), !isEffectiveToAddressLoading && !effectiveToAddress && (jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" }))), !isEffectiveToAddressLoading && effectiveToAddress && (jsx(CoinCell, { children: shortenWalletAddress(effectiveToAddress, 4, 4) }))] })), jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsx(Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "Amount" })), isEffectiveValueLoading && (jsx(CoinCell, Object.assign({ symbol: currencySymbol, icon: jsx(ChainIcon, {}) }, { children: "--" }))), !isEffectiveValueLoading && Boolean(effectiveValue) && (jsx(CoinCell, Object.assign({ symbol: currencySymbol, icon: jsx(ChainIcon, {}), dataTestId: 'transaction-amount',
|
|
116
|
+
// justification: Boolean(effectiveValue) is checked above
|
|
117
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
118
|
+
title: formatValue(effectiveValue) }, { children: formatValue(effectiveValue, digitsLimitSub) }))), !isEffectiveValueLoading && !effectiveValue && (jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" })))] })), jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsx(Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "Gas (estimated)" })), isEffectiveGasPriceLoading && jsx(CoinCell, { children: "--" }), !isEffectiveGasPriceLoading && !effectiveGasPrice && (jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" }))), !isEffectiveGasPriceLoading &&
|
|
119
|
+
Boolean(effectiveGasPrice) && (jsx(CoinCell, Object.assign({ symbol: currencySymbol, icon: jsx(ChainIcon, {}), dataTestId: 'transaction-gas-free',
|
|
120
|
+
// justification: Boolean(effectiveValue) is checked above
|
|
121
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
122
|
+
title: formatValue(effectiveGasPrice) }, { children: formatValue(effectiveGasPrice, digitsLimitSub) })))] })), jsxs("div", Object.assign({ className: 'transaction-confirmation__transaction-row' }, { children: [jsx(Typography, Object.assign({ color: 'secondary', variant: 'body_normal', weight: 'regular', className: 'transaction-confirmation__transaction-row__title' }, { children: "Total" })), Boolean(total) && (jsx(CoinCell, Object.assign({ symbol: currencySymbol, icon: jsx(ChainIcon, {}), dataTestId: 'transaction-total',
|
|
123
|
+
// justification: Boolean(total) is checked above
|
|
124
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
125
|
+
title: formatValue(total) }, { children: formatValue(total, digitsLimitSub) }))), !total && (jsx(CoinCell, Object.assign({ color: 'secondary', weight: 'regular' }, { children: "N/A" })))] }))] }))] })), jsxs("div", Object.assign({ className: 'transaction-confirmation__actions' }, { children: [jsx(Button, Object.assign({ buttonVariant: 'secondary', onClick: handleOnReject, expanded: true, buttonPadding: 'large', buttonRounded: 'default', disabled: isLoading }, { children: "Cancel" })), jsx(Button, Object.assign({ buttonVariant: 'primary', buttonPadding: 'large', onClick: () => sendTransaction(), expanded: true, buttonRounded: 'default', loading: isLoading, disabled: isLoadingTransaction }, { children: buttonText }))] })), jsx(PoweredByDynamic, {})] }))] })) })));
|
|
114
126
|
};
|
|
115
127
|
const CoinCell = ({ children, symbol, icon, color = 'primary', weight = 'medium', dataTestId, title, }) => (jsxs("div", Object.assign({ "data-testid": dataTestId, style: {
|
|
116
128
|
alignItems: 'center',
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import { FC, ReactNode } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { TransactionReceipt, TransactionRequest } from 'viem';
|
|
3
3
|
export type TransactionConfirmationModalProps = {
|
|
4
4
|
appLogoUrl?: string;
|
|
5
5
|
appName?: string;
|
|
6
6
|
appOrigin: string;
|
|
7
7
|
buttonText?: ReactNode;
|
|
8
|
-
handler: (transaction:
|
|
8
|
+
handler: (transaction: TransactionRequest) => Promise<TransactionReceipt>;
|
|
9
9
|
onReject: (error: unknown) => void;
|
|
10
|
-
onTransactionResponseSuccess: (transactionResponse:
|
|
11
|
-
provider: ethers.providers.Web3Provider;
|
|
10
|
+
onTransactionResponseSuccess: (transactionResponse: TransactionReceipt) => void;
|
|
12
11
|
title: ReactNode;
|
|
13
|
-
transaction:
|
|
12
|
+
transaction: TransactionRequest;
|
|
14
13
|
};
|
|
15
14
|
export type TransactionConfirmationModalComponent = FC<TransactionConfirmationModalProps>;
|
|
@@ -2,6 +2,14 @@ import React from 'react';
|
|
|
2
2
|
import type { NetworkConfigurationMap, EvmRpcProvider, SolanaRpcProvider } from '@dynamic-labs/multi-wallet';
|
|
3
3
|
import type { FetchPublicAddressOpts, WalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
4
4
|
import { WalletProviderEnum, ProjectSettings, UserFields, NameServiceData, JwtVerifiedCredential } from '@dynamic-labs/sdk-api';
|
|
5
|
+
export type Deferrable<T> = {
|
|
6
|
+
[K in keyof T]: T[K] | Promise<T[K]>;
|
|
7
|
+
};
|
|
8
|
+
interface ArrayLike<T> {
|
|
9
|
+
readonly [n: number]: T;
|
|
10
|
+
readonly length: number;
|
|
11
|
+
}
|
|
12
|
+
export type Bytes = ArrayLike<number>;
|
|
5
13
|
export type BrowserName = 'brave' | 'chrome' | 'edge' | 'firefox' | 'safari';
|
|
6
14
|
export type Wallet = {
|
|
7
15
|
address: string;
|
|
@@ -133,3 +141,4 @@ export type DynamicEventsCallbacks = {
|
|
|
133
141
|
onUnlinkSuccess?: (unlinkedWallet: JwtVerifiedCredential) => void;
|
|
134
142
|
onUserProfileUpdate?: (user: UserProfile) => void;
|
|
135
143
|
};
|
|
144
|
+
export {};
|
|
@@ -25,12 +25,12 @@ const useWalletUiUtils = ({ appLogoUrl, appName, getAppOrigin, }) => {
|
|
|
25
25
|
const jwt = getAuthToken.getAuthToken();
|
|
26
26
|
if (!jwt && fakeSignerRef.current === 'enabled') {
|
|
27
27
|
fakeSignerRef.current = 'disabled';
|
|
28
|
-
return handler(
|
|
28
|
+
return handler();
|
|
29
29
|
}
|
|
30
30
|
return openSignMessage((resolve, reject) => (jsxRuntime.jsx(SignMessageConfirmationModal.SignMessageConfirmationModal, { appLogoUrl: appLogoUrl, appName: appName, appOrigin: getAppOrigin(), message: message, handler: handler, onSignMessage: resolve, onReject: reject })));
|
|
31
31
|
}, [appLogoUrl, appName, getAppOrigin, openSignMessage]);
|
|
32
|
-
const sendTransaction = React.useCallback(({ transaction, handler
|
|
33
|
-
return openSendTransaction((resolve, reject) => (jsxRuntime.jsx(TransactionConfirmationModal.TransactionConfirmationModal, { title: 'Send Transaction', appLogoUrl: appLogoUrl, appName: appName, appOrigin: getAppOrigin(), transaction: transaction, handler: handler, onTransactionResponseSuccess: resolve, onReject: reject
|
|
32
|
+
const sendTransaction = React.useCallback(({ transaction, handler }) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
33
|
+
return openSendTransaction((resolve, reject) => (jsxRuntime.jsx(TransactionConfirmationModal.TransactionConfirmationModal, { title: 'Send Transaction', appLogoUrl: appLogoUrl, appName: appName, appOrigin: getAppOrigin(), transaction: transaction, handler: handler, onTransactionResponseSuccess: resolve, onReject: reject })));
|
|
34
34
|
}), [appLogoUrl, appName, getAppOrigin, openSendTransaction]);
|
|
35
35
|
const enableInternalSign = React.useCallback(() => {
|
|
36
36
|
fakeSignerRef.current = 'enabled';
|
|
@@ -21,12 +21,12 @@ const useWalletUiUtils = ({ appLogoUrl, appName, getAppOrigin, }) => {
|
|
|
21
21
|
const jwt = getAuthToken();
|
|
22
22
|
if (!jwt && fakeSignerRef.current === 'enabled') {
|
|
23
23
|
fakeSignerRef.current = 'disabled';
|
|
24
|
-
return handler(
|
|
24
|
+
return handler();
|
|
25
25
|
}
|
|
26
26
|
return openSignMessage((resolve, reject) => (jsx(SignMessageConfirmationModal, { appLogoUrl: appLogoUrl, appName: appName, appOrigin: getAppOrigin(), message: message, handler: handler, onSignMessage: resolve, onReject: reject })));
|
|
27
27
|
}, [appLogoUrl, appName, getAppOrigin, openSignMessage]);
|
|
28
|
-
const sendTransaction = useCallback(({ transaction, handler
|
|
29
|
-
return openSendTransaction((resolve, reject) => (jsx(TransactionConfirmationModal, { title: 'Send Transaction', appLogoUrl: appLogoUrl, appName: appName, appOrigin: getAppOrigin(), transaction: transaction, handler: handler, onTransactionResponseSuccess: resolve, onReject: reject
|
|
28
|
+
const sendTransaction = useCallback(({ transaction, handler }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
29
|
+
return openSendTransaction((resolve, reject) => (jsx(TransactionConfirmationModal, { title: 'Send Transaction', appLogoUrl: appLogoUrl, appName: appName, appOrigin: getAppOrigin(), transaction: transaction, handler: handler, onTransactionResponseSuccess: resolve, onReject: reject })));
|
|
30
30
|
}), [appLogoUrl, appName, getAppOrigin, openSendTransaction]);
|
|
31
31
|
const enableInternalSign = useCallback(() => {
|
|
32
32
|
fakeSignerRef.current = 'enabled';
|
|
@@ -24,7 +24,7 @@ require('../../components/Transition/SlideInUpTransition/SlideInUpTransition.cjs
|
|
|
24
24
|
require('../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
25
25
|
require('../../config/ApiEndpoint.cjs');
|
|
26
26
|
var useVerifyWallet = require('../../utils/hooks/useVerifyWallet/useVerifyWallet.cjs');
|
|
27
|
-
require('
|
|
27
|
+
require('../../modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs');
|
|
28
28
|
require('../../context/MockContext/MockContext.cjs');
|
|
29
29
|
require('../../context/ErrorContext/ErrorContext.cjs');
|
|
30
30
|
var CaptchaContext = require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
@@ -20,7 +20,7 @@ import '../../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
|
|
|
20
20
|
import '../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
21
21
|
import '../../config/ApiEndpoint.js';
|
|
22
22
|
import { useVerifyWallet } from '../../utils/hooks/useVerifyWallet/useVerifyWallet.js';
|
|
23
|
-
import '
|
|
23
|
+
import '../../modals/TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
24
24
|
import '../../context/MockContext/MockContext.js';
|
|
25
25
|
import '../../context/ErrorContext/ErrorContext.js';
|
|
26
26
|
import { useCaptchaContext } from '../../context/CaptchaContext/CaptchaContext.js';
|
|
@@ -27,7 +27,7 @@ require('../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
|
27
27
|
var TextButton = require('../../components/TextButton/TextButton.cjs');
|
|
28
28
|
require('../../config/ApiEndpoint.cjs');
|
|
29
29
|
require('../../context/ErrorContext/ErrorContext.cjs');
|
|
30
|
-
require('
|
|
30
|
+
require('../../modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs');
|
|
31
31
|
require('../../context/MockContext/MockContext.cjs');
|
|
32
32
|
require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
33
33
|
require('../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
|
|
@@ -23,7 +23,7 @@ import '../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
|
23
23
|
import { TextButton } from '../../components/TextButton/TextButton.js';
|
|
24
24
|
import '../../config/ApiEndpoint.js';
|
|
25
25
|
import '../../context/ErrorContext/ErrorContext.js';
|
|
26
|
-
import '
|
|
26
|
+
import '../../modals/TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
27
27
|
import '../../context/MockContext/MockContext.js';
|
|
28
28
|
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
29
29
|
import '../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
|
|
@@ -27,7 +27,7 @@ require('../../../components/Transition/SlideInUpTransition/SlideInUpTransition.
|
|
|
27
27
|
require('../../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
28
28
|
require('../../../config/ApiEndpoint.cjs');
|
|
29
29
|
require('../../../context/ErrorContext/ErrorContext.cjs');
|
|
30
|
-
require('
|
|
30
|
+
require('../../../modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs');
|
|
31
31
|
require('../../../context/MockContext/MockContext.cjs');
|
|
32
32
|
require('../../../context/CaptchaContext/CaptchaContext.cjs');
|
|
33
33
|
require('../../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
|
|
@@ -23,7 +23,7 @@ import '../../../components/Transition/SlideInUpTransition/SlideInUpTransition.j
|
|
|
23
23
|
import '../../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
24
24
|
import '../../../config/ApiEndpoint.js';
|
|
25
25
|
import '../../../context/ErrorContext/ErrorContext.js';
|
|
26
|
-
import '
|
|
26
|
+
import '../../../modals/TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
27
27
|
import '../../../context/MockContext/MockContext.js';
|
|
28
28
|
import '../../../context/CaptchaContext/CaptchaContext.js';
|
|
29
29
|
import '../../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
|
|
@@ -24,7 +24,7 @@ require('../../../components/Transition/SlideInUpTransition/SlideInUpTransition.
|
|
|
24
24
|
require('../../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
25
25
|
require('../../../config/ApiEndpoint.cjs');
|
|
26
26
|
require('../../../context/ErrorContext/ErrorContext.cjs');
|
|
27
|
-
require('
|
|
27
|
+
require('../../../modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs');
|
|
28
28
|
require('../../../context/MockContext/MockContext.cjs');
|
|
29
29
|
require('../../../context/CaptchaContext/CaptchaContext.cjs');
|
|
30
30
|
var useUserUpdateRequest = require('../../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
|
|
@@ -20,7 +20,7 @@ import '../../../components/Transition/SlideInUpTransition/SlideInUpTransition.j
|
|
|
20
20
|
import '../../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
21
21
|
import '../../../config/ApiEndpoint.js';
|
|
22
22
|
import '../../../context/ErrorContext/ErrorContext.js';
|
|
23
|
-
import '
|
|
23
|
+
import '../../../modals/TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
24
24
|
import '../../../context/MockContext/MockContext.js';
|
|
25
25
|
import '../../../context/CaptchaContext/CaptchaContext.js';
|
|
26
26
|
import { useUserUpdateRequestInternal } from '../../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
|
package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.cjs
CHANGED
|
@@ -24,7 +24,7 @@ require('../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
|
24
24
|
var TextButton = require('../../components/TextButton/TextButton.cjs');
|
|
25
25
|
require('../../config/ApiEndpoint.cjs');
|
|
26
26
|
require('../../context/ErrorContext/ErrorContext.cjs');
|
|
27
|
-
require('
|
|
27
|
+
require('../../modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs');
|
|
28
28
|
require('../../context/MockContext/MockContext.cjs');
|
|
29
29
|
require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
30
30
|
require('../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
|
package/src/lib/views/CollectUserDataViewLoginWithEmail/CollectUserDataViewLoginWithEmail.js
CHANGED
|
@@ -20,7 +20,7 @@ import '../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
|
20
20
|
import { TextButton } from '../../components/TextButton/TextButton.js';
|
|
21
21
|
import '../../config/ApiEndpoint.js';
|
|
22
22
|
import '../../context/ErrorContext/ErrorContext.js';
|
|
23
|
-
import '
|
|
23
|
+
import '../../modals/TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
24
24
|
import '../../context/MockContext/MockContext.js';
|
|
25
25
|
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
26
26
|
import '../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
|
|
@@ -25,7 +25,7 @@ require('../../components/Transition/SlideInUpTransition/SlideInUpTransition.cjs
|
|
|
25
25
|
require('../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
26
26
|
require('../../config/ApiEndpoint.cjs');
|
|
27
27
|
require('../../context/ErrorContext/ErrorContext.cjs');
|
|
28
|
-
require('
|
|
28
|
+
require('../../modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs');
|
|
29
29
|
require('../../context/MockContext/MockContext.cjs');
|
|
30
30
|
require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
31
31
|
require('../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
|
|
@@ -21,7 +21,7 @@ import '../../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
|
|
|
21
21
|
import '../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
22
22
|
import '../../config/ApiEndpoint.js';
|
|
23
23
|
import '../../context/ErrorContext/ErrorContext.js';
|
|
24
|
-
import '
|
|
24
|
+
import '../../modals/TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
25
25
|
import '../../context/MockContext/MockContext.js';
|
|
26
26
|
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
27
27
|
import '../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
|
|
@@ -25,7 +25,7 @@ require('../../components/Transition/SlideInUpTransition/SlideInUpTransition.cjs
|
|
|
25
25
|
require('../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
26
26
|
var api = require('../../data/api.cjs');
|
|
27
27
|
var ErrorContext = require('../../context/ErrorContext/ErrorContext.cjs');
|
|
28
|
-
require('
|
|
28
|
+
require('../../modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs');
|
|
29
29
|
require('../../context/MockContext/MockContext.cjs');
|
|
30
30
|
require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
31
31
|
require('../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
|
|
@@ -21,7 +21,7 @@ import '../../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
|
|
|
21
21
|
import '../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
22
22
|
import { updateUserProfileFields } from '../../data/api.js';
|
|
23
23
|
import { useErrorContext } from '../../context/ErrorContext/ErrorContext.js';
|
|
24
|
-
import '
|
|
24
|
+
import '../../modals/TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
25
25
|
import '../../context/MockContext/MockContext.js';
|
|
26
26
|
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
27
27
|
import '../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
|
|
@@ -28,7 +28,7 @@ require('../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
|
28
28
|
var TextButton = require('../../components/TextButton/TextButton.cjs');
|
|
29
29
|
var api = require('../../data/api.cjs');
|
|
30
30
|
var ErrorContext = require('../../context/ErrorContext/ErrorContext.cjs');
|
|
31
|
-
require('
|
|
31
|
+
require('../../modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs');
|
|
32
32
|
require('../../context/MockContext/MockContext.cjs');
|
|
33
33
|
require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
34
34
|
require('../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
|
|
@@ -24,7 +24,7 @@ import '../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
|
24
24
|
import { TextButton } from '../../components/TextButton/TextButton.js';
|
|
25
25
|
import { signInWithEmailVerification, retryEmailVerification } from '../../data/api.js';
|
|
26
26
|
import { useErrorContext } from '../../context/ErrorContext/ErrorContext.js';
|
|
27
|
-
import '
|
|
27
|
+
import '../../modals/TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
28
28
|
import '../../context/MockContext/MockContext.js';
|
|
29
29
|
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
30
30
|
import '../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
|
|
@@ -23,7 +23,7 @@ require('../../components/Transition/SlideInUpTransition/SlideInUpTransition.cjs
|
|
|
23
23
|
require('../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
24
24
|
require('../../components/IconButton/IconButton.cjs');
|
|
25
25
|
var OTPVerificationView = require('../../components/OTPVerificationView/OTPVerificationView.cjs');
|
|
26
|
-
require('
|
|
26
|
+
require('../../modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs');
|
|
27
27
|
require('../../context/MockContext/MockContext.cjs');
|
|
28
28
|
require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
29
29
|
var useMutation = require('../../utils/hooks/useMutation/useMutation.cjs');
|
|
@@ -19,7 +19,7 @@ import '../../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
|
|
|
19
19
|
import '../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
20
20
|
import '../../components/IconButton/IconButton.js';
|
|
21
21
|
import { OTPVerificationView } from '../../components/OTPVerificationView/OTPVerificationView.js';
|
|
22
|
-
import '
|
|
22
|
+
import '../../modals/TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
23
23
|
import '../../context/MockContext/MockContext.js';
|
|
24
24
|
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
25
25
|
import { useMutation } from '../../utils/hooks/useMutation/useMutation.js';
|
|
@@ -24,7 +24,7 @@ require('../../../../components/Transition/SlideInUpTransition/SlideInUpTransiti
|
|
|
24
24
|
require('../../../../components/Transition/OpacityTransition/OpacityTransition.cjs');
|
|
25
25
|
require('../../../../config/ApiEndpoint.cjs');
|
|
26
26
|
require('../../../../context/ErrorContext/ErrorContext.cjs');
|
|
27
|
-
require('
|
|
27
|
+
require('../../../../modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs');
|
|
28
28
|
require('../../../../context/MockContext/MockContext.cjs');
|
|
29
29
|
require('../../../../context/CaptchaContext/CaptchaContext.cjs');
|
|
30
30
|
require('../../../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.cjs');
|
|
@@ -20,7 +20,7 @@ import '../../../../components/Transition/SlideInUpTransition/SlideInUpTransitio
|
|
|
20
20
|
import '../../../../components/Transition/OpacityTransition/OpacityTransition.js';
|
|
21
21
|
import '../../../../config/ApiEndpoint.js';
|
|
22
22
|
import '../../../../context/ErrorContext/ErrorContext.js';
|
|
23
|
-
import '
|
|
23
|
+
import '../../../../modals/TransactionConfirmationModal/TransactionConfirmationModal.js';
|
|
24
24
|
import '../../../../context/MockContext/MockContext.js';
|
|
25
25
|
import '../../../../context/CaptchaContext/CaptchaContext.js';
|
|
26
26
|
import '../../../../utils/hooks/useUserUpdateRequest/useUserUpdateRequest.js';
|