// ets_tracing: off import * as E from "../../../../Either/index.js" import * as O from "../../../../Option/index.js" import type * as C from "../core.js" import * as CollectWhile from "./collectWhile.js" /** * Terminates the stream when encountering the first `Right`. */ export function collectWhileLeft( self: C.Stream> ): C.Stream { return CollectWhile.collectWhile_( self, E.fold( (l) => O.some(l), (_) => O.none ) ) }