Fix tx fields not updating
This commit is contained in:
@@ -2,7 +2,7 @@ import { Play } from "phosphor-react";
|
|||||||
import { FC, useCallback, useEffect } from "react";
|
import { FC, useCallback, useEffect } from "react";
|
||||||
import { useSnapshot } from "valtio";
|
import { useSnapshot } from "valtio";
|
||||||
import transactionsData from "../content/transactions.json";
|
import transactionsData from "../content/transactions.json";
|
||||||
import state from "../state";
|
import state, { modifyTransaction } from "../state";
|
||||||
import { sendTransaction } from "../state/actions";
|
import { sendTransaction } from "../state/actions";
|
||||||
import Box from "./Box";
|
import Box from "./Box";
|
||||||
import Button from "./Button";
|
import Button from "./Button";
|
||||||
@@ -35,9 +35,8 @@ export interface TransactionState {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export interface TransactionProps {
|
export interface TransactionProps {
|
||||||
header?: string;
|
header: string;
|
||||||
state: TransactionState;
|
state: TransactionState;
|
||||||
setState: (p?: Partial<TransactionState>) => void;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const Transaction: FC<TransactionProps> = ({
|
const Transaction: FC<TransactionProps> = ({
|
||||||
@@ -50,11 +49,17 @@ const Transaction: FC<TransactionProps> = ({
|
|||||||
txIsDisabled,
|
txIsDisabled,
|
||||||
txIsLoading,
|
txIsLoading,
|
||||||
},
|
},
|
||||||
setState,
|
|
||||||
...props
|
...props
|
||||||
}) => {
|
}) => {
|
||||||
const { accounts } = useSnapshot(state);
|
const { accounts } = useSnapshot(state);
|
||||||
|
|
||||||
|
const setState = useCallback(
|
||||||
|
(pTx?: Partial<TransactionState>) => {
|
||||||
|
modifyTransaction(header, pTx);
|
||||||
|
},
|
||||||
|
[header]
|
||||||
|
);
|
||||||
|
|
||||||
const transactionsOptions = transactionsData.map(tx => ({
|
const transactionsOptions = transactionsData.map(tx => ({
|
||||||
value: tx.TransactionType,
|
value: tx.TransactionType,
|
||||||
label: tx.TransactionType,
|
label: tx.TransactionType,
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ const Accounts = dynamic(() => import("../../components/Accounts"), {
|
|||||||
const Test = () => {
|
const Test = () => {
|
||||||
const { transactionLogs } = useSnapshot(state);
|
const { transactionLogs } = useSnapshot(state);
|
||||||
const { transactions, activeHeader } = useSnapshot(transactionsState);
|
const { transactions, activeHeader } = useSnapshot(transactionsState);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Container css={{ px: 0 }}>
|
<Container css={{ px: 0 }}>
|
||||||
<Split
|
<Split
|
||||||
@@ -73,7 +74,6 @@ const Test = () => {
|
|||||||
<Transaction
|
<Transaction
|
||||||
state={state}
|
state={state}
|
||||||
header={header}
|
header={header}
|
||||||
setState={pTx => modifyTransaction(header, pTx)}
|
|
||||||
/>
|
/>
|
||||||
</Tab>
|
</Tab>
|
||||||
))}
|
))}
|
||||||
|
|||||||
Reference in New Issue
Block a user