UNPKG

jobiqo-cl

Version:

[![CircleCI](https://circleci.com/gh/jobiqo/jobiqo-cl.svg?style=svg&circle-token=5a24efa5b8bbc4879276123e77d0d3f35ca7144c)](https://circleci.com/gh/jobiqo/jobiqo-cl)

38 lines (32 loc) 1.08 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } var React = require('react'); var React__default = _interopDefault(React); /** * @file index.tsx * * @fileoverview Help determine if the user is in mobile using matchmedia. */ const useIsMobile = theme => { const isClient = typeof window === 'object'; const [isMobile, setIsMobile] = React.useState(true); function getIsMobile() { if (isClient && window.matchMedia(`(max-width: ${theme.breakpoints[0]})`).matches) { setIsMobile(true); } else { setIsMobile(false); } } React.useEffect(() => { getIsMobile(); window.addEventListener('resize', handleResize); return () => window.removeEventListener('resize', handleResize); }, []); function handleResize() { getIsMobile(); } return isMobile; }; exports.useIsMobile = useIsMobile;