Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 3094 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 3094 Rev 3095
Línea 1... Línea 1...
1
import { useLayoutEffect, useState } from 'react'
1
import { useLayoutEffect, useState } from 'react'
Línea 2... Línea -...
2
 
-
 
3
const IS_SERVER = typeof window === 'undefined'
-
 
4
 
2
 
5
export function useMediaQuery(
3
export function useMediaQuery(
6
  query,
4
  query,
7
  { defaultValue = false, initializeWithValue = true }
5
  options = { defaultValue: false, initializeWithValue: true }
8
) {
6
) {
9
  const getMatches = (query) => {
-
 
10
    if (IS_SERVER) {
-
 
11
      return defaultValue
-
 
12
    }
7
  const getMatches = (query) => {
13
    return window.matchMedia(query).matches
8
    return window.matchMedia(query).matches
Línea 14... Línea 9...
14
  }
9
  }
15
 
10
 
16
  const [matches, setMatches] = useState(() => {
11
  const [matches, setMatches] = useState(() => {
17
    if (initializeWithValue) {
12
    if (options.initializeWithValue) {
18
      return getMatches(query)
13
      return getMatches(query)
19
    }
14
    }
Línea 20... Línea 15...
20
    return defaultValue
15
    return options.defaultValue
21
  })
16
  })
22
 
17