bruno/renderer/providers/App/index.js

36 lines
792 B
JavaScript
Raw Normal View History

2022-03-22 13:48:20 +01:00
import React, { useEffect } from 'react';
import useIdb from './useIdb';
2022-03-22 13:48:20 +01:00
import { useDispatch } from 'react-redux';
import { refreshScreenWidth } from 'providers/ReduxStore/slices/app';
export const AppContext = React.createContext();
export const AppProvider = props => {
// boot idb
useIdb();
2022-03-22 13:48:20 +01:00
const dispatch = useDispatch();
useEffect(() => {
dispatch(refreshScreenWidth());
}, []);
useEffect(() => {
const handleResize = () => {
dispatch(refreshScreenWidth());
};
window.addEventListener('resize', handleResize);
return () => window.removeEventListener('resize', handleResize);
}, []);
return (
<AppContext.Provider {...props} value='appProvider'>
{props.children}
</AppContext.Provider>
);
};
export default AppProvider;