fix: episode transition, progress save, and seek alignment

This commit is contained in:
2026-05-15 02:22:43 +02:00
parent aa8df4fd54
commit 88edf87178
5 changed files with 42 additions and 20 deletions

View File

@@ -17,6 +17,7 @@ export interface PlayerState {
malID: number;
streamURL: string;
initialStreamToken: string;
startTimeSeconds: number;
shouldAutoPlay: boolean;
parsedSegments: SkipSegment[];
activeSegments: ActiveSegment[];
@@ -56,6 +57,7 @@ export const state: PlayerState = {
malID: 0,
streamURL: '/watch/proxy/stream',
initialStreamToken: '',
startTimeSeconds: 0,
shouldAutoPlay: false,
parsedSegments: [],
activeSegments: [],
@@ -102,6 +104,7 @@ export const initState = (c: HTMLElement): void => {
state.totalEpisodes = Number.parseInt(dataset(c, 'totalEpisodes'), 10);
state.streamURL = dataset(c, 'streamUrl') || '/watch/proxy/stream';
state.initialStreamToken = dataset(c, 'streamToken') || '';
state.startTimeSeconds = Number.parseFloat(dataset(c, 'startTimeSeconds') || '0') || 0;
// from session: previous page set this when autoplay triggered
state.shouldAutoPlay = sessionStorage.getItem('mal:autoplay-next') === 'true';
sessionStorage.removeItem('mal:autoplay-next');