Skip to content

Commit

Permalink
fix: remove memo for solana networks
Browse files Browse the repository at this point in the history
  • Loading branch information
icfor committed Apr 15, 2024
1 parent 3800441 commit 144bd27
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 28 deletions.
57 changes: 30 additions & 27 deletions src/screens/staking/components/staking_section/staking_modal.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ import {
} from "@src/screens/staking/lib/staking_sdk/context/actions";
import { getSelectedAccount } from "@src/screens/staking/lib/staking_sdk/context/selectors";
import type { StakingNetworkInfo } from "@src/screens/staking/lib/staking_sdk/core";
import { networksWithMemo } from "@src/screens/staking/lib/staking_sdk/core";
import { mainNetworkDenom } from "@src/screens/staking/lib/staking_sdk/core/base";
import { solanaNetworks } from "@src/screens/staking/lib/staking_sdk/core/solana";
import { formatCoin } from "@src/screens/staking/lib/staking_sdk/formatters";
Expand Down Expand Up @@ -99,6 +100,8 @@ const StakingModal = () => {

if (!account) return null;

const hasMemo = networksWithMemo.has(account.networkId);

const amountNum = new BigNumber(amount);

const isValidAmount =
Expand Down Expand Up @@ -153,9 +156,7 @@ const StakingModal = () => {
isLoading ||
!isValidAmount ||
amountError ||
memoError ||
newAmountError ||
newMemoError
(hasMemo && (memoError || newAmountError || newMemoError))
)
return;

Expand Down Expand Up @@ -381,31 +382,33 @@ const StakingModal = () => {
</ModalError>
)}
</div>
<div className={styles.group}>
<Label>{t("stakingModal.memo")}</Label>
<FormInput
className={styles.input}
disabled={isLoading}
fullWidth
noFocusEffect
noMargin
onBlur={() => {
if (newMemoError !== memoError) {
setMemoError(newMemoError);
}
}}
onChange={(e) => {
if (memoError) {
setMemoError("");
}
{networksWithMemo.has(account.networkId) && (
<div className={styles.group}>
<Label>{t("stakingModal.memo")}</Label>
<FormInput
className={styles.input}
disabled={isLoading}
fullWidth
noFocusEffect
noMargin
onBlur={() => {
if (newMemoError !== memoError) {
setMemoError(newMemoError);
}
}}
onChange={(e) => {
if (memoError) {
setMemoError("");
}

setMemo(e.target.value);
}}
placeholder={t("optionalInput")}
value={memo}
/>
{!!memoError && <ModalError>{memoError}</ModalError>}
</div>
setMemo(e.target.value);
}}
placeholder={t("optionalInput")}
value={memo}
/>
{!!memoError && <ModalError>{memoError}</ModalError>}
</div>
)}
<HighlightButton
disabled={!!amountError || !!memoError || isLoading}
onClick={onSubmit}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ import {
getStakeAccountsForNetwork,
} from "@src/screens/staking/lib/staking_sdk/context/selectors";
import type { StakingNetworkInfo } from "@src/screens/staking/lib/staking_sdk/core";
import { networksWithMemo } from "@src/screens/staking/lib/staking_sdk/core";
import { mainNetworkDenom } from "@src/screens/staking/lib/staking_sdk/core/base";
import { solanaNetworks } from "@src/screens/staking/lib/staking_sdk/core/solana";
import { formatCoin } from "@src/screens/staking/lib/staking_sdk/formatters";
Expand Down Expand Up @@ -143,6 +144,7 @@ const UnstakingModal = () => {
).filter((acc) => ["activating", "active"].includes(acc.status));

const onClose = () => setSelectedAccount(stakingRef.current, null, null);
const hasMemo = account ? networksWithMemo.has(account?.networkId) : false;

const onSubmit = (e: any) => {
e?.preventDefault();
Expand All @@ -160,7 +162,7 @@ const UnstakingModal = () => {
}

const hasInputError =
amountError || memoError || newAmountError || newMemoError;
amountError || newAmountError || (hasMemo && (newMemoError || memoError));

if (
!selectedAccount ||
Expand Down
2 changes: 2 additions & 0 deletions src/screens/staking/lib/staking_sdk/core/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ export const networksWithStakeAccounts = new Set([
...Array.from(solanaNetworks),
]);

export const networksWithMemo = new Set([...Array.from(cosmosStakingNetworks)]);

export const walletsSupported = new Set([
...Array.from(cosmosWallets),
...Array.from(solanaWallets),
Expand Down

0 comments on commit 144bd27

Please sign in to comment.