{% do jsConfig().add('breadcrumbs', true) %}
{% set navigation = pimcore_build_nav({'active': document, 'root': document.property('languageRoot')}) %}
{% if not pimcore_placeholder('addBreadcrumb') is empty %}
{% set breadcrumbs = pimcore_placeholder('addBreadcrumb') %}
{% set parentPage = false %}
{% for breadcrumb in breadcrumbs %}
{% if breadcrumb is iterable and not breadcrumb.label is defined %}
{% for bc in breadcrumb | filter(bc => bc is iterable) %}
{% set parentPage = parentPage ?: navigation.findBy('id', bc.parentId) %}
{% set newPage = demi_getNavigationNewPage(bc) %}
{% if parentPage %}
{% do parentPage.addPage(newPage) %}
{% else %}
{% do navigation.addPage(newPage) %}
{% endif %}
{% set parentPage = newPage %}
{% endfor %}
{% else %}
{% set parentPage = parentPage ?: navigation.findBy('id', breadcrumb.parentId) %}
{% set newPage = demi_getNavigationNewPage(breadcrumb) %}
{% if parentPage %}
{% do parentPage.addPage(newPage) %}
{% else %}
{% do navigation.addPage(newPage) %}
{% endif %}
{% set parentPage = newPage %}
{% endif %}
{% endfor %}
{% endif %}
<ol class="breadcrumb {{ styleModifier|default('') }}">
{% set menuRenderer = pimcore_nav_renderer('menu') %}
{% do menuRenderer.setPartial('@ElementsDemiFrontend/Navigation/partials/breadcrumb.html.twig') %}
{{ menuRenderer.render(navigation) | raw }}
</ol>