Skip to content

Commit 489e1a8

Browse files
Address PR feedback
1 parent b4fdfbd commit 489e1a8

File tree

5 files changed

+31
-29
lines changed

5 files changed

+31
-29
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
export const HEX_ZERO = '0x0';
22

33
export const TOKEN_VALUE_UNLIMITED_THRESHOLD = 10 ** 15;
4+
5+
export const DAI_CONTRACT_ADDRESS =
6+
'0x6B175474E89094C44Da98b954EedeAC495271d0F';

ui/pages/confirmations/components/confirm/info/typed-sign/typed-sign-v4-simulation/permit-simulation/permit-simulation.tsx

+1-3
Original file line numberDiff line numberDiff line change
@@ -107,14 +107,12 @@ const PermitSimulation: React.FC<object> = () => {
107107
</ConfirmInfoRow>
108108
);
109109

110-
let descriptionKey;
110+
let descriptionKey = 'permitSimulationDetailInfo';
111111
if (isNFT) {
112112
descriptionKey = 'simulationDetailsApproveDesc';
113113
} else if (message.allowed === false) {
114114
// revoke permit
115115
descriptionKey = 'revokeSimulationDetailsDesc';
116-
} else {
117-
descriptionKey = 'permitSimulationDetailInfo';
118116
}
119117

120118
return (

ui/pages/confirmations/components/confirm/info/typed-sign/typed-sign-v4-simulation/value-display/value-display.tsx

+4-4
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,12 @@ import {
2828
formatAmount,
2929
formatAmountMaxPrecision,
3030
} from '../../../../../simulation-details/formatAmount';
31-
import { TOKEN_VALUE_UNLIMITED_THRESHOLD } from '../../../shared/constants';
31+
import {
32+
DAI_CONTRACT_ADDRESS,
33+
TOKEN_VALUE_UNLIMITED_THRESHOLD,
34+
} from '../../../shared/constants';
3235
import { getAmountColors } from '../../../utils';
3336

34-
export const DAI_CONTRACT_ADDRESS =
35-
'0x6B175474E89094C44Da98b954EedeAC495271d0F';
36-
3737
type PermitSimulationValueDisplayParams = {
3838
/** ID of the associated chain. */
3939
chainId: Hex;

ui/pages/confirmations/components/confirm/title/title.tsx

+9-22
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import {
55
import React, { memo, useMemo } from 'react';
66

77
import { TokenStandard } from '../../../../../../shared/constants/transaction';
8-
import { parseTypedDataMessage } from '../../../../../../shared/modules/transaction.utils';
98
import GeneralAlert from '../../../../../components/app/alert-system/general-alert/general-alert';
109
import { Box, Text } from '../../../../../components/component-library';
1110
import {
@@ -22,8 +21,8 @@ import { Confirmation, SignatureRequestType } from '../../../types/confirm';
2221
import { isSIWESignatureRequest } from '../../../utils';
2322
import { useIsNFT } from '../info/approve/hooks/use-is-nft';
2423
import { useTokenTransactionData } from '../info/hooks/useTokenTransactionData';
25-
import { DAI_CONTRACT_ADDRESS } from '../info/typed-sign/typed-sign-v4-simulation/value-display/value-display';
2624
import { getIsRevokeSetApprovalForAll } from '../info/utils';
25+
import { getIsRevokeDAIPermit } from '../utils';
2726
import { useCurrentSpendingCap } from './hooks/useCurrentSpendingCap';
2827

2928
function ConfirmBannerAlert({ ownerId }: { ownerId: string }) {
@@ -87,16 +86,10 @@ const getTitle = (
8786
return t('setApprovalForAllRedesignedTitle');
8887
}
8988

90-
const msgData = (confirmation as SignatureRequestType)?.msgParams?.data;
91-
const {
92-
message,
93-
domain: { verifyingContract },
94-
} = parseTypedDataMessage(msgData as string);
95-
const revokeDAIPermit =
96-
message.allowed === false &&
97-
verifyingContract === DAI_CONTRACT_ADDRESS;
98-
99-
if (revokeDAIPermit) {
89+
const isRevokeDAIPermit = getIsRevokeDAIPermit(
90+
confirmation as SignatureRequestType,
91+
);
92+
if (isRevokeDAIPermit) {
10093
return t('confirmTitleRevokeApproveTransaction');
10194
}
10295

@@ -153,16 +146,10 @@ const getDescription = (
153146
return t('confirmTitleDescApproveTransaction');
154147
}
155148

156-
const msgData = (confirmation as SignatureRequestType)?.msgParams?.data;
157-
const {
158-
message,
159-
domain: { verifyingContract },
160-
} = parseTypedDataMessage(msgData as string);
161-
const revokeDAIPermit =
162-
message.allowed === false &&
163-
verifyingContract === DAI_CONTRACT_ADDRESS;
164-
165-
if (revokeDAIPermit) {
149+
const isRevokeDAIPermit = getIsRevokeDAIPermit(
150+
confirmation as SignatureRequestType,
151+
);
152+
if (isRevokeDAIPermit) {
166153
return '';
167154
}
168155

ui/pages/confirmations/components/confirm/utils.ts

+14
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
import { TransactionMeta } from '@metamask/transaction-controller';
2+
import { parseTypedDataMessage } from '../../../../../shared/modules/transaction.utils';
23
import { Confirmation, SignatureRequestType } from '../../types/confirm';
4+
import { DAI_CONTRACT_ADDRESS } from './info/shared/constants';
35

46
export const getConfirmationSender = (
57
currentConfirmation: Confirmation | undefined,
@@ -28,3 +30,15 @@ export const formatNumber = (value: number, decimals: number) => {
2830
});
2931
return formatter.format(value);
3032
};
33+
34+
export const getIsRevokeDAIPermit = (confirmation: SignatureRequestType) => {
35+
const msgData = confirmation?.msgParams?.data;
36+
const {
37+
message,
38+
domain: { verifyingContract },
39+
} = parseTypedDataMessage(msgData as string);
40+
const isRevokeDAIPermit =
41+
message.allowed === false && verifyingContract === DAI_CONTRACT_ADDRESS;
42+
43+
return isRevokeDAIPermit;
44+
};

0 commit comments

Comments
 (0)