summaryrefslogtreecommitdiffhomepage
path: root/gui/src
diff options
context:
space:
mode:
authorOskar Nyberg <oskar@mullvad.net>2021-06-15 12:05:02 +0200
committerOskar Nyberg <oskar@mullvad.net>2021-06-28 09:00:49 +0200
commit7a2593e312083c7bb7ef71982307dea8e62e41cc (patch)
treeb4a75166d60c1fbb40eaa916bab83b06ba6cc13f /gui/src
parentbf25dd0884358e74d1a298ebcd89ed8986477f29 (diff)
downloadmullvadvpn-7a2593e312083c7bb7ef71982307dea8e62e41cc.tar.xz
mullvadvpn-7a2593e312083c7bb7ef71982307dea8e62e41cc.zip
Make redeem voucher progress continue half a second before showing failure
Diffstat (limited to 'gui/src')
-rw-r--r--gui/src/renderer/components/RedeemVoucher.tsx8
1 files changed, 7 insertions, 1 deletions
diff --git a/gui/src/renderer/components/RedeemVoucher.tsx b/gui/src/renderer/components/RedeemVoucher.tsx
index 408c053bc6..0e837502b9 100644
--- a/gui/src/renderer/components/RedeemVoucher.tsx
+++ b/gui/src/renderer/components/RedeemVoucher.tsx
@@ -75,14 +75,20 @@ export function RedeemVoucherContainer(props: IRedeemVoucherProps) {
return;
}
+ const submitTimestamp = Date.now();
setSubmitting(true);
onSubmit?.();
const response = await submitVoucher(value);
+ // Show the spinner for at least half a second if it isn't successful.
+ const submitDuration = Date.now() - submitTimestamp;
+ if (response.type !== 'success' && submitDuration < 500) {
+ await new Promise((resolve) => setTimeout(resolve, 500 - submitDuration));
+ }
+
setSubmitting(false);
setResponse(response);
if (response.type === 'success') {
- setValue('');
closeScheduler.schedule(() => {
onSuccess?.();
}, 1000);