/** * Add a menu item * * @param $id * @param $value * @param string $parent * @param array $meta * @param array $attributes * * @return \Codex\Menus\Node */ public function add($id, $value, $parent = 'root', array $meta = [], array $attributes = []) { $node = new Node($id, $this, $value); $node->setMeta($meta); $node->setAttribute($attributes); if ($this->items->has($parent)) { $parentNode = $this->items->get($parent); $parentNode->addChild($node); // $node->setParent($parentNode); $node->setMeta('data-parent', $parent); } $this->items->put($id, $node); return $node; }