Skip to content

Conversation

@poliver
Copy link
Member

@poliver poliver commented Dec 5, 2025

This branch is a couple weeks old, so rebasing had a bunch on conflicts which haven't been addressed yet. Figured I'd throw a draft up here before fixing for some visibility and to see if other folks like this pattern.

This PR introduces Molecule to NodeListViewModel to clean up its Flow combination logic. This circumvents the arg count limitations of Flow.combine() while maintaining type safety when combining many Flows. Instead of using the Flow.combine() operator, Molecule allows us to collect the needed flows in a VM-level Composable, then construct the desired emission which is still exposed to the UI as a Flow.

Copy link
Collaborator

@jamesarich jamesarich left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Boy this does clean up the viewmodel quite a bit, though I'm a bit nervous to take on a dependency that ties us into a specific architecture/pattern. I've been bitten by this in the past.. anyone remember https://github.com/airbnb/epoxy 😬 ?

I'd have to better understand what relying on this would mean for the project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request needs-review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants