themes-earthen/templates/overrides/earthen/sidebar-nav.ninjatpl
Alex Dunmow c2fc45e7f7 fix(earthen): kill placeholder copy, enrich home, wire stock media, size all SVGs, full-bleed article header
- seed: real Rootline Trust content — no 'example figures' placeholder copy;
  home composed as split hero (hands-soil image) + stats + feature-grid +
  botanical divider + field note + newsletter; About gap filled with fern
  image + impact report between story and pull-quote; first article expanded
  to ~10 field-notes paragraphs with inline forest image; 6 Pixabay images
  seeded via seed/media (id+file+alt)
- article.ninjatpl: header slot now full-bleed (was max-w-3xl wrapped — the
  boxed-header artifact bracketing the nav with vertical rules)
- landing.ninjatpl: main slot full-bleed so composed sections span the page
- SVG geometry guard: every <use>-icon svg now carries explicit width/height
  matching its size class (18 files)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 16:24:31 +08:00

14 lines
1.8 KiB
Plaintext

{# sidebar-nav (earthen) — vertical menu from the `menus` provider. Variants default | compact. highlight-current carried as a progressive-enhancement script keyed on data-bn-sidebar-link. Control flow, icon <use> and script preserved byte-for-byte; earthen skin only. #}
{% set compact = template == "compact" %}
<nav data-block-override="earthen:sidebar-nav" class="flex-1 {% if compact %}w-56 py-4 pr-3{% else %}w-64 py-6 pr-4{% endif %}{% if showBorder %} border-r border-border{% endif %}{% if class %} {{ class }}{% endif %}">
{% if title %}<h3 class="crayon-underline inline-block {% if compact %}px-2 mb-4 text-xs{% else %}px-3 mb-5 text-sm{% endif %} font-semibold" style="font-family:var(--font-heading, 'Fraunces', 'Playfair Display', Georgia, serif);color:hsl(var(--primary));">{{ title }}</h3>{% endif %}
<ul class="{% if compact %}space-y-0.5{% else %}space-y-1{% endif %}">
{% for item in menu.items %}
<li><a href="{{ item.url|default:'#' }}"{% if item.open_in_new_tab %} target="_blank" rel="noopener"{% endif %}{% if item.title %} title="{{ item.title }}"{% endif %} data-bn-sidebar-link class="flex items-center rounded-lg text-sm text-muted-foreground transition-colors hover:text-primary hover:bg-muted {% if compact %}px-2 py-1.5{% else %}px-3 py-2{% endif %} {{ item.css_class }}">{% if item.icon %}<svg width="16" height="16" class="mr-2 h-4 w-4 text-accent" aria-hidden="true"><use href="/icons/{{ item.icon|split:":"|first }}.svg#{{ item.icon|split:":"|last }}"></use></svg>{% endif %}{{ item.label }}</a></li>
{% endfor %}
</ul>
</nav>
{% if highlightCurrent %}<script>
(function(){var p=window.location.pathname;document.querySelectorAll('[data-bn-sidebar-link]').forEach(function(a){if(a.getAttribute('href')===p){a.classList.remove('text-muted-foreground');a.classList.add('text-foreground','bg-accent','font-medium');}});})();
</script>{% endif %}