|
|
|
@ -1,8 +1,10 @@
@@ -1,8 +1,10 @@
|
|
|
|
|
import { useCallback } from "react"; |
|
|
|
|
import { useCallback, useEffect, useMemo, useRef } from "react"; |
|
|
|
|
|
|
|
|
|
import { usePlayerStore } from "@/stores/player/store"; |
|
|
|
|
import { useVolumeStore } from "@/stores/volume"; |
|
|
|
|
|
|
|
|
|
import { useCaptions } from "./useCaptions"; |
|
|
|
|
|
|
|
|
|
export function useInitializePlayer() { |
|
|
|
|
const display = usePlayerStore((s) => s.display); |
|
|
|
|
const volume = useVolumeStore((s) => s.volume); |
|
|
|
@ -15,3 +17,21 @@ export function useInitializePlayer() {
@@ -15,3 +17,21 @@ export function useInitializePlayer() {
|
|
|
|
|
init, |
|
|
|
|
}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
export function useInitializeSource() { |
|
|
|
|
const source = usePlayerStore((s) => s.source); |
|
|
|
|
const sourceIdentifier = useMemo( |
|
|
|
|
() => (source ? JSON.stringify(source) : null), |
|
|
|
|
[source] |
|
|
|
|
); |
|
|
|
|
const { selectLastUsedLanguageIfEnabled } = useCaptions(); |
|
|
|
|
|
|
|
|
|
const funRef = useRef(selectLastUsedLanguageIfEnabled); |
|
|
|
|
useEffect(() => { |
|
|
|
|
funRef.current = selectLastUsedLanguageIfEnabled; |
|
|
|
|
}, [selectLastUsedLanguageIfEnabled]); |
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
if (sourceIdentifier) funRef.current(); |
|
|
|
|
}, [sourceIdentifier]); |
|
|
|
|
} |
|
|
|
|