Files
ESPDocs/components/Logo.jsx
T
Lucas Rayan GuerraandClaude Sonnet 5.5 c61fa06532 feat(marca): atualiza logo, ícones, manifest e Open Graph para a identidade atual (#3)
- Logo em duas cores (teal + cobre), inline no cabeçalho e rodapé para
  seguir o tema do site; SVGs estáticos com prefers-color-scheme.
- scripts/generate-favicons.mjs passa a gerar favicons, ícones de app
  (maskable), site.webmanifest e a imagem Open Graph 1200x630.
- Manifest com fundo/tema obsidiana e lang pt-BR.


Claude-Session: https://claude.ai/code/session_016W1xmizFcmXLrmabSvfSuc

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 16:41:38 -03:00

33 lines
1013 B
React

/**
* Marca do ESPDocs: o encapsulamento do chip com pinos à esquerda; os pinos e
* o corpo viram linhas de texto, a documentação. Inline para seguir o tema do
* site (--accent e --copper trocam entre claro e escuro, ao contrário de uma
* imagem externa, que só enxerga a preferência do sistema).
*/
export default function Logo({ className = "h-8 w-8", title }) {
return (
<svg
viewBox="0 0 64 64"
className={className}
fill="none"
strokeLinecap="round"
role={title ? "img" : undefined}
aria-label={title}
aria-hidden={title ? undefined : "true"}
>
{title && <title>{title}</title>}
<g stroke="var(--accent)" strokeWidth="3.4">
<path d="M2 21h7" />
<path d="M2 32h7" />
<path d="M2 43h7" />
</g>
<rect x="9.25" y="9.25" width="45.5" height="45.5" rx="13" stroke="var(--accent)" strokeWidth="4.5" />
<g stroke="var(--copper)" strokeWidth="4.5">
<path d="M19 21h26" />
<path d="M19 32h21" />
<path d="M19 43h15" />
</g>
</svg>
);
}