fix: show error message correctly (#2705)
This commit is contained in:
parent
e883ef5c5e
commit
01e7b8caee
@ -5,12 +5,14 @@ interface StakeFailureProps {
|
|||||||
nodeName: string;
|
nodeName: string;
|
||||||
isDialogVisible: boolean;
|
isDialogVisible: boolean;
|
||||||
toggleDialog: () => void;
|
toggleDialog: () => void;
|
||||||
|
error: Error | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const StakeFailure = ({
|
export const StakeFailure = ({
|
||||||
nodeName,
|
nodeName,
|
||||||
isDialogVisible,
|
isDialogVisible,
|
||||||
toggleDialog,
|
toggleDialog,
|
||||||
|
error,
|
||||||
}: StakeFailureProps) => {
|
}: StakeFailureProps) => {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
return (
|
return (
|
||||||
@ -20,11 +22,15 @@ export const StakeFailure = ({
|
|||||||
open={isDialogVisible}
|
open={isDialogVisible}
|
||||||
onChange={toggleDialog}
|
onChange={toggleDialog}
|
||||||
>
|
>
|
||||||
|
{error ? (
|
||||||
|
<p>{error.message}</p>
|
||||||
|
) : (
|
||||||
<p>
|
<p>
|
||||||
{t('stakeFailed', {
|
{t('stakeFailed', {
|
||||||
node: nodeName,
|
node: nodeName,
|
||||||
})}
|
})}
|
||||||
</p>
|
</p>
|
||||||
|
)}
|
||||||
</Dialog>
|
</Dialog>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -13,6 +13,7 @@ interface StakeFormTxStatusesProps {
|
|||||||
removeType: RemoveType;
|
removeType: RemoveType;
|
||||||
isDialogVisible: boolean;
|
isDialogVisible: boolean;
|
||||||
toggleDialog: () => void;
|
toggleDialog: () => void;
|
||||||
|
error: Error | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const StakingFormTxStatuses = ({
|
export const StakingFormTxStatuses = ({
|
||||||
@ -23,6 +24,7 @@ export const StakingFormTxStatuses = ({
|
|||||||
removeType,
|
removeType,
|
||||||
isDialogVisible,
|
isDialogVisible,
|
||||||
toggleDialog,
|
toggleDialog,
|
||||||
|
error,
|
||||||
}: StakeFormTxStatusesProps) => {
|
}: StakeFormTxStatusesProps) => {
|
||||||
switch (formState) {
|
switch (formState) {
|
||||||
case FormState.Requested:
|
case FormState.Requested:
|
||||||
@ -59,6 +61,7 @@ export const StakingFormTxStatuses = ({
|
|||||||
nodeName={nodeName}
|
nodeName={nodeName}
|
||||||
isDialogVisible={isDialogVisible}
|
isDialogVisible={isDialogVisible}
|
||||||
toggleDialog={toggleDialog}
|
toggleDialog={toggleDialog}
|
||||||
|
error={error}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
default:
|
default:
|
||||||
|
@ -70,6 +70,7 @@ export const StakingForm = ({
|
|||||||
const { appState } = useAppState();
|
const { appState } = useAppState();
|
||||||
const { sendTx } = useVegaWallet();
|
const { sendTx } = useVegaWallet();
|
||||||
const [formState, setFormState] = React.useState(FormState.Default);
|
const [formState, setFormState] = React.useState(FormState.Default);
|
||||||
|
const [error, setError] = useState<Error | null>(null);
|
||||||
const [isDialogVisible, setIsDialogVisible] = useState(false);
|
const [isDialogVisible, setIsDialogVisible] = useState(false);
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
const [action, setAction] = React.useState<StakeAction>(
|
const [action, setAction] = React.useState<StakeAction>(
|
||||||
@ -135,12 +136,15 @@ export const StakingForm = ({
|
|||||||
|
|
||||||
// await success via poll
|
// await success via poll
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
if (err instanceof Error) {
|
||||||
|
setError(err);
|
||||||
|
}
|
||||||
setFormState(FormState.Failure);
|
setFormState(FormState.Failure);
|
||||||
Sentry.captureException(err);
|
Sentry.captureException(err);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const [delegationSearch, { data, error }] = usePartyDelegationsLazyQuery({
|
const [delegationSearch, { data }] = usePartyDelegationsLazyQuery({
|
||||||
variables: {
|
variables: {
|
||||||
partyId: pubKey,
|
partyId: pubKey,
|
||||||
},
|
},
|
||||||
@ -170,10 +174,6 @@ export const StakingForm = ({
|
|||||||
clearInterval(interval);
|
clearInterval(interval);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (error) {
|
|
||||||
Sentry.captureException(error);
|
|
||||||
}
|
|
||||||
}, 1000);
|
}, 1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -306,6 +306,7 @@ export const StakingForm = ({
|
|||||||
removeType={removeType}
|
removeType={removeType}
|
||||||
isDialogVisible={isDialogVisible}
|
isDialogVisible={isDialogVisible}
|
||||||
toggleDialog={toggleDialog}
|
toggleDialog={toggleDialog}
|
||||||
|
error={error}
|
||||||
/>
|
/>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
|
Loading…
Reference in New Issue
Block a user