Files
hudozka/src/hooks/useMediaQuery.ts
T
tmshv dd9058b798 rm two packages for hooks (#251)
* rm two packages for hooks

* fix navigation
2026-02-08 13:31:58 +07:00

14 lines
447 B
TypeScript

import { useSyncExternalStore } from "react"
export function useMediaQuery(query: string, defaultValue = false): boolean {
return useSyncExternalStore(
(callback) => {
const mql = window.matchMedia(query)
mql.addEventListener("change", callback)
return () => mql.removeEventListener("change", callback)
},
() => window.matchMedia(query).matches,
() => defaultValue,
)
}