30 lines
646 B
PHP
30 lines
646 B
PHP
<?php
|
|
|
|
namespace App\Menu;
|
|
|
|
use Knp\Menu\FactoryInterface;
|
|
use Knp\Menu\ItemInterface;
|
|
|
|
final class MenuBuilder
|
|
{
|
|
public function __construct(private FactoryInterface $factory)
|
|
{
|
|
|
|
}
|
|
|
|
|
|
public function createMainMenu(array $options): ItemInterface
|
|
{
|
|
$menu = $this->factory->createItem('root');
|
|
$menu->setAttribute('id', 'id-144');
|
|
$menu->setAttribute('aria-label', 'Menu Main');
|
|
|
|
$menu->addChild('app_home', ['route' => 'app_home']);
|
|
$menu->addChild('app_direct1', ['route' => 'app_home']);
|
|
$menu->addChild('app_direct2', ['route' => 'app_home']);
|
|
|
|
return $menu;
|
|
}
|
|
|
|
|
|
} |