fix live leaderbord details
This commit is contained in:
@@ -235,8 +235,9 @@ export function startAppVersionPollingHelper({ checkAppVersion, getAppVersionPol
|
||||
export function startOverlaySyncHelper({ getOverlaySyncTimer, setOverlaySyncTimer, getLocalStateDirty, hydrateFromBackend, getCurrentView, renderView }) {
|
||||
clearInterval(getOverlaySyncTimer());
|
||||
setOverlaySyncTimer(setInterval(async () => {
|
||||
if (getCurrentView() !== "overlay") return;
|
||||
if (!getLocalStateDirty()) await hydrateFromBackend();
|
||||
if (getCurrentView() === "overlay") renderView();
|
||||
renderView();
|
||||
}, 800));
|
||||
}
|
||||
|
||||
@@ -248,10 +249,10 @@ export function startOverlayRotationHelper({ getOverlayRotationTimer, setOverlay
|
||||
}, 8000));
|
||||
}
|
||||
|
||||
export function startOverlayLiveRefreshHelper({ getOverlayLiveRefreshTimer, setOverlayLiveRefreshTimer, getCurrentView, getOverlayViewMode, renderOverlay }) {
|
||||
export function startOverlayLiveRefreshHelper({ getOverlayLiveRefreshTimer, setOverlayLiveRefreshTimer, getCurrentView, getOverlayViewMode, refreshOverlayDynamics }) {
|
||||
clearInterval(getOverlayLiveRefreshTimer());
|
||||
setOverlayLiveRefreshTimer(setInterval(() => {
|
||||
if (getCurrentView() === "overlay" && ["leaderboard", "tv", "team"].includes(getOverlayViewMode())) renderOverlay();
|
||||
if (getCurrentView() === "overlay" && ["leaderboard", "speaker", "results", "tv", "team", "obs"].includes(getOverlayViewMode())) refreshOverlayDynamics();
|
||||
}, 250));
|
||||
}
|
||||
|
||||
@@ -418,12 +419,15 @@ export function handleSessionTimerTickHelper({ getActiveSession, isUntimedSessio
|
||||
return { changed: true };
|
||||
}
|
||||
|
||||
export function tickClockHelper({ dom, currentLanguage, handleSessionTimerTick, getActiveSession, getCurrentView, getOverlayMode, renderView, updateHeaderState }) {
|
||||
export function tickClockHelper({ dom, currentLanguage, handleSessionTimerTick, getActiveSession, getCurrentView, getOverlayMode, renderView, refreshTimingDynamics = () => {}, updateHeaderState }) {
|
||||
dom.clock.textContent = new Date().toLocaleString(currentLanguage() === "sv" ? "sv-SE" : "en-US");
|
||||
const timerState = handleSessionTimerTick();
|
||||
const active = getActiveSession();
|
||||
if (getCurrentView() === "timing" && active && (active.status === "running" || timerState.changed)) renderView();
|
||||
if (getCurrentView() === "timing" && active) {
|
||||
if (timerState.changed) renderView();
|
||||
else if (active.status === "running") refreshTimingDynamics();
|
||||
}
|
||||
if (getCurrentView() === "dashboard" && timerState.changed) renderView();
|
||||
if (getOverlayMode() && getCurrentView() === "overlay" && active) renderView();
|
||||
if (getOverlayMode() && getCurrentView() === "overlay" && active && timerState.changed) renderView();
|
||||
if (timerState.changed) updateHeaderState();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user