react-native-theoplayer
Version:
A THEOplayer video component for react-native.
33 lines (32 loc) • 1.03 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useCachingTaskStatus = void 0;
var _reactNativeTheoplayer = require("react-native-theoplayer");
var _react = require("react");
/**
* A convenience hook that keeps the current status of a caching task.
*
* @category Caching
* @public
*/
const useCachingTaskStatus = (task, debug = false) => {
const [status, setStatus] = (0, _react.useState)(task.status);
(0, _react.useEffect)(() => {
const onStateChange = () => {
const status = task.status;
if (debug) {
console.log('[MediaCache] state change', status);
}
setStatus(status);
};
task.addEventListener(_reactNativeTheoplayer.CachingTaskEventType.statechange, onStateChange);
return () => {
task.removeEventListener(_reactNativeTheoplayer.CachingTaskEventType.statechange, onStateChange);
};
}, []);
return status;
};
exports.useCachingTaskStatus = useCachingTaskStatus;
//# sourceMappingURL=useCachingTaskStatus.js.map