Interface LaravelUi5\Core\Ui5\Contracts\Ui5CardInterface

extends Ui5ArtifactInterface, SlotProposableInterface

Contract for UI5 Card artifacts.

A Card is a lightweight, embeddable UI element that typically displays summary or entry-point information. Identity, title, description come from {@see Ui5ArtifactInterface}; slot machinery from {@see SlotProposableInterface} (a Card both requires and proposes slots).

The Card straddles two consumers:

  • At the card endpoint (card/{ns}@{ver}/manifest.json): CardController uses the legacy seats — {@see getManifest()} returns the SAP integration manifest, {@see getProvider()} wires the data side. These signatures are unchanged from today.

  • In the Dashboard JSON: the Card's emitter ({@see \LaravelUi5\Core\Ui5\Dashboard\Emitters\CardEmitter}) calls {@see getCard()} for the consumer's template, builds the server-constructed URL (card/{ns}@{ver}/manifest.json?{boundParams}), and injects via {@see Card::withManifest()}. The SAP widget fetches and renders that manifest itself; bound-params flow to the card endpoint via the URL query string — the existing pattern.

Cards are read-only artifacts — they must not change application state.

Emitter selection is owned by the {@see \LaravelUi5\Core\Ui5\Dashboard\Contracts\DashboardTransformerInterface} via instanceof dispatch. See atom ARTIFACT_AS_DTO_FACTORY.md.

Methods
Methods inherited from LaravelUi5\Core\Ui5\Contracts\Ui5ArtifactInterface
getModule(), getNamespace(), getType(), getVersion(), getTitle(), getDescription()
Methods inherited from LaravelUi5\Core\Ui5\Capabilities\SlotProposableInterface
getSlotProposals()
Methods inherited from LaravelUi5\Core\Ui5\Capabilities\SlottableInterface
getRequiredSlots()