export const useStream = <E, A>(stream: Stream.Stream<never, E, A>): A | undefined => {
const [state, setState] = useState<A | undefined>(undefined);
useEffect(() => {
const program = pipe(
stream,
Stream.runForEach(s => Effect.succeed(setState(s))),
Stream.runDrain
)
Effect.runFork(program)
})
return state;
}
export const useStream = <E, A>(stream: Stream.Stream<never, E, A>): A | undefined => {
const [state, setState] = useState<A | undefined>(undefined);
useEffect(() => {
const program = pipe(
stream,
Stream.runForEach(s => Effect.succeed(setState(s))),
Stream.runDrain
)
Effect.runFork(program)
})
return state;
}