Class LaravelUi5\Core\Parameters\Sources\CompositionParameterSource

implements ParameterSourceInterface

Self-discovering composition source. Aggregates slot proposals from the active dashboard's artifact tree (D10).

Activation. This source only fires when the active artifact (per Ui5ContextInterface::artifact()) implements Ui5DashboardInterface. For any other artifact (App, Card endpoint, Action, …) the source returns [] — composition is a dashboard-only concept.

Aggregation (D13). The source walks the active dashboard's tree in document order (dashboard → groups → tiles/cards), collecting each SlotProposableInterface artifact's getSlotProposals() map. Conflicting proposals for the same slot resolve first-write-wins; every subsequent conflicting proposal is logged via LoggerInterface::error() with the active dashboard's namespace+version, the slot name, the winning value

  • source artifact FQCN, and the losing value + source artifact FQCN. The dashboard still renders — the log is informational, not fatal.

v0.9 reach. The structural accessors that walk a full dashboard tree (getGroups(), group children) belong to the broader Dashboard API spec, not the narrowed Phase 5 SlottableInterface contract. Today this source aggregates the dashboard root only. The aggregator helper is structured to accept any iterable of artifacts so it picks up the full tree without code change once the structural API lands.

Methods