Class LaravelUi5\Core\Ui5\Dashboard\DefaultDashboardTransformer

implements DashboardTransformerInterface

Core's baseline transformer.

1:1 walk of the artifact hierarchy — every group and every child becomes an emitter, except artifacts a registered vetoer hides. Suppression is not done by subclassing: an injected {@see VetoChain} (empty by default — the no-op Core case) is consulted per group and per child, and Hide verdicts prune that node before its emitter is built (pre-data). Downstream concerns — access, lifecycle, personalization — register a {@see \LaravelUi5\Core\Ui5\Emit\Veto\VetoerInterface} via container tag and compose by union; none ships its own transformer.

Builds the emitter tree bottom-up via match (true) instanceof dispatch in {@see buildLeafEmitter()} — the entire artifact→emitter map fits on a screen. No EmittableInterface, no class-string indirection. The artifact controls the DTO it produces — a Card via its getCard() factory, a Tile via its TileProviderInterface; the transformer controls which emitter wraps the artifact (via the instanceof dispatch).

Build methods are protected (not private) so a subclass can still override one if it must — but the veto chain is the intended seat for visibility, not subclassing.

Methods