summaryrefslogtreecommitdiff
path: root/packages/taler-wallet-webextension/src/components/WalletActivity.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'packages/taler-wallet-webextension/src/components/WalletActivity.tsx')
-rw-r--r--packages/taler-wallet-webextension/src/components/WalletActivity.tsx16
1 files changed, 13 insertions, 3 deletions
diff --git a/packages/taler-wallet-webextension/src/components/WalletActivity.tsx b/packages/taler-wallet-webextension/src/components/WalletActivity.tsx
index 1dde08010..48a562098 100644
--- a/packages/taler-wallet-webextension/src/components/WalletActivity.tsx
+++ b/packages/taler-wallet-webextension/src/components/WalletActivity.tsx
@@ -716,12 +716,22 @@ function ErroDetailModal({ error, onClose }: { error: TalerErrorDetail, onClose:
export function ActiveTasksTable({ }: {}): VNode {
const { i18n } = useTranslationContext()
const api = useBackendContext();
- const state = useAsyncAsHook(() =>
- api.wallet.call(WalletApiOperation.GetActiveTasks, {}),
- );
+ const state = useAsyncAsHook(() => {
+ return api.wallet.call(WalletApiOperation.GetActiveTasks, {});
+ });
const [showError, setShowError] = useState<TalerErrorDetail>()
const tasks = state && !state.hasError ? state.response.tasks : [];
+ useEffect(() => {
+ if (!state || state.hasError) return
+ const lastTimeout = setTimeout(() => {
+ state.retry();
+ }, 1000)
+ return () => {
+ clearTimeout(lastTimeout)
+ }
+ }, [tasks])
+
// const listenAllEvents = Array.from<NotificationType>({ length: 1 });
// listenAllEvents.includes = () => true
// useEffect(() => {