Skip to content

Commit 8106bcd

Browse files
committed
fix: fix a error message
1 parent 8cb2773 commit 8106bcd

File tree

5 files changed

+88
-58
lines changed

5 files changed

+88
-58
lines changed

packages/adena-extension/src/components/molecules/approve-transaction/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,6 @@ export const ApproveTransaction: React.FC<ApproveTransactionProps> = ({
5757
logo,
5858
domain,
5959
transactionMessages,
60-
changeTransactionMessages,
6160
memo,
6261
currentBalance,
6362
hasMemo,
@@ -69,6 +68,7 @@ export const ApproveTransaction: React.FC<ApproveTransactionProps> = ({
6968
done,
7069
useNetworkFeeReturn,
7170
argumentInfos,
71+
changeTransactionMessages,
7272
changeMemo,
7373
onToggleTransactionData,
7474
onResponse,

packages/adena-extension/src/components/pages/transfer-summary/transfer-summary/transfer-summary.spec.tsx

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
import React from 'react';
2+
23
import { GlobalPopupStyle } from '@styles/global-style';
34
import theme from '@styles/theme';
45
import { render } from '@testing-library/react';
6+
import { NetworkFeeSettingType } from '@types';
57
import { RecoilRoot } from 'recoil';
68
import { ThemeProvider } from 'styled-components';
79
import TransferSummary, { TransferSummaryProps } from './transfer-summary';
@@ -20,6 +22,29 @@ describe('TransferSummary Component', () => {
2022
decimals: 6,
2123
display: true,
2224
},
25+
currentBalance: 1000000,
26+
useNetworkFeeReturn: {
27+
isLoading: false,
28+
isSimulateError: false,
29+
currentGasInfo: null,
30+
currentGasFeeRawAmount: 0,
31+
changedGasInfo: null,
32+
networkFee: null,
33+
networkFeeSettingType: NetworkFeeSettingType.AVERAGE,
34+
networkFeeSettings: null,
35+
gasAdjustment: '0',
36+
setGasAdjustment: () => {
37+
return;
38+
},
39+
setNetworkFeeSetting: () => {
40+
return;
41+
},
42+
save: () => {
43+
return;
44+
},
45+
isFetchedPriceTiers: false,
46+
isFetchedEstimateGasInfo: false,
47+
},
2348
tokenImage: '',
2449
transferBalance: {
2550
value: '4,000.123',

packages/adena-extension/src/components/pages/transfer-summary/transfer-summary/transfer-summary.styles.ts

Lines changed: 3 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ export const TransferSummaryWrapper = styled.div`
99
height: 100%;
1010
padding-top: 5px;
1111
min-height: 444px;
12+
padding-bottom: 70px;
1213
align-items: center;
1314
1415
.sub-header-wrapper {
@@ -41,41 +42,8 @@ export const TransferSummaryWrapper = styled.div`
4142
}
4243
4344
.button-group {
44-
position: absolute;
45-
display: flex;
45+
display: block;
46+
padding-top: 70px;
4647
width: 100%;
47-
bottom: 0;
48-
justify-content: space-between;
49-
50-
button {
51-
width: 100%;
52-
height: 48px;
53-
border-radius: 30px;
54-
${fonts.body1Bold};
55-
background-color: ${getTheme('neutral', '_5')};
56-
transition: 0.2s;
57-
58-
&:hover {
59-
background-color: ${getTheme('neutral', '_6')};
60-
}
61-
62-
&:last-child {
63-
margin-left: 10px;
64-
}
65-
66-
&.send {
67-
background-color: ${getTheme('primary', '_6')};
68-
69-
&:hover {
70-
background-color: ${getTheme('primary', '_7')};
71-
}
72-
73-
&.disabled {
74-
background-color: ${getTheme('primary', '_9')};
75-
color: ${getTheme('neutral', '_5')};
76-
cursor: default;
77-
}
78-
}
79-
}
8048
}
8149
`;

packages/adena-extension/src/components/pages/transfer-summary/transfer-summary/transfer-summary.tsx

Lines changed: 57 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,9 @@ import TransferSummaryAddress from '../transfer-summary-address/transfer-summary
88
import TransferSummaryBalance from '../transfer-summary-balance/transfer-summary-balance';
99
import { TransferSummaryWrapper } from './transfer-summary.styles';
1010

11-
import { TransactionValidationError } from '@common/errors/validation/transaction-validation-error';
11+
import { BottomFixedButtonGroup } from '@components/molecules';
1212
import NetworkFee from '@components/molecules/network-fee/network-fee';
13+
import { UseNetworkFeeReturn } from '@hooks/wallet/use-network-fee';
1314
import { Amount, NetworkFee as NetworkFeeType, TokenModel } from '@types';
1415

1516
export interface TransferSummaryProps {
@@ -19,6 +20,8 @@ export interface TransferSummaryProps {
1920
toAddress: string;
2021
networkFee: NetworkFeeType | null;
2122
memo: string;
23+
currentBalance: number | null | undefined;
24+
useNetworkFeeReturn: UseNetworkFeeReturn;
2225
isErrorNetworkFee?: boolean;
2326
isLoadingNetworkFee?: boolean;
2427
onClickBack: () => void;
@@ -34,26 +37,52 @@ const TransferSummary: React.FC<TransferSummaryProps> = ({
3437
toAddress,
3538
networkFee,
3639
memo,
40+
currentBalance,
41+
useNetworkFeeReturn,
3742
isErrorNetworkFee,
38-
isLoadingNetworkFee,
3943
onClickBack,
4044
onClickCancel,
4145
onClickSend,
4246
onClickNetworkFeeSetting,
4347
}) => {
44-
const insufficientNetworkFeeError = new TransactionValidationError('INSUFFICIENT_NETWORK_FEE');
45-
4648
const disabledSendButton = useMemo(() => {
47-
return isLoadingNetworkFee || isErrorNetworkFee;
48-
}, [isLoadingNetworkFee, isErrorNetworkFee]);
49+
if (useNetworkFeeReturn.isLoading) {
50+
return true;
51+
}
52+
53+
if (isErrorNetworkFee || useNetworkFeeReturn.isSimulateError) {
54+
return true;
55+
}
56+
57+
return Number(networkFee?.amount || 0) <= 0;
58+
}, [
59+
isErrorNetworkFee,
60+
useNetworkFeeReturn.isLoading,
61+
useNetworkFeeReturn.isSimulateError,
62+
networkFee,
63+
]);
4964

50-
const errorMessage = useMemo(() => {
51-
if (!isErrorNetworkFee) {
52-
return '';
65+
const networkFeeErrorMessage = useMemo(() => {
66+
if (useNetworkFeeReturn.isSimulateError) {
67+
if (currentBalance !== 0) {
68+
return 'This transaction cannot be simulated. Try again.';
69+
}
5370
}
5471

55-
return insufficientNetworkFeeError.message;
56-
}, [isErrorNetworkFee, insufficientNetworkFeeError.message]);
72+
if (isErrorNetworkFee) {
73+
return 'Insufficient network fee';
74+
}
75+
76+
return '';
77+
}, [useNetworkFeeReturn.isSimulateError, isErrorNetworkFee, currentBalance]);
78+
79+
const simulateErrorMessage = useMemo(() => {
80+
if (useNetworkFeeReturn.isSimulateError) {
81+
return useNetworkFeeReturn.currentGasInfo?.simulateErrorMessage || null;
82+
}
83+
84+
return null;
85+
}, [useNetworkFeeReturn.isSimulateError, useNetworkFeeReturn.currentGasInfo]);
5786

5887
return (
5988
<TransferSummaryWrapper>
@@ -83,23 +112,29 @@ const TransferSummary: React.FC<TransferSummaryProps> = ({
83112

84113
<div className='network-fee-wrapper'>
85114
<NetworkFee
86-
isError={isErrorNetworkFee}
87-
isLoading={isLoadingNetworkFee}
88115
value={networkFee?.amount || ''}
89116
denom={networkFee?.denom || ''}
90-
errorMessage={errorMessage}
117+
isError={useNetworkFeeReturn.isSimulateError || isErrorNetworkFee}
118+
isLoading={useNetworkFeeReturn.isLoading}
119+
errorMessage={networkFeeErrorMessage}
120+
simulateErrorMessage={simulateErrorMessage}
91121
onClickSetting={onClickNetworkFeeSetting}
92122
/>
93123
</div>
124+
{simulateErrorMessage !== null && <div className='button-group' />}
94125

95-
<div className='button-group'>
96-
<button className='cancel' onClick={onClickCancel}>
97-
Cancel
98-
</button>
99-
<button className={disabledSendButton ? 'send disabled' : 'send'} onClick={onClickSend}>
100-
Send
101-
</button>
102-
</div>
126+
<BottomFixedButtonGroup
127+
leftButton={{
128+
text: 'Cancel',
129+
onClick: onClickCancel,
130+
}}
131+
rightButton={{
132+
text: 'Send',
133+
primary: true,
134+
onClick: onClickSend,
135+
disabled: disabledSendButton,
136+
}}
137+
/>
103138
</TransferSummaryWrapper>
104139
);
105140
};

packages/adena-extension/src/pages/popup/wallet/transfer-summary/index.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -309,6 +309,8 @@ const TransferSummaryContainer: React.FC = () => {
309309
isLoadingNetworkFee={useNetworkFeeReturn.isLoading}
310310
networkFee={networkFee}
311311
memo={summaryInfo.memo}
312+
currentBalance={currentBalance}
313+
useNetworkFeeReturn={useNetworkFeeReturn}
312314
onClickBack={onClickBack}
313315
onClickCancel={onClickCancel}
314316
onClickSend={transfer}

0 commit comments

Comments
 (0)