← Files Codex Security CloudARCHIVED FILE

.internal/defense-factory-ui/src/hooks/use-media-query.ts

582 Bytes · Oct 4, 2026 · 12:24 UTC

↓ Download file

import { useCallback, useSyncExternalStore } from "react";

const getServerSnapshot = () => false;

export function useMediaQuery(query: string): boolean {
  const subscribe = useCallback(
    (onChange: () => void) => {
      const media = window.matchMedia(query);
      media.addEventListener("change", onChange);
      return () => media.removeEventListener("change", onChange);
    },
    [query],
  );
  const getSnapshot = useCallback(
    () => window.matchMedia(query).matches,
    [query],
  );

  return useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
}

SHA-256: 6187c218b83c87c46316b77e2febe52ee39f8fdd2bbed0d5522f109a3583fc1c