Skip to content
docsv0.34.0

SectionHeaderComponent

The header the host puts above every section — its title and who declared it (wireframe 1a of greenhouse decisions/0203: «Título · declarada por <Plugin>»; decided for every section, the panel's own included, in decisions/0210). The attribution is the catalogue's fact, not the section's: `SectionCatalogue::declaredBy()` names the plugin class whose `adminSections()` returned it, and the shell hands that name here as `declaredBy`. A section never says who declared it — the host does, so a guest cannot borrow another plugin's name; and it cannot repaint this header either, because the {@see ComponentBook} refuses a section that brings its own definition under `admin-section-header` (or any other name the panel registers itself). No actions: a header shows; the section below acts.

SectionHeaderComponent::contract()

public static function contract(): Milpa\Live\ValueObjects\ComponentContract

The contract: the section's title as the shell resolved it, and the declaring plugin's class (`''` when unknown).

SectionHeaderComponent::mount()

public function mount(array $props, Milpa\Live\ValueObjects\ComponentContext $context): Milpa\Live\ValueObjects\StateSnapshot

Mount: the title and the declaring class, as strings — anything else is empty, never invented.

Parameters

Parameters of mount()
NameTypeDescription
$propsarray
$contextMilpa\Live\ValueObjects\ComponentContext

SectionHeaderComponent::handle()

public function handle(Milpa\Live\ValueObjects\InteractionRequest $request): Milpa\Live\ValueObjects\InteractionResult

No action is declared: the header shows, the section below acts.

Parameters

Parameters of handle()
NameTypeDescription
$requestMilpa\Live\ValueObjects\InteractionRequest