react-native-theoplayer
Version:
A THEOplayer video component for react-native.
29 lines (27 loc) • 821 B
JavaScript
;
import { CachingTaskEventType } from 'react-native-theoplayer';
import { useEffect, useState } from 'react';
/**
* A convenience hook that keeps the current status of a caching task.
*
* @category Caching
* @public
*/
export const useCachingTaskStatus = (task, debug = false) => {
const [status, setStatus] = useState(task.status);
useEffect(() => {
const onStateChange = () => {
const status = task.status;
if (debug) {
console.log('[MediaCache] state change', status);
}
setStatus(status);
};
task.addEventListener(CachingTaskEventType.statechange, onStateChange);
return () => {
task.removeEventListener(CachingTaskEventType.statechange, onStateChange);
};
}, []);
return status;
};
//# sourceMappingURL=useCachingTaskStatus.js.map