Interface LaravelUi5\Core\Ui5\Contracts\ArtifactInterface

The neutral parent of every artifact the registry holds.

Nothing here is UI5-specific: a slug or a route is never asked of an artifact — the registry derives them from type, namespace and the module's version. So every kind — the UI5 types (Ui5AppInterface, Ui5CardInterface, …) and the non-UI5 kinds of the upper layers (the SDK's command, job and WorkUnit declarations) — extends this one contract directly. Whether an artifact has an address is its type's answer (CoreArtifactType::routePrefix()), whether it is an App is Ui5AppInterface's; no marker in between.

All artifacts declare a globally unique namespace, so they can be found and, where their type is routable, addressed. An artifact has no version of its own: it runs under its module's ({@see Ui5ModuleInterface::getVersion()}).

Methods