Design system

App shell

Componentes que definem o envolvimento do site: cabeçalho fixo, rodapé, logótipo, ligações de fontes, layouts Astro que devolvem um documento HTML completo (placeholder, arquivo e ficha CPT), o layout legado usado nalgumas rotas WordPress, e a integração WordPress (blocos Gutenberg, SEO, artigos, eventos, i18n).

Catálogo de blocos de conteúdo →

Chrome

Shell ID

nomia-chrome-header

Componente

NomiaHeader

src/components/navigation/header/NomiaHeader.astro

Cabeçalho fixo com navegação, pesquisa e script de contraste sobre superfícies claras (atributo data-nomia-header-surface). Já montado no topo desta página — não duplicar em pré-visualização.

Head

Layouts (documento completo)

Shell ID

nomia-appshell-base-layout

Componente

BaseLayout

src/layouts/BaseLayout.astro

Documento mínimo para rotas WordPress (pt/en): FontLinks, slot de conteúdo e rodapé NomiaFooter — não aninhar dentro de outra página.

Shell ID

nomia-layout-placeholder-shell

Componente

NomiaPlaceholderShell

src/components/layout/NomiaPlaceholderShell.astro

Página placeholder: documento completo com html, header Nomia, main com título e lead, e footer. Usada em rotas estáticas até haver conteúdo WordPress.

Shell ID

nomia-layout-cpt-archive-shell

Componente

NomiaCptArchiveShell

src/components/content/cpt/NomiaCptArchiveShell.astro

Listagem CPT: documento completo com header, lista de entradas (ligação por uri WordPress) e footer. Props: pageTitle, items.

Shell ID

appshell-cpt-single-shell

Componente

AppshellCptSingleShell

src/components/content/cpt/AppshellCptSingleShell.astro

Ficha CPT: documento completo com título, data, HTML de conteúdo e ligação ao arquivo. Props: title, dateIso, contentHtml, archiveHref, archiveLabel.

Integração WordPress

Block ID

nomia-integration-wp-block-renderer

Componente

WpBlockRenderer

src/components/wp-blocks/WpBlockRenderer.astro

Motor de renderização de blocos Gutenberg — compor a partir de dados WPGraphQL, não como secção isolada.

Block ID

nomia-integration-wp-block

Componente

WpBlock

src/components/wp-blocks/WpBlock.astro

Despacho por tipo de bloco (`__typename`) para os mapeamentos em `wp-blocks/blocks/`.

Block ID

nomia-integration-wp-core-heading

Componente

CoreHeading

src/components/wp-blocks/blocks/CoreHeading.astro

Componente de documento completo — não pré-visualizar aqui (evita header/footer duplicados).

Block ID

nomia-integration-wp-core-paragraph

Componente

CoreParagraph

src/components/wp-blocks/blocks/CoreParagraph.astro

Componente de documento completo — não pré-visualizar aqui (evita header/footer duplicados).

Block ID

nomia-integration-wp-core-image

Componente

CoreImage

src/components/wp-blocks/blocks/CoreImage.astro

Componente de documento completo — não pré-visualizar aqui (evita header/footer duplicados).

Block ID

nomia-integration-seo

Componente

SEO

src/components/layout/SEO.astro

Meta tags e JSON-LD — incluir no `<head>` das páginas.

Block ID

nomia-integration-wp-article

Componente

WpArticle

src/components/content/WpArticle.astro

Componente de documento completo — não pré-visualizar aqui (evita header/footer duplicados).

Block ID

nomia-integration-wp-homepage-content

Componente

WpHomepageContent

src/components/content/WpHomepageContent.astro

Componente de documento completo — não pré-visualizar aqui (evita header/footer duplicados).

Block ID

nomia-integration-evento-detail

Componente

EventoDetail

src/components/content/EventoDetail.astro

Componente de documento completo — não pré-visualizar aqui (evita header/footer duplicados).

Block ID

nomia-integration-language-switcher

Componente

LanguageSwitcher

src/components/navigation/LanguageSwitcher.astro

Comutador de idioma quando existem rotas localizadas (pt/en).