{"version":3,"file":"useMatchMedia.cjs","sources":["../../../../src/internal/hooks/useMatchMedia.tsx"],"sourcesContent":["import {useState, useEffect} from 'react';\n\n/**\n * React hook, use to match media queries\n * @see https://fireship.io/snippets/use-media-query-hook/\n */\nexport const useMatchMedia = (query: string) => {\n    const [matches, setMatches] = useState(false);\n\n    useEffect(() => {\n        const media = window.matchMedia(query);\n        // fallback for usage in tests\n        if (!window.matchMedia) {\n            return;\n        }\n        if (media.matches !== matches) {\n            setMatches(media.matches);\n        }\n        const listener = () => setMatches(media.matches);\n        media.addEventListener('change', listener);\n        return () => media.removeEventListener('change', listener);\n    }, [matches, query]);\n\n    return matches;\n};\n"],"names":["useMatchMedia","query","matches","setMatches","useState","useEffect","media","listener"],"mappings":"sHAMaA,EAAiBC,GAAkB,CAC5C,KAAM,CAACC,EAASC,CAAU,EAAIC,EAAAA,SAAS,EAAK,EAE5CC,OAAAA,EAAAA,UAAU,IAAM,CACZ,MAAMC,EAAQ,OAAO,WAAWL,CAAK,EAErC,GAAI,CAAC,OAAO,WACR,OAEAK,EAAM,UAAYJ,GAClBC,EAAWG,EAAM,OAAO,EAE5B,MAAMC,EAAW,IAAMJ,EAAWG,EAAM,OAAO,EAC/C,OAAAA,EAAM,iBAAiB,SAAUC,CAAQ,EAClC,IAAMD,EAAM,oBAAoB,SAAUC,CAAQ,CAC7D,EAAG,CAACL,EAASD,CAAK,CAAC,EAEZC,CACX"}