mirror of
https://github.com/zimplexing/OrionTV.git
synced 2026-03-01 16:04:46 +08:00
refactor: update play time property and enhance player settings management
- Changed the play time property from 'play_time' to 'time' in HomeScreen. - Removed unused player control functions from PlayScreen. - Added PlayerSettings interface and implemented PlayerSettingsManager for local storage of player settings. - Refactored PlayRecordManager to merge API records with local player settings. - Updated authentication logic in authStore to handle optional username parameter in login function. - Cleaned up and optimized imports across various components.
This commit is contained in:
@@ -27,11 +27,7 @@ interface PlayerState {
|
||||
introEndTime?: number;
|
||||
outroStartTime?: number;
|
||||
setVideoRef: (ref: RefObject<Video>) => void;
|
||||
loadVideo: (
|
||||
source: string,
|
||||
episodeIndex: number,
|
||||
position?: number
|
||||
) => Promise<void>;
|
||||
loadVideo: (source: string, episodeIndex: number, position?: number) => Promise<void>;
|
||||
playEpisode: (index: number) => void;
|
||||
togglePlayPause: () => void;
|
||||
seek: (duration: number) => void;
|
||||
@@ -86,10 +82,7 @@ const usePlayerStore = create<PlayerState>((set, get) => ({
|
||||
});
|
||||
|
||||
try {
|
||||
const playRecord = await PlayRecordManager.get(
|
||||
detail.source,
|
||||
detail.id.toString()
|
||||
);
|
||||
const playRecord = await PlayRecordManager.get(detail.source, detail.id.toString());
|
||||
set({
|
||||
isLoading: false,
|
||||
introEndTime: playRecord?.introEndTime,
|
||||
@@ -101,7 +94,6 @@ const usePlayerStore = create<PlayerState>((set, get) => ({
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
playEpisode: (index) => {
|
||||
const { episodes, videoRef } = get();
|
||||
if (index >= 0 && index < episodes.length) {
|
||||
@@ -209,12 +201,13 @@ const usePlayerStore = create<PlayerState>((set, get) => ({
|
||||
};
|
||||
PlayRecordManager.save(detail.source, detail.id.toString(), {
|
||||
title: detail.title,
|
||||
poster: detail.poster || "",
|
||||
cover: detail.poster || "",
|
||||
index: currentEpisodeIndex,
|
||||
total_episodes: episodes.length,
|
||||
play_time: status.positionMillis,
|
||||
total_time: status.durationMillis || 0,
|
||||
source_name: detail.source_name,
|
||||
year: detail.year || "",
|
||||
...existingRecord,
|
||||
...updates,
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user