{# Layout: sidebar + topbar + content slot La host app debe definir/override: - block title - block sidebar_nav → links (usar dg/components/sidebar_link.html) - block breadcrumbs - block topbar_actions → CTA extra (notificaciones, etc.) - block content - block extra_head, block extra_body Variables esperadas (opcionales): - user.email, user.is_admin - tokens_override_href → al CSS de tokens del cliente - logo_html → snippet HTML para sustituir el logotipo por defecto #} {% block title %}Datagrowth{% endblock %} {% if tokens_override_href %} {% endif %} {% block extra_head %}{% endblock %}
{% block logo %} datagrowth {% endblock %}
{% block topbar_actions %}{% endblock %} {% from "dg/components/theme_toggle.html" import theme_toggle %} {{ theme_toggle() }} {% if user %} {% if user.is_admin %} Admin {% endif %} {% endif %}
{% block content %}{% endblock %}
{% from "dg/components/toast.html" import toast_region %} {{ toast_region() }} {% block extra_body %}{% endblock %}