@@ -7,8 +7,9 @@ import { useSelector } from "@/hooks/useTypedSelector";
7
7
import { openVerificationModal } from "@/store/feature/kyc.slice" ;
8
8
import { Wallet } from "@/types/wallet" ;
9
9
import { ReactElement , useCallback , useMemo } from "react" ;
10
+ import AddressDisplay from "./AddressDisplay" ;
10
11
11
- interface CashoutAddressProps {
12
+ interface CashoutProps {
12
13
wallet : Wallet ;
13
14
setShowEditModal : ( show : boolean ) => void ;
14
15
disabled : boolean ;
@@ -21,12 +22,11 @@ interface CashoutAddressProps {
21
22
*
22
23
* @returns {ReactElement }
23
24
*/
24
- export default function CashoutAddress ( { wallet, setShowEditModal, disabled, setShowPayoutModal, testId = "cashoutAddressId" } : CashoutAddressProps ) : ReactElement {
25
+ export default function Cashout ( { wallet, setShowEditModal, disabled, setShowPayoutModal, testId = "cashoutAddressId" } : CashoutProps ) : ReactElement {
25
26
const { t } = useTranslation ( ) ;
26
27
const dispatch = useDispatch ( ) ;
27
28
const user = useSelector ( ( state ) => state . user . data ) ;
28
- const isKycVerified = user ?. kycStatus === "VERIFIED" ;
29
- const address = useMemo ( ( ) => ( wallet . address ? wallet . address . match ( / .{ 1 , 4 } / g) : null ) , [ wallet . address ] ) ;
29
+ const isKycVerified = useMemo ( ( ) => user ?. kycStatus === "VERIFIED" , [ user ?. kycStatus ] ) ;
30
30
const cashable = useMemo ( ( ) => String ( wallet . token ) . toUpperCase ( ) !== "DAC" , [ wallet . token ] ) ;
31
31
32
32
const triggerEditAddress = useCallback ( ( ) => {
@@ -58,24 +58,7 @@ export default function CashoutAddress({ wallet, setShowEditModal, disabled, set
58
58
return (
59
59
< div className = "px-7 pt-6 flex-1 pb-24 lg:pb-24" data-testid = { testId } >
60
60
{ cashable ? (
61
- < div className = "text-sm text-gray-700" >
62
- { address ? (
63
- < p className = "leading-5 text-sm flex gap-x-2 gap-y-1 flex-wrap font-mono font-normal" >
64
- { address . map ( ( part , index ) => (
65
- < span key = { `address-${ index } ` } className = "mr-2" >
66
- { part }
67
- </ span >
68
- ) ) }
69
- </ p >
70
- ) : (
71
- < p > { wallet . description } </ p >
72
- ) }
73
- < div className = "text-gray-700 text-sm mt-3" >
74
- < span className = "cursor-pointer hover:underline" onClick = { triggerEditAddress } >
75
- { address ? t ( "profile.wallets.address-change" ) : t ( "profile.wallets.address-set" ) }
76
- </ span >
77
- </ div >
78
- </ div >
61
+ < AddressDisplay walletAddress = { wallet . address } description = { wallet . description } triggerEditAddress = { triggerEditAddress } />
79
62
) : (
80
63
< div className = "prose" >
81
64
< p
0 commit comments