Skip to content

Commit 445b94c

Browse files
committed
fix(web): use loading and error states from hook
1 parent b1fee53 commit 445b94c

File tree

7 files changed

+53
-25
lines changed

7 files changed

+53
-25
lines changed

web/src/pages/MyTransactions/TransactionDetails/PreviewCardButtons/ExecuteTransactionButton.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ const ExecuteTransactionButton: React.FC = () => {
1616
const { id } = useTransactionDetailsContext();
1717
const refetchQuery = useQueryRefetch();
1818

19-
const { data: executeTransactionConfig } = useSimulateEscrowUniversalExecuteTransaction({
19+
const { data: executeTransactionConfig, isLoading, isError } = useSimulateEscrowUniversalExecuteTransaction({
2020
args: [BigInt(id)],
2121
});
2222

@@ -42,8 +42,8 @@ const ExecuteTransactionButton: React.FC = () => {
4242

4343
return (
4444
<Button
45-
isLoading={isSending}
46-
disabled={isSending}
45+
isLoading={isSending || isLoading}
46+
disabled={isSending || isLoading || isError}
4747
text="Execute Transaction"
4848
onClick={handleExecuteTransaction}
4949
/>

web/src/pages/MyTransactions/TransactionDetails/PreviewCardButtons/ProposeSettlementButton.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ const ProposeSettlementButton: React.FC<IProposeSettlementButton> = ({
2929
const { id } = useTransactionDetailsContext();
3030
const refetchQuery = useQueryRefetch();
3131

32-
const { data: proposeSettlementConfig } = useSimulateEscrowUniversalProposeSettlement({
32+
const { data: proposeSettlementConfig, isLoading, isError } = useSimulateEscrowUniversalProposeSettlement({
3333
args: [BigInt(id), parseEther(amountProposed)],
3434
});
3535

@@ -56,9 +56,9 @@ const ProposeSettlementButton: React.FC<IProposeSettlementButton> = ({
5656

5757
return (
5858
<Button
59-
isLoading={isSending}
60-
disabled={isSending || !isAmountValid}
61-
text={buttonText}
59+
isLoading={isSending || isLoading}
60+
disabled={isSending || !isAmountValid || isLoading || isError}
61+
text={buttonText}
6262
onClick={handleProposeSettlement}
6363
/>
6464
);

web/src/pages/MyTransactions/TransactionDetails/PreviewCardButtons/RaiseDisputeButton.tsx

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,15 +36,15 @@ const RaiseDisputeButton: React.FC<IRaiseDisputeButton> = ({ toggleModal, button
3636
return BigInt(arbitrationCost.toString()) > BigInt(balanceData.value.toString());
3737
},[arbitrationCost, balanceData]);
3838

39-
const { data: payArbitrationFeeByBuyerConfig } = useSimulateEscrowUniversalPayArbitrationFeeByBuyer({
39+
const { data: payArbitrationFeeByBuyerConfig, isLoading: isLoadingBuyerConfig, isError: isErrorBuyerConfig } = useSimulateEscrowUniversalPayArbitrationFeeByBuyer({
4040
query: {
4141
enabled: isBuyer || !insufficientBalance,
4242
},
4343
args: [BigInt(id)],
4444
value: arbitrationCost,
4545
});
4646

47-
const { data: payArbitrationFeeBySellerConfig } = useSimulateEscrowUniversalPayArbitrationFeeBySeller({
47+
const { data: payArbitrationFeeBySellerConfig, isLoading: isLoadingSellerConfig, isError: isErrorSellerConfig } = useSimulateEscrowUniversalPayArbitrationFeeBySeller({
4848
query: {
4949
enabled: !isBuyer && !insufficientBalance,
5050
},
@@ -95,8 +95,15 @@ const RaiseDisputeButton: React.FC<IRaiseDisputeButton> = ({ toggleModal, button
9595
return (
9696
<div>
9797
<Button
98-
isLoading={isSending}
99-
disabled={isSending || insufficientBalance}
98+
isLoading={isSending || isLoadingBuyerConfig || isLoadingSellerConfig}
99+
disabled={
100+
isSending ||
101+
insufficientBalance ||
102+
isLoadingBuyerConfig ||
103+
isLoadingSellerConfig ||
104+
isErrorBuyerConfig ||
105+
isErrorSellerConfig
106+
}
100107
text={buttonText}
101108
onClick={handleRaiseDispute}
102109
/>

web/src/pages/MyTransactions/TransactionDetails/PreviewCardButtons/TimeOutButton.tsx

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,11 @@ const TimeOutButton: React.FC = () => {
2020
const isBuyer = useMemo(() => address?.toLowerCase() === buyer?.toLowerCase(), [address, buyer]);
2121
const refetchQuery = useQueryRefetch();
2222

23-
const { data: timeOutByBuyerConfig } = useSimulateEscrowUniversalTimeOutByBuyer({
23+
const { data: timeOutByBuyerConfig, isLoading: isLoadingBuyerConfig, isError: isErrorBuyerConfig } = useSimulateEscrowUniversalTimeOutByBuyer({
2424
args: [BigInt(id)],
2525
});
2626

27-
const { data: timeOutBySellerConfig } = useSimulateEscrowUniversalTimeOutBySeller({
27+
const { data: timeOutBySellerConfig, isLoading: isLoadingSellerConfig, isError: isErrorSellerConfig } = useSimulateEscrowUniversalTimeOutBySeller({
2828
args: [BigInt(id)],
2929
});
3030

@@ -63,8 +63,14 @@ const TimeOutButton: React.FC = () => {
6363

6464
return (
6565
<Button
66-
isLoading={isSending}
67-
disabled={isSending}
66+
isLoading={isSending || isLoadingBuyerConfig || isLoadingSellerConfig}
67+
disabled={
68+
isSending ||
69+
isLoadingBuyerConfig ||
70+
isLoadingSellerConfig ||
71+
isErrorBuyerConfig ||
72+
isErrorSellerConfig
73+
}
6874
text="Claim full payment back"
6975
onClick={handleTimeout}
7076
/>

web/src/pages/MyTransactions/TransactionDetails/WasItFulfilled/Buttons/ClaimFullPaymentButton.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ const ClaimFullPaymentButton: React.FC = () => {
1717
const publicClient = usePublicClient();
1818
const { id } = useTransactionDetailsContext();
1919

20-
const { data: executeTransactionConfig } = useSimulateEscrowUniversalExecuteTransaction({
20+
const { data: executeTransactionConfig, isLoading, isError } = useSimulateEscrowUniversalExecuteTransaction({
2121
args: [id],
2222
});
2323

@@ -46,8 +46,8 @@ const ClaimFullPaymentButton: React.FC = () => {
4646
return (
4747
<>
4848
<Button
49-
isLoading={isSending}
50-
disabled={isSending}
49+
isLoading={isSending || isLoading}
50+
disabled={isSending || isLoading || isError}
5151
text={"No. Claim full payment"}
5252
onClick={handleExecuteTransaction}
5353
/>

web/src/pages/MyTransactions/TransactionDetails/WasItFulfilled/Buttons/ReleasePaymentButton.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ const ReleasePaymentButton: React.FC = () => {
1616
const { id, amount } = useTransactionDetailsContext();
1717
const refetchQuery = useQueryRefetch();
1818

19-
const { data: releaseFullPaymentConfig } = useSimulateEscrowUniversalPay({
19+
const { data: releaseFullPaymentConfig, isLoading, isError } = useSimulateEscrowUniversalPay({
2020
args: [id, amount],
2121
});
2222

@@ -44,8 +44,8 @@ const ReleasePaymentButton: React.FC = () => {
4444
return (
4545
<>
4646
<Button
47-
isLoading={isSending}
48-
disabled={isSending}
47+
isLoading={isSending || isLoading}
48+
disabled={isSending || isLoading || isError}
4949
text={"Yes. Release full payment"}
5050
onClick={handleReleasePayment}
5151
/>

web/src/pages/NewTransaction/NavigationButtons/DepositPaymentButton.tsx

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -93,15 +93,23 @@ const DepositPaymentButton: React.FC = () => {
9393
}
9494
}, [allowance, transactionValue]);
9595

96-
const { data: createNativeTransactionConfig } = useSimulateEscrowUniversalCreateNativeTransaction({
96+
const {
97+
data: createNativeTransactionConfig,
98+
isLoading: isLoadingNativeConfig,
99+
isError: isErrorNativeConfig,
100+
} = useSimulateEscrowUniversalCreateNativeTransaction({
97101
query: {
98102
enabled: isNativeTransaction && ethAddressPattern.test(finalRecipientAddress) && !insufficientBalance,
99103
},
100104
args: [deadlineTimestamp, transactionUri, finalRecipientAddress],
101105
value: transactionValue,
102106
});
103107

104-
const { data: createERC20TransactionConfig } = useSimulateEscrowUniversalCreateErc20Transaction({
108+
const {
109+
data: createERC20TransactionConfig,
110+
isLoading: isLoadingERC20Config,
111+
isError: isErrorERC20Config,
112+
} = useSimulateEscrowUniversalCreateErc20Transaction({
105113
query: {
106114
enabled:
107115
!isNativeTransaction &&
@@ -172,8 +180,15 @@ const DepositPaymentButton: React.FC = () => {
172180
return (
173181
<div>
174182
<StyledButton
175-
isLoading={isSending}
176-
disabled={isSending || insufficientBalance}
183+
isLoading={isSending || isLoadingNativeConfig || isLoadingERC20Config}
184+
disabled={
185+
isSending ||
186+
insufficientBalance ||
187+
isLoadingNativeConfig ||
188+
isLoadingERC20Config ||
189+
isErrorNativeConfig ||
190+
isErrorERC20Config
191+
}
177192
text={isNativeTransaction || isApproved ? "Deposit the Payment" : "Approve Token"}
178193
onClick={isNativeTransaction || isApproved ? handleCreateTransaction : handleApproveToken}
179194
/>

0 commit comments

Comments
 (0)