UNPKG

@w11r/use-breakpoint

Version:

React useBreakpoint hook to have different values for a variable based on a breakpoints.

27 lines (25 loc) 898 B
import React, { createContext, useState } from 'react'; import useResize from "./useResize"; // @ts-ignore export const getInnerWidth = () => typeof window !== 'undefined' ? window.innerWidth : global.innerWidth || 1920; // @ts-ignore export const getInnerHeight = () => typeof window !== 'undefined' ? window.innerHeight : global.innerHeight || 1080; export const defaultState = { innerWidth: getInnerWidth(), innerHeight: getInnerHeight() }; export const Context = /*#__PURE__*/createContext(defaultState); export const BreakpointProvider = (_ref) => { let { children } = _ref; const [value, setValue] = useState(defaultState); useResize(() => { setValue({ innerWidth: getInnerWidth(), innerHeight: getInnerHeight() }); }); return /*#__PURE__*/React.createElement(Context.Provider, { value: value }, children); }; export default BreakpointProvider;