jobiqo-cl
Version:
[](https://circleci.com/gh/jobiqo/jobiqo-cl)
38 lines (32 loc) • 1.08 kB
JavaScript
;
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;