'status-bar']; /** * Create a host or service status bar * * @param ServicestateSummary|HoststateSummary $summary */ public function __construct($summary) { $this->summary = $summary; } abstract protected function assembleTotal(BaseHtmlElement $total): void; abstract protected function createStateBadges(): BaseHtmlElement; protected function createCount(): BaseHtmlElement { $total = Html::tag('span', ['class' => 'item-count']); $this->assembleTotal($total); return $total; } protected function assemble(): void { $this->add([ $this->createCount(), $this->createStateBadges() ]); } }