Seed

JavaScript (seed.js)

O seed.js é um arquivo JavaScript mínimo incluído automaticamente em toda página. Ele adiciona interatividade essencial sem dependências externas.

O que o seed.js faz

FeatureComponenteComo funciona
Nav dropdown@navClique no item com subitems abre/fecha o dropdown
Nav hamburger@navClique no burger mostra/oculta o menu mobile
Nav mobile accordion@navItems com subitems no mobile abrem em accordion
Navbar toggle.navbarSuporte ao componente navbar legado
Accordion trigger.accordion-triggerToggle de aria-expanded para accordions CSS
FAQ toggle.faq-questionToggle de data-open para FAQs

Comportamento do nav

O seed.js faz 3 coisas automaticamente no @nav:

  • Move hrefs: O href do wrapper <div> é movido para o <a> interno (necessário porque div não aceita href como atributo válido)
  • Desktop dropdowns: Adiciona chevron e evento de clique nos items com subitems no menu desktop
  • Mobile: Configura o hamburger, o painel mobile, e os items com subitems em modo accordion

Fechar dropdowns

Ao clicar fora de qualquer dropdown desktop, todos os dropdowns são fechados automaticamente. O evento de stopPropagation no clique do trigger impede que o dropdown feche imediatamente ao ser aberto.

Customizando o seed.js

Não edite o seed.js diretamente — ele é sobrescrito a cada build. Para adicionar comportamentos próprios, crie um arquivo em src/static/ e inclua via extra_js no front matter:

```seed
---
title: Minha Página
extra_js:
  - /meu-script.js
---
```

Sem dependências

O seed.js não usa jQuery, frameworks ou bundlers. É JavaScript puro (ES5 para máxima compatibilidade), encapsulado em DOMContentLoaded.

ℹ️

O Tailwind CSS é carregado via CDN (https://cdn.tailwindcss.com) no head de cada página. Para produção, considere usar o build do Tailwind para purging de classes não usadas.