about summary refs log tree commit diff
path: root/app/javascript/themes/glitch/util/schedule_idle_task.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/javascript/themes/glitch/util/schedule_idle_task.js')
-rw-r--r--app/javascript/themes/glitch/util/schedule_idle_task.js29
1 files changed, 0 insertions, 29 deletions
diff --git a/app/javascript/themes/glitch/util/schedule_idle_task.js b/app/javascript/themes/glitch/util/schedule_idle_task.js
deleted file mode 100644
index b04d4a8ee..000000000
--- a/app/javascript/themes/glitch/util/schedule_idle_task.js
+++ /dev/null
@@ -1,29 +0,0 @@
-// Wrapper to call requestIdleCallback() to schedule low-priority work.
-// See https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API
-// for a good breakdown of the concepts behind this.
-
-import Queue from 'tiny-queue';
-
-const taskQueue = new Queue();
-let runningRequestIdleCallback = false;
-
-function runTasks(deadline) {
-  while (taskQueue.length && deadline.timeRemaining() > 0) {
-    taskQueue.shift()();
-  }
-  if (taskQueue.length) {
-    requestIdleCallback(runTasks);
-  } else {
-    runningRequestIdleCallback = false;
-  }
-}
-
-function scheduleIdleTask(task) {
-  taskQueue.push(task);
-  if (!runningRequestIdleCallback) {
-    runningRequestIdleCallback = true;
-    requestIdleCallback(runTasks);
-  }
-}
-
-export default scheduleIdleTask;