{% from 'partials/navigation-components.html' import breadcrumbs %}
{% from 'partials/page-hero/_macros.html' import hero_element as _hero_element, hero_section as _hero_section %}
{% from 'chirpui/button.html' import btn %}
{% from 'chirpui/hero.html' import page_hero %}
{# Compatibility wrappers for deferred/pruned surfaces that still import
hero macros from partials/page-hero.html. #}
{% def hero_element(element, page, config) %}
{{ _hero_element(element, page, config) }}
{% end %}
{% def hero_section(section, page, hero_context=none) %}
{{ _hero_section(section, page, hero_context ?? {}) }}
{% end %}
{% let _page = page ?? none %}
{% let _params = params ?? {} %}
{% let _posts = posts ?? [] %}
{% let _subsections = subsections ?? [] %}
{% let _title = _page?.title ?? section?.title ?? config?.title ?? 'Page' %}
{% let _description = _params?.description ?? _page?.metadata?.description ?? meta_desc ?? '' %}
{% let _content_type = _page?.type ?? _page?.metadata?.type ?? 'page' %}
{% let _eyebrow = _params?.eyebrow ?? ('Documentation' if _content_type == 'doc' else 'Section' if _page?.kind == 'section' else 'Page') %}
{% let _meta_parts = [] %}
{% let _child_total = (_posts | length) + (_subsections | length) %}
{% if _page?.date %}
{% set _ = _meta_parts.append('Updated ' ~ (_page.date | time_ago)) %}
{% end %}
{% if _child_total > 0 %}
{% set _ = _meta_parts.append(_child_total ~ ' item' ~ ('s' if _child_total != 1 else '')) %}
{% end %}
{% if _page?.version %}
{% set _ = _meta_parts.append('Version ' ~ _page.version) %}
{% end %}
{% call page_hero(title=_title, subtitle=_description, variant='editorial', background='solid', cls='page-hero page-hero--chirp') %}
{% slot eyebrow %}
{% if _page %}
{{ breadcrumbs(_page) }}
{% else %}
{{ _eyebrow }}
{% end %}
{% end %}
{% slot metadata %}
{% if _meta_parts | length > 0 %}
{{ _meta_parts | join(' ยท ') }}
{% end %}
{% slot actions %}
{% if _params?.hero_link?.href %}
{{ btn(_params.hero_link.label ?? 'Explore', href=_params.hero_link.href | absolute_url, variant='secondary') }}
{% end %}
{% end %}
{% end %}