summaryrefslogtreecommitdiffhomepage
path: root/gui/src
diff options
context:
space:
mode:
authorOskar Nyberg <oskar@mullvad.net>2020-05-13 09:49:27 +0200
committerOskar Nyberg <oskar@mullvad.net>2020-05-19 12:48:25 +0200
commit8c8a885929b6e6a73fe4f054330a90c953068fdb (patch)
tree2a6b55f10e5d6f7d927fcc6435328662fc1ccd5a /gui/src
parentdbae930768678ef93aacfce4aa21e6c358f1ceb6 (diff)
downloadmullvadvpn-8c8a885929b6e6a73fe4f054330a90c953068fdb.tar.xz
mullvadvpn-8c8a885929b6e6a73fe4f054330a90c953068fdb.zip
Add useScheduler hook
Diffstat (limited to 'gui/src')
-rw-r--r--gui/src/shared/scheduler.ts12
1 files changed, 12 insertions, 0 deletions
diff --git a/gui/src/shared/scheduler.ts b/gui/src/shared/scheduler.ts
index 103fe9b584..b31f0cda7c 100644
--- a/gui/src/shared/scheduler.ts
+++ b/gui/src/shared/scheduler.ts
@@ -1,3 +1,5 @@
+import { useEffect, useMemo } from 'react';
+
export class Scheduler {
private timer?: NodeJS.Timeout;
@@ -12,3 +14,13 @@ export class Scheduler {
}
}
}
+
+export function useScheduler() {
+ const closeScheduler = useMemo(() => new Scheduler(), []);
+
+ useEffect(() => {
+ return () => closeScheduler.cancel();
+ }, []);
+
+ return closeScheduler;
+}