"use client"; import { useSyncExternalStore } from "react"; /** Whether a CSS media query matches, kept current. False during prerendering. */ export function useMediaQuery(query: string): boolean { return useSyncExternalStore( (onChange) => { const list = window.matchMedia(query); list.addEventListener("change", onChange); return () => list.removeEventListener("change", onChange); }, () => window.matchMedia(query).matches, () => false, ); }