+ {/* Natural-flow virtualization: mounted items render as normal
+ flex siblings so `position: sticky` on the human bubble
+ resolves against the scroller without transform interference.
+ Padding spacers reserve scroll space for unmounted items. */}
+
+ {virtualItems.map(virtualItem => {
+ const group = groups[virtualItem.index]
+
+ if (!group) {
+ return null
+ }
+
+ return (
+
+ {group.kind === 'turn' ? (
+
+ {group.indices.map(index => (
+
+ ))}
+
+ ) : (
+
+ )}
+
+ )
+ })}
+
+ {loadingIndicator}
+ {clampToComposer && (
+
+ )}
+