add top bar
This commit is contained in:
@@ -87,10 +87,12 @@
|
||||
configListPath: "root",
|
||||
queue: [],
|
||||
runner: { state: "idle", message: "" },
|
||||
queuePollTimer: null,
|
||||
pendingQueueMissionId: null,
|
||||
};
|
||||
|
||||
let queuePollRefs = 0;
|
||||
let queuePollTimer = null;
|
||||
|
||||
function newId() {
|
||||
if (typeof crypto !== "undefined" && crypto.randomUUID) return crypto.randomUUID();
|
||||
return `m_${Date.now().toString(36)}_${Math.random().toString(36).slice(2, 8)}`;
|
||||
@@ -714,15 +716,27 @@
|
||||
|
||||
function startQueuePoll() {
|
||||
if (window.AuthApp && !window.AuthApp.isReady()) return;
|
||||
stopQueuePoll();
|
||||
refreshQueue();
|
||||
store.queuePollTimer = setInterval(refreshQueue, 1500);
|
||||
queuePollRefs += 1;
|
||||
if (queuePollRefs === 1) {
|
||||
refreshQueue();
|
||||
queuePollTimer = setInterval(refreshQueue, 1500);
|
||||
}
|
||||
}
|
||||
|
||||
function stopQueuePoll() {
|
||||
if (store.queuePollTimer) {
|
||||
clearInterval(store.queuePollTimer);
|
||||
store.queuePollTimer = null;
|
||||
if (queuePollRefs <= 0) return;
|
||||
queuePollRefs -= 1;
|
||||
if (queuePollRefs === 0 && queuePollTimer) {
|
||||
clearInterval(queuePollTimer);
|
||||
queuePollTimer = null;
|
||||
}
|
||||
}
|
||||
|
||||
function stopQueuePollForce() {
|
||||
queuePollRefs = 0;
|
||||
if (queuePollTimer) {
|
||||
clearInterval(queuePollTimer);
|
||||
queuePollTimer = null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1381,5 +1395,5 @@
|
||||
}
|
||||
if (window.AuthApp?.isReady()) boot();
|
||||
else window.addEventListener("lm:auth-ready", boot, { once: true });
|
||||
window.addEventListener("lm:auth-logout", stopQueuePoll);
|
||||
window.addEventListener("lm:auth-logout", stopQueuePollForce);
|
||||
})();
|
||||
|
||||
Reference in New Issue
Block a user