diff --git a/static/player/state.ts b/static/player/state.ts index 72da63b..d60f721 100644 --- a/static/player/state.ts +++ b/static/player/state.ts @@ -4,6 +4,11 @@ import { q, qs, dataset } from '../q' export interface PlayerState { container: HTMLElement video: HTMLVideoElement + progress: HTMLElement + scrubber: HTMLElement + buffered: HTMLElement + timeDisplay: HTMLElement + durationDisplay: HTMLElement modeSources: Record availableModes: string[] currentMode: string @@ -38,6 +43,11 @@ export interface PlayerState { export const state: PlayerState = { container: null as unknown as HTMLElement, video: null as unknown as HTMLVideoElement, + progress: null as unknown as HTMLElement, + scrubber: null as unknown as HTMLElement, + buffered: null as unknown as HTMLElement, + timeDisplay: null as unknown as HTMLElement, + durationDisplay: null as unknown as HTMLElement, modeSources: {}, availableModes: [], currentMode: 'dub', @@ -72,6 +82,11 @@ export const state: PlayerState = { export const initState = (c: HTMLElement): void => { state.container = c state.video = q(c, 'video')! + state.progress = q(c, '[data-progress]') + state.scrubber = q(c, '[data-scrubber]') + state.buffered = q(c, '[data-buffered]') + state.timeDisplay = q(c, '[data-time]') + state.durationDisplay = q(c, '[data-duration]') state.previewPopover = q(c, '[data-preview-popover]') state.previewTime = q(c, '[data-preview-time]') state.videoOverlay = q(c, '[data-video-overlay]') diff --git a/static/player/timeline.ts b/static/player/timeline.ts index 55ad9c1..a7967b6 100644 --- a/static/player/timeline.ts +++ b/static/player/timeline.ts @@ -73,7 +73,7 @@ export const getBufferedEnd = (): number => { } export const updateTimeline = (currentTime: number): void => { - const { progress, scrubber, timeDisplay, durationDisplay, buffered } = getTimelineEls() + const { progress, scrubber, timeDisplay, durationDisplay, buffered } = state const b = getBounds() if (b.duration <= 0) {