{% 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 %}