@equinor/fusion-observable
Version:
16 lines • 595 B
JavaScript
import { useLayoutEffect } from 'react';
/**
* Apply side effect to Reactive Subject.
*
* __IMPORTANT__ observable returned from flow must return new action or will create infinite loop
*/
export const useObservableFlow = (subject, epic) => {
useLayoutEffect(() => {
const subscription = subject.addFlow(epic);
return () => subscription.unsubscribe();
}, [subject, epic]);
};
/** @deprecated since 8.0.3 renamed to useObservableFlow */
export const useObservableEpic = useObservableFlow;
export default useObservableFlow;
//# sourceMappingURL=useObservableFlow.js.map