From 29e8fe79049753d2ffacea532f000476f1d6a1d9 Mon Sep 17 00:00:00 2001
From: Alexander Rose <alexander.rose@weirdbyte.de>
Date: Mon, 30 May 2022 11:41:40 -0700
Subject: [PATCH] fix types

---
 src/mol-task/util/user-timing.ts       | 2 +-
 src/servers/model/utils/fetch-retry.ts | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/mol-task/util/user-timing.ts b/src/mol-task/util/user-timing.ts
index ea20f13ce..1f146ad09 100644
--- a/src/mol-task/util/user-timing.ts
+++ b/src/mol-task/util/user-timing.ts
@@ -7,7 +7,7 @@
 import { Task } from '../task';
 import { isProductionMode } from '../../mol-util/debug';
 
-const hasPerformance = (typeof performance !== 'undefined') && performance.mark && performance.measure;
+const hasPerformance = (typeof performance !== 'undefined') && !!performance.mark && performance.measure;
 const timingEnabled = hasPerformance && !isProductionMode;
 
 export namespace UserTiming {
diff --git a/src/servers/model/utils/fetch-retry.ts b/src/servers/model/utils/fetch-retry.ts
index 9ba80b112..024b1ff71 100644
--- a/src/servers/model/utils/fetch-retry.ts
+++ b/src/servers/model/utils/fetch-retry.ts
@@ -19,7 +19,8 @@ function isRetriableNetworkError(error: any) {
 export async function fetchRetry(url: string, timeout: number, retryCount: number, onRetry?: () => void): Promise<Response> {
     const controller = new AbortController();
     const id = setTimeout(() => controller.abort(), timeout);
-    const result = await retryIf(() => fetch(url, { signal: controller.signal }), {
+    const signal = controller.signal as any; // TODO: fix type
+    const result = await retryIf(() => fetch(url, { signal }), {
         retryThenIf: r => r.status === 408 /** timeout */ || r.status === 429 /** too many requests */ || (r.status >= 500 && r.status < 600),
         // TODO test retryCatchIf
         retryCatchIf: e => isRetriableNetworkError(e),
-- 
GitLab