@wordpress/editor
Version:
Enhanced block editor for WordPress posts.
31 lines (30 loc) • 1.04 kB
JavaScript
// packages/editor/src/components/provider/use-network-reconnect.js
import { useEffect } from "@wordpress/element";
import { useRegistry } from "@wordpress/data";
import { store as uploadStore } from "@wordpress/upload-media";
import { unlock } from "../../lock-unlock.mjs";
function useNetworkReconnect() {
const isEnabled = window.__clientSideMediaProcessing;
const registry = useRegistry();
useEffect(() => {
if (!isEnabled) {
return;
}
const handleOffline = () => {
unlock(registry.dispatch(uploadStore)).pauseQueue();
};
const handleOnline = () => {
unlock(registry.dispatch(uploadStore)).resumeQueue();
};
window.addEventListener("offline", handleOffline);
window.addEventListener("online", handleOnline);
return () => {
window.removeEventListener("offline", handleOffline);
window.removeEventListener("online", handleOnline);
};
}, [isEnabled, registry]);
}
export {
useNetworkReconnect as default
};
//# sourceMappingURL=use-network-reconnect.mjs.map