Prop Forwarding
In components that both consume and forward props, destructure only the props consumed by that component and collect all remaining props in ...rest. If only part of the props object can be forwarded unchanged, pass the remaining rest object directly to child components, even when they receive unused props. When different children consume different forwarded props, pass the same rest object to each child. Whenever possible, pass the entire props object instead of creating a rest object. Intermediate components must not rename, alias, derive, reshape, or individually remap props solely for forwarding. Pass the original props object unchanged. Align the producer and consuming leaf component on a single canonical prop contract instead. An intermediate component may construct a prop only when it originates or consumes the value itself.