recoil-toolkit
Version:
21 lines • 746 B
JavaScript
import { createElement, useEffect, useState } from 'react';
import { useRecoilCurrentSet } from '../_core';
import { reduxState } from './atoms';
import { RecoilReduxContext } from './context';
export const RecoilReduxBridge = ({ store, children }) => {
const set = useRecoilCurrentSet();
const [sub, setSub] = useState(false);
useEffect(() => {
const unsub = store.subscribe(() => {
set(reduxState, store.getState());
});
set(reduxState, store.getState());
setSub(true);
return unsub;
}, []);
return createElement(RecoilReduxContext.Provider, {
children: sub ? children : undefined,
value: { store },
});
};
//# sourceMappingURL=RecoilReduxBridge.js.map