feat(home): prova no topo, contato sem atrito e conversão medida
Home mais curta (hero, vitrine de clientes, sobre, serviços, IA resumida, depoimentos e contato), faixa de clientes e telas reais no hero, sem números do GitHub. Barra de cookies fina, WhatsApp fixo no celular, formulário com e-mail opcional e alternativa por e-mail, página /ia, eventos de e-mail, redes e currículo e conversão do Ads opcional por variável. Rodapé em 3 colunas. Remove componentes órfãos (LighthouseMetrics, Skills, Experience, contagem do GitHub).
This commit is contained in:
1 parent
6e1022b58c
commit
8d07b8c6bb
60 files changed
+4392
-2124
No files matched your search
@@ -34,6 +34,26 @@ function renderLink() {
|
||||
return screen.getByRole("link", { name: "Conversar no WhatsApp" });
|
||||
}
|
||||
|
||||
it("talks about the service when one is given", () => {
|
||||
const url = new URL(renderLink().getAttribute("href") || "");
|
||||
expect(url.searchParams.get("text")).toBe(
|
||||
"Olá, Evandro! Quero conversar sobre Sistemas web. Contato iniciado pelo site evandro.dev.br.",
|
||||
);
|
||||
});
|
||||
|
||||
it("talks about 'um projeto' when no service is given", () => {
|
||||
render(<WhatsAppLink placement="contact_direct">Conversar</WhatsAppLink>);
|
||||
|
||||
const url = new URL(
|
||||
screen.getByRole("link", { name: "Conversar" }).getAttribute("href") || "",
|
||||
);
|
||||
const text = url.searchParams.get("text");
|
||||
expect(text).toBe(
|
||||
"Olá, Evandro! Quero conversar sobre um projeto. Contato iniciado pelo site evandro.dev.br.",
|
||||
);
|
||||
expect(text).not.toContain("Contato.");
|
||||
});
|
||||
|
||||
it.each([null, "denied", "{malformed", '"granted"'])(
|
||||
"keeps a native destination without collecting or replaying when consent is %s",
|
||||
async (consent) => {
|
||||
|
||||
Reference in new issue
Block a user