A single entry a provider contributes to the problem detail dialog's
metadata section via ProblemProvider.getMetadata.
Both arms render in the metadata section; the only difference is who owns
the rendered component:
built-in (no name): the platform renders the
ProblemMetadataProperty in props as a standard label/value
property.
custom (name set): a ComponentDescriptor for a component the
provider owns; the platform instantiates it and sets its props.
Because a provider returns an ordered array of these, built-in properties
and custom components can be mixed and ordered freely. Custom-component
entries may carry rules to gate their visibility; built-in properties are
always rendered (the platform renders them as flat cells, which have no
per-cell visibility gating — express a gated value as a component instead).
A single entry a provider contributes to the problem detail dialog's metadata section via ProblemProvider.getMetadata.
Both arms render in the metadata section; the only difference is who owns the rendered component:
name): the platform renders the ProblemMetadataProperty inpropsas a standard label/value property.nameset): a ComponentDescriptor for a component the provider owns; the platform instantiates it and sets itsprops.Because a provider returns an ordered array of these, built-in properties and custom components can be mixed and ordered freely. Custom-component entries may carry
rulesto gate their visibility; built-in properties are always rendered (the platform renders them as flat cells, which have no per-cell visibility gating — express a gated value as a component instead).