{# templates/bundles/SyliusAdminBundle/Layout/_menu.html.twig #}
{% extends '@!SyliusAdmin/Layout/_menu.html.twig' %}
{% block sylius_admin_sidebar_menu %}
{{ knp_menu_render('sylius.admin.main', {
template: '@SyliusUi/Menu/sidebar.html.twig',
depth: 3,
currentClass: 'active',
ancestorClass: 'active',
allow_safe_labels: true
}) }}
<script>
(function () {
const root = document.querySelector('.sylius-admin-menu .menu') || document;
const parents = root.querySelectorAll('.item.has-children');
parents.forEach(function (p) {
const key = p.getAttribute('data-key') || ('group-' + Math.random().toString(36).slice(2));
if (localStorage.getItem('sb:' + key) === 'open') p.classList.add('is-open');
const trigger = p.querySelector(':scope > a.item, :scope > .title') || p;
trigger.addEventListener('click', function (e) {
e.preventDefault();
p.classList.toggle('is-open');
localStorage.setItem('sb:' + key, p.classList.contains('is-open') ? 'open' : 'closed');
});
});
})();
</script>
{% endblock %}