Make react component registry more resiliant to duplication
it is possible in some cases plugins create a duplicate component registry or try to register a component that has already been registered. We should be more defensive about these situations.
Fixes #28821 - Make component registry resiliant to duplication
Some plugins might create a new registry or try to register a component
that is already registered. This moved the actual registry to the window
object and makes the ComponentRegistry class an interface for it. It
also allows registering the same component multiple times without