lazyPreviewSequence

Returns a Sequence that yields one CollectedPreview per element of factories, invoking each factory lambda the first time the corresponding element is requested.

Sample call (from compiler-plugin IR):

lazyPreviewSequence(
{ CollectedPreview("id1", "Preview1", ..., content = { Preview1() }) },
{ CollectedPreview("id2", "Preview2", ..., content = { Preview2() }) },
)

Result (semantically): a Sequence<CollectedPreview> that, when iterated to completion, returns both CollectedPreview instances in order. Each factory lambda is invoked at most once per iteration; partial consumption (take(1).toList()) leaves the second factory unevaluated. The returned sequence is multi-iterable: walking it twice invokes each factory twice.

The factory-lambda indirection is what enables the laziness — building a List of CollectedPreview directly would force every @Composable lambda inside each preview to be allocated up front.

Internal API — meant only as a callsite for the compiler plugin.