<aside> ๐ก ํน์ ์กฐ๊ฑด์ ๋ฐ๋ผ Send to ํ๋๊ฐ ๋ ๋๋ง ๋๋ ํ์ด์ง๊ฐ ์๋ค. react-hook-form์ ์ด์ฉํด to์ amount field๋ฅผ ๊ด๋ฆฌํ๊ณ , yup์ ํตํด์ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ์งํํ์๋ค. ๊ทธ๋ฐ๋ฐ Send to๊ฐ ํ์ํ์ง ์์ ํ์ด์ง์์ Valide๊ฐ ์ํ๋๋๋ก ๋์ํ์ง ์๋ ๊ฒ์ ํ์ธํ์๋ค.
</aside>
ํน์ to๊ฐ required๋ผ์ ๋ฐ์ํ ๊ฒ์ ์๋๊ฐ ์ถ์ด to๋ฅผ ์ํ ์ ํจ์ฑ ๊ฒ์ฌ ๋ก์ง์ ๋ฐ๋ก ๋ง๋ค์๋ค.
const determineIfToFieldIsRequired = (
value: string,
userDataAccount: string | undefined,
): boolean => {
return isToFieldRequired
? ethers.utils.isAddress(value) && value !== userDataAccount
: true;
};
const isToFieldValidate = determineIfToFieldIsRequired(
toFieldValue!,
userData?.account,
);
ํ์ง๋ง ๊ทธ๋ผ์๋ isValid๋ ๋ชจ๋๊ฐ ์ ํจํ ์ํฉ์์ false์กฐ๊ฑด์ธ ๊ฒ์ ํ์ธํ ์ ์์๋ค.
amount๊ฐ ํ๋ฐ์ ๋ฆ๊ฒ ์ ๋ฌ๋๊ณ ์๋ ๊ฑธ ํ์ธํ ์ ์์๋ค.