name = $name; $this->type = $type; $this->callback = $callback; } /** * @param string $name * @param string $route * @param array $params * * @return Link */ public function link(string $name, string $route = '', array $params = []): Link { $link = new Link($name, $route, $params); $this->link[] = $link; return $link; } /** * @return array */ public function render(): array { $list = []; foreach ($this->link as $class) { $list[] = [ 'nodeName' => 'a-doption', 'child' => $class->render(), ]; } return [ 'nodeName' => 'a-dropdown', 'child' => [ [ 'nodeName' => 'a-button', 'type' => $this->type, 'child' => $this->name ], [ 'nodeName' => 'div', 'vSlot:content' => '', 'child' => $list ] ] ]; } }