{# Hero CTA - Reusable onboarding/introduction component Usage: {% from 'partials/hero_cta.html' import hero_cta %} {{ hero_cta( theme='amber', icon_class='fa-shield-alt', icon_shape='circle', title='Security Audit Log', description='Track every action in your training environment.', features=[ {'icon': 'fa-fingerprint', 'color': 'text-warning', 'label': 'Tamper-proof chain'}, {'icon': 'fa-search', 'color': 'text-info', 'label': 'Advanced filtering'}, ], show_condition='showHeroCTA', dismiss_method='dismissHeroCTA()', show_dismiss=true ) }} For complex content (integrations, setup steps), use the call block: {% call hero_cta(...) %}
...
{% endcall %} #} {% macro hero_cta( theme='indigo', icon_class='fa-info-circle', icon_shape='circle', title='', description='', features=none, show_condition='showHeroCTA', dismiss_method='dismissHeroCTA()', show_dismiss=true, cta_primary=none, cta_secondary=none, tip_text=none ) %}
{% if show_dismiss %} {% endif %}
{% if title %}

{{ title }}

{% endif %} {% if description %}

{{ description }}

{% endif %} {% if features %}
{% for feature in features %}
{{ feature.label }}
{% endfor %}
{% endif %} {# Caller content for custom sections (integrations, steps, etc.) #} {{ caller() if caller else '' }} {% if cta_primary or cta_secondary %}
{% if cta_primary %} {% endif %} {% if cta_secondary %} {% endif %}
{% endif %} {% if tip_text %}
{{ tip_text|safe }}
{% endif %}
{% endmacro %} {# Helper macro for integration cards #} {% macro integration_card(icon, title, description, link_text=none, link_url=none, button_text=none, button_action=none) %}
{{ title }}

{{ description }}

{% if link_url %} {{ link_text or 'Learn more' }} {% elif button_text %} {% endif %}
{% endmacro %} {# Helper macro for template buttons (metrics style) #} {% macro template_buttons(buttons) %}
{% for btn in buttons %} {% endfor %}
{% endmacro %} {# Helper macro for setup steps (cloud onboarding style) #} {% macro setup_step(number, title, description='') %}
{{ number }}
{{ title }}
{% if description %}

{{ description }}

{% endif %} {{ caller() if caller else '' }}
{% endmacro %}