UNPKG

react-browser-zoom

Version:

A React hook to monitor browser zoom level via devicePixelRatio.

29 lines 773 B
// src/useBrowserZoom.ts import { useState, useEffect, useCallback } from "react"; var getDpr = () => { return typeof window !== "undefined" ? window.devicePixelRatio || 1 : 1; }; function useBrowserZoom() { const [dpr, setDpr] = useState(getDpr); const handleResizeOrZoom = useCallback(() => { const currentDpr = getDpr(); setDpr((prevDpr) => { if (prevDpr !== currentDpr) { return currentDpr; } return prevDpr; }); }, []); useEffect(() => { handleResizeOrZoom(); window.addEventListener("resize", handleResizeOrZoom); return () => { window.removeEventListener("resize", handleResizeOrZoom); }; }, [handleResizeOrZoom]); return dpr; } export { useBrowserZoom }; //# sourceMappingURL=index.mjs.map