final | |
|---|---|
readonly | |
implements |
CacheSerializable |
The runtime projection of a route-bearing entry point — either a Concept's canonical front door ({@see ConceptEntry}, inbound) or a contributed doorway ({@see Weave}, outbound). The shared shape both attributes resolve to.
Returned by the registry's inbound/outbound entry seams. The owning app's
namespace + version make the target concrete; route is relative to the
artifact root (positional {0} filled by the crossing key at render). Which
list it lives in (inbound vs outbound) encodes its direction. label/icon
are carried only by outbound entries (menu items); inbound front doors leave
them null. label is the contributing app's weave.<concept>.label in every
language of its bundle, resolved when the registry is built.
The crossing key is not carried here — it belongs to the Concept (its instance key), resolved once against the Concept at render. Implements {@see CacheSerializable} so it round-trips the registry cache structurally; otherwise the cached registry would flatten it to its class name.
| Methods | ||
|---|---|---|
public
|
__construct(
string $concept,
string $appNamespace,
string $appVersion,
string $route,
?BundleText $label = null,
?string $icon = null,
)
|
# |
public
|
toCache(): array
|
# |
public
static
|
fromCache(array $data): static
|
# |
| Properties | |||
|---|---|---|---|
public
|
string
|
$concept
|
# |
public
|
string
|
$appNamespace
|
# |
public
|
string
|
$appVersion
|
# |
public
|
string
|
$route
|
# |
public
|
?BundleText
|
$label
|
# |
public
|
?string
|
$icon
|
# |