Component Family Map

leaf viewmodels, modeled payloads, readonly projections, and the uniform lifecycle surface

Dark SVG source uses the VMx architecture palette and keeps arrows behind masked component boxes.

Leaf ownership

  • ComponentVM owns one addressable surface and no children.
  • Modeled variants add payload semantics without changing the lifecycle contract.
  • Readonly modeled leaves are projections for immutable state.

Uniform behavior

  • Leaf VMs still expose lifecycle, selection, property, and command surfaces.
  • Selection is parent-aware, so a standalone leaf cannot accidentally select itself.
  • Model and hint updates are observable through hub and per-instance binding streams.

Best fit

  • Use leaves for rows, panels, action bars, status blocks, and render-ready projections.
  • Wrap leaves with forwarding decorators when adapting behavior is cleaner than subclassing.
  • Promote to Composite, Group, Aggregate, or Hierarchical only when child ownership appears.