A plugin's dynamic contribution — a React component rendered by the generic provider at the named
scope, so it inherits the React context there (free to use hooks like useTaskPane()) and contributes via
props.scope.contribution(). Renders null. Distinct from the scope's own DynamicCommandContributor
(a pure function): a plugin one may need hooks, so it is a component. Registered via
CommandRegistry.registerDynamic(name, …) and mounted by CommandScopeProvider.
A plugin's dynamic contribution — a React component rendered by the generic provider at the named scope, so it inherits the React context there (free to use hooks like
useTaskPane()) and contributes viaprops.scope.contribution(). Rendersnull. Distinct from the scope's own DynamicCommandContributor (a pure function): a plugin one may need hooks, so it is a component. Registered viaCommandRegistry.registerDynamic(name, …)and mounted by CommandScopeProvider.