Paginas e SEO master
This commit is contained in:
Vendored
BIN
Binary file not shown.
Vendored
-246
File diff suppressed because one or more lines are too long
Vendored
-1
File diff suppressed because one or more lines are too long
Vendored
+70
-13
@@ -5,6 +5,36 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
|
||||
<!-- DETECAO DE AMBIENTE - Inline (executa antes de tudo) -->
|
||||
<script>
|
||||
(function() {
|
||||
var h = location.hostname;
|
||||
var IS_PROD = h === 'avanzato.com.br' || h === 'www.avanzato.com.br';
|
||||
|
||||
// Torna disponivel para outros scripts
|
||||
window.__IS_PROD__ = IS_PROD;
|
||||
|
||||
// Se NAO for producao, desativa tracking globalmente
|
||||
if (!IS_PROD) {
|
||||
window.__AVANZATO_ENV__ = h === 'hml.avanzato.com.br' ? 'homologation' : 'development';
|
||||
|
||||
// Bloqueia gtag
|
||||
window.dataLayer = { push: function(){} };
|
||||
window.gtag = function(){};
|
||||
|
||||
// Bloqueia fbq (Facebook Pixel)
|
||||
window.fbq = function(){};
|
||||
|
||||
// Bloqueia Mautic
|
||||
window.MauticSDKLoaded = true;
|
||||
|
||||
console.log('[Avanzato] Ambiente: ' + window.__AVANZATO_ENV__ + ' | Tracking bloqueado');
|
||||
} else {
|
||||
window.__AVANZATO_ENV__ = 'production';
|
||||
}
|
||||
})();
|
||||
</script>
|
||||
|
||||
<!-- Google tag (gtag.js) - Ads + Analytics -->
|
||||
<script async src="https://www.googletagmanager.com/gtag/js?id=AW-16714813566"></script>
|
||||
<script>
|
||||
@@ -69,7 +99,8 @@
|
||||
<!-- Primary Meta Tags -->
|
||||
<title>Avanzato Tecnologia | TI Gerenciada, Cloud e Seguranca em Guarulhos/SP</title>
|
||||
<meta name="title" content="Avanzato Tecnologia | TI Gerenciada, Cloud e Seguranca em Guarulhos/SP" />
|
||||
<meta name="description" content="Solucoes em TI Gerenciada, Cloud Computing e Seguranca da Informacao. +23 anos de experiencia, +500 clientes atendidos. Suporte 24/7 em Guarulhos e regiao." />
|
||||
<meta name="description" content="Solucoes em TI Gerenciada, Cloud Computing e Seguranca da Informacao. +23 anos de experiencia, +500 clientes atendidos. Suporte 24/7." />
|
||||
<meta name="app-version" content="1.3.4" />
|
||||
<meta name="keywords" content="TI Gerenciada, Cloud Computing, Seguranca da Informacao, Suporte Tecnico, Tecnologia da Informacao, Guarulhos, Sao Paulo, Infraestrutura de TI, Backup, Firewall, Consultoria TI" />
|
||||
<meta name="author" content="Avanzato Tecnologia" />
|
||||
<meta name="robots" content="index, follow" id="meta-robots" />
|
||||
@@ -78,9 +109,9 @@
|
||||
<!-- BLOQUEAR INDEXACAO EM HOMOLOGACAO -->
|
||||
<script>
|
||||
(function() {
|
||||
var hostname = window.location.hostname;
|
||||
if (hostname !== 'avanzato.com.br') {
|
||||
// Homologacao: bloquear indexacao
|
||||
// Usa IS_PROD ja definido no inicio do documento
|
||||
if (!window.__IS_PROD__) {
|
||||
// Homologacao/Desenvolvimento: bloquear indexacao
|
||||
document.getElementById('meta-robots').setAttribute('content', 'noindex, nofollow');
|
||||
document.getElementById('meta-googlebot').setAttribute('content', 'noindex, nofollow');
|
||||
// Adicionar tambem X-Robots-Tag via meta http-equiv
|
||||
@@ -88,7 +119,9 @@
|
||||
meta.httpEquiv = 'X-Robots-Tag';
|
||||
meta.content = 'noindex, nofollow';
|
||||
document.head.appendChild(meta);
|
||||
console.log('%c[SEO] Homologacao detectada - indexacao BLOQUEADA (noindex, nofollow)', 'background:#dc2626;color:#fff;font-weight:bold;padding:2px 6px;border-radius:3px');
|
||||
console.log('%c[SEO] ' + (window.__AVANZATO_ENV__ || 'nao-producao') + ' - indexacao BLOQUEADA', 'background:#dc2626;color:#fff;font-weight:bold;padding:2px 6px;border-radius:3px');
|
||||
} else {
|
||||
console.log('%c[SEO] Producao - indexacao PERMITIDA (index, follow)', 'background:#16a34a;color:#fff;font-weight:bold;padding:2px 6px;border-radius:3px');
|
||||
}
|
||||
})();
|
||||
</script>
|
||||
@@ -113,11 +146,9 @@
|
||||
<meta property="twitter:image" content="https://avanzato.com.br/og-image.jpg" />
|
||||
|
||||
<!-- Favicon -->
|
||||
<link rel="icon" type="image/svg+xml" href="./favicon.svg" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png" />
|
||||
<link rel="manifest" href="./site.webmanifest" />
|
||||
<link rel="icon" type="image/png" href="https://avanzato.com.br/favicon.png" />
|
||||
<link rel="shortcut icon" type="image/png" href="https://avanzato.com.br/favicon.png" />
|
||||
<link rel="manifest" href="/site.webmanifest" />
|
||||
|
||||
<!-- Theme Color -->
|
||||
<meta name="theme-color" content="#cbf400" />
|
||||
@@ -208,11 +239,37 @@
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<script type="module" crossorigin src="./assets/index-C1GgsDvQ.js"></script>
|
||||
<link rel="stylesheet" crossorigin href="./assets/index-Cg4oF5jQ.css">
|
||||
<script type="module" crossorigin src="/assets/index-DFuPBbfP.js"></script>
|
||||
<link rel="stylesheet" crossorigin href="/assets/index-CWiRqhwC.css">
|
||||
</head>
|
||||
<body>
|
||||
<div id="root"></div>
|
||||
<div id="root">
|
||||
<section class="hero">
|
||||
<h1>Avanzato Tecnologia - TI Gerenciada, Cloud e Seguranca</h1>
|
||||
<p>+23 anos de experiencia em TI para empresas. +500 clientes atendidos em Guarulhos, Sao Paulo e regiao.</p>
|
||||
<p>Servicos: Suporte Tecnico 24/7, Cloud Computing, Seguranca da Informacao, Backup Corporativo, VoIP, Firewall, Monitoramento.</p>
|
||||
<div><a href="/avaliacao">Avaliacao Gratuita</a> <a href="/contato">Falar com Especialista</a></div>
|
||||
</section>
|
||||
<section>
|
||||
<h2>Por que escolher a Avanzato?</h2>
|
||||
<ul>
|
||||
<li>Suporte 24/7 com equipe especializada</li>
|
||||
<li>+23 anos de experiencia em TI empresarial</li>
|
||||
<li>+500 clientes atendidos em diversos segmentos</li>
|
||||
<li>Atendimento em Guarulhos, Grande SP e interior</li>
|
||||
<li>Relatorios tecnicos mensais detalhados</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section>
|
||||
<h2>Segmentos que Atendemos</h2>
|
||||
<p>Contabilidades, Advocacias, Industrias, BPO, Clinicas, Imobiliarias, Condominios, Logistica, Monitoramento.</p>
|
||||
<p><a href="/onde-atuamos">Ver onde atuamos</a></p>
|
||||
</section>
|
||||
<section>
|
||||
<h2>Onde Atuamos</h2>
|
||||
<p>Guarulhos (matriz), Mogi das Cruzes, Ipiranga, Vila Formosa, Cerqueira Cesar, Santana, Bras, Ribeirao Preto.</p>
|
||||
<p><a href="/onde-atuamos">Ver todas as localidades</a></p>
|
||||
</section></div>
|
||||
|
||||
<!-- Facebook Pixel noscript (moved from head to body to fix parse5 warning) -->
|
||||
<noscript>
|
||||
|
||||
Vendored
+10
-23
@@ -1,26 +1,13 @@
|
||||
# =============================================================================
|
||||
# ROBOTS.TXT - VERSAO HOMOLOGACAO/DESENVOLVIMENTO
|
||||
# =============================================================================
|
||||
# Este arquivo BLOQUEIA TODOS os crawlers.
|
||||
#
|
||||
# Para PRODUCAO (avanzato.com.br), substitua por:
|
||||
# User-agent: *
|
||||
# Allow: /
|
||||
# Sitemap: https://avanzato.com.br/sitemap.xml
|
||||
# =============================================================================
|
||||
# ============================================================================
|
||||
# AVANZATO TECNOLOGIA - ROBOTS.TXT (GENERICO)
|
||||
# ============================================================================
|
||||
# O controle real de indexacao e feito pelo <meta name="robots"> no HTML:
|
||||
# - Producao (avanzato.com.br): index, follow
|
||||
# - Homologacao (hml.avanzato.com.br): noindex, nofollow
|
||||
# - Desenvolvimento (localhost): noindex, nofollow
|
||||
# ============================================================================
|
||||
|
||||
User-agent: *
|
||||
Disallow: /
|
||||
Allow: /
|
||||
|
||||
# Bloqueio explicito de todos os bots
|
||||
User-agent: Googlebot
|
||||
Disallow: /
|
||||
|
||||
User-agent: Bingbot
|
||||
Disallow: /
|
||||
|
||||
User-agent: Slurp
|
||||
Disallow: /
|
||||
|
||||
# Sitemap comentado (descomente em producao)
|
||||
# Sitemap: https://avanzato.com.br/sitemap.xml
|
||||
Sitemap: https://avanzato.com.br/sitemap.xml
|
||||
|
||||
Vendored
+74
@@ -165,4 +165,78 @@
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.9</priority>
|
||||
</url>
|
||||
|
||||
<!-- SEO Local - Onde Atuamos -->
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/onde-atuamos</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.9</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-guarulhos</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-mogi-das-cruzes</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-ipiranga</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-vila-formosa</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-cerqueira-cesar</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-santana</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-bras</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-ribeirao-preto</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
|
||||
<!-- Nichos adicionais -->
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-industria</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-portaria-remota</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-clinicas</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-imobiliarias</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://avanzato.com.br/suporte-ti-recrutamento-selecao</loc>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
</urlset>
|
||||
|
||||
@@ -100,6 +100,7 @@
|
||||
<title>Avanzato Tecnologia | TI Gerenciada, Cloud e Seguranca em Guarulhos/SP</title>
|
||||
<meta name="title" content="Avanzato Tecnologia | TI Gerenciada, Cloud e Seguranca em Guarulhos/SP" />
|
||||
<meta name="description" content="Solucoes em TI Gerenciada, Cloud Computing e Seguranca da Informacao. +23 anos de experiencia, +500 clientes atendidos. Suporte 24/7 em Guarulhos e regiao." />
|
||||
<meta name="app-version" content="1.0.0" />
|
||||
<meta name="keywords" content="TI Gerenciada, Cloud Computing, Seguranca da Informacao, Suporte Tecnico, Tecnologia da Informacao, Guarulhos, Sao Paulo, Infraestrutura de TI, Backup, Firewall, Consultoria TI" />
|
||||
<meta name="author" content="Avanzato Tecnologia" />
|
||||
<meta name="robots" content="index, follow" id="meta-robots" />
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
# Release HML
|
||||
|
||||
Data: ter 2 jun 2026 10:42:22 -03
|
||||
|
||||
Ambiente:
|
||||
HML
|
||||
|
||||
Descrição:
|
||||
Paginas e SEO master
|
||||
|
||||
Branch:
|
||||
develop
|
||||
|
||||
Arquivos alterados antes do commit:
|
||||
D infra/releases/2026-06-01_19-55-53_HML.md
|
||||
M package-lock.json
|
||||
M src/config/site.ts
|
||||
M vite.config.ts
|
||||
?? infra/releases/2026-06-02_10-42-22_HML.md
|
||||
|
||||
Status:
|
||||
Preparado para publicação
|
||||
|
||||
Commit:
|
||||
6140142b
|
||||
|
||||
Arquivos no commit:
|
||||
infra/releases/2026-06-01_19-55-53_HML.md
|
||||
infra/releases/2026-06-02_10-42-22_HML.md
|
||||
package-lock.json
|
||||
src/config/site.ts
|
||||
vite.config.ts
|
||||
|
||||
Status final:
|
||||
Publicado no Gitea / aguardando pipeline HML
|
||||
@@ -1,31 +0,0 @@
|
||||
# Release HML
|
||||
|
||||
Data: ter 2 jun 2026 11:45:36 -03
|
||||
|
||||
Ambiente:
|
||||
HML
|
||||
|
||||
Descrição:
|
||||
Paginas e SEO master
|
||||
|
||||
Branch:
|
||||
develop
|
||||
|
||||
Arquivos alterados antes do commit:
|
||||
M node_modules/.vite/deps/_metadata.json
|
||||
M package-lock.json
|
||||
?? infra/releases/2026-06-02_11-45-35_HML.md
|
||||
|
||||
Status:
|
||||
Preparado para publicação
|
||||
|
||||
Commit:
|
||||
2900b9af
|
||||
|
||||
Arquivos no commit:
|
||||
infra/releases/2026-06-02_11-45-35_HML.md
|
||||
node_modules/.vite/deps/_metadata.json
|
||||
package-lock.json
|
||||
|
||||
Status final:
|
||||
Publicado no Gitea / aguardando pipeline HML
|
||||
@@ -1,29 +0,0 @@
|
||||
# Release HML
|
||||
|
||||
Data: ter 2 jun 2026 12:07:34 -03
|
||||
|
||||
Ambiente:
|
||||
HML
|
||||
|
||||
Descrição:
|
||||
Paginas e SEO master
|
||||
|
||||
Branch:
|
||||
develop
|
||||
|
||||
Arquivos alterados antes do commit:
|
||||
M public/version.json
|
||||
?? infra/releases/2026-06-02_12-07-34_HML.md
|
||||
|
||||
Status:
|
||||
Preparado para publicação
|
||||
|
||||
Commit:
|
||||
52cda430
|
||||
|
||||
Arquivos no commit:
|
||||
infra/releases/2026-06-02_12-07-34_HML.md
|
||||
public/version.json
|
||||
|
||||
Status final:
|
||||
Publicado no Gitea / aguardando pipeline HML
|
||||
@@ -0,0 +1,35 @@
|
||||
# Release HML
|
||||
|
||||
Data: ter 2 jun 2026 12:43:57 -03
|
||||
|
||||
Ambiente:
|
||||
HML
|
||||
|
||||
Descrição:
|
||||
Paginas e SEO master
|
||||
|
||||
Branch:
|
||||
develop
|
||||
|
||||
Arquivos alterados antes do commit:
|
||||
D dist/.DS_Store
|
||||
D dist/assets/index-C1GgsDvQ.js
|
||||
D dist/assets/index-Cg4oF5jQ.css
|
||||
M dist/index.html
|
||||
M dist/robots.txt
|
||||
M dist/sitemap.xml
|
||||
M index.html
|
||||
D infra/releases/2026-06-02_10-42-22_HML.md
|
||||
D infra/releases/2026-06-02_11-45-35_HML.md
|
||||
D infra/releases/2026-06-02_12-07-34_HML.md
|
||||
M node_modules/.tmp/tsconfig.app.tsbuildinfo
|
||||
M public/version.json
|
||||
M scripts/build-static-routes.sh
|
||||
M src/config/site.ts
|
||||
M src/sections/Footer.tsx
|
||||
M vite.config.ts
|
||||
?? infra/releases/2026-06-02_12-43-57_HML.md
|
||||
?? scripts/prerender.cjs
|
||||
|
||||
Status:
|
||||
Preparado para publicação
|
||||
+1
-1
@@ -1 +1 @@
|
||||
{"root":["../../src/app.tsx","../../src/global.d.ts","../../src/main.tsx","../../src/components/cookieconsent.tsx","../../src/components/glowbutton.tsx","../../src/components/homologationbanner.tsx","../../src/components/whatsappwidget.tsx","../../src/components/ui/accordion.tsx","../../src/components/ui/alert-dialog.tsx","../../src/components/ui/alert.tsx","../../src/components/ui/aspect-ratio.tsx","../../src/components/ui/avatar.tsx","../../src/components/ui/badge.tsx","../../src/components/ui/breadcrumb.tsx","../../src/components/ui/button-group.tsx","../../src/components/ui/button.tsx","../../src/components/ui/calendar.tsx","../../src/components/ui/card.tsx","../../src/components/ui/carousel.tsx","../../src/components/ui/chart.tsx","../../src/components/ui/checkbox.tsx","../../src/components/ui/collapsible.tsx","../../src/components/ui/command.tsx","../../src/components/ui/context-menu.tsx","../../src/components/ui/dialog.tsx","../../src/components/ui/drawer.tsx","../../src/components/ui/dropdown-menu.tsx","../../src/components/ui/empty.tsx","../../src/components/ui/field.tsx","../../src/components/ui/form.tsx","../../src/components/ui/hover-card.tsx","../../src/components/ui/input-group.tsx","../../src/components/ui/input-otp.tsx","../../src/components/ui/input.tsx","../../src/components/ui/item.tsx","../../src/components/ui/kbd.tsx","../../src/components/ui/label.tsx","../../src/components/ui/menubar.tsx","../../src/components/ui/navigation-menu.tsx","../../src/components/ui/pagination.tsx","../../src/components/ui/popover.tsx","../../src/components/ui/progress.tsx","../../src/components/ui/radio-group.tsx","../../src/components/ui/resizable.tsx","../../src/components/ui/scroll-area.tsx","../../src/components/ui/select.tsx","../../src/components/ui/separator.tsx","../../src/components/ui/sheet.tsx","../../src/components/ui/sidebar.tsx","../../src/components/ui/skeleton.tsx","../../src/components/ui/slider.tsx","../../src/components/ui/sonner.tsx","../../src/components/ui/spinner.tsx","../../src/components/ui/switch.tsx","../../src/components/ui/table.tsx","../../src/components/ui/tabs.tsx","../../src/components/ui/textarea.tsx","../../src/components/ui/toggle-group.tsx","../../src/components/ui/toggle.tsx","../../src/components/ui/tooltip.tsx","../../src/config/mautic.ts","../../src/config/site.ts","../../src/hooks/use-mobile.ts","../../src/lib/utils.ts","../../src/pages/avaliador.tsx","../../src/pages/blog.tsx","../../src/pages/blogpost.tsx","../../src/pages/cases.tsx","../../src/pages/condominios.tsx","../../src/pages/contato.tsx","../../src/pages/home.tsx","../../src/pages/notfound.tsx","../../src/pages/privacidade.tsx","../../src/pages/sobre.tsx","../../src/pages/tecnologias.tsx","../../src/pages/termos.tsx","../../src/pages/nichos/advocacia.tsx","../../src/pages/nichos/backupcorporativo.tsx","../../src/pages/nichos/contabilidade.tsx","../../src/pages/nichos/firewallpfsense.tsx","../../src/pages/nichos/monitoramento.tsx","../../src/pages/nichos/voipempresarial.tsx","../../src/pages/services/backup.tsx","../../src/pages/services/cloudcomputing.tsx","../../src/pages/services/consultoria.tsx","../../src/pages/services/noc.tsx","../../src/pages/services/pabx.tsx","../../src/pages/services/redes.tsx","../../src/pages/services/seguranca.tsx","../../src/pages/services/servidores.tsx","../../src/pages/services/suporte.tsx","../../src/pages/services/tigerenciada.tsx","../../src/pages/tech/cisco.tsx","../../src/pages/tech/linux.tsx","../../src/pages/tech/pfsense.tsx","../../src/pages/tech/proxmox.tsx","../../src/pages/tech/sharepoint.tsx","../../src/pages/tech/vmware.tsx","../../src/pages/tech/windowsserver.tsx","../../src/sections/about.tsx","../../src/sections/condominioscta.tsx","../../src/sections/contact.tsx","../../src/sections/footer.tsx","../../src/sections/hero.tsx","../../src/sections/navigation.tsx","../../src/sections/services.tsx","../../src/sections/testimonials.tsx"],"version":"5.9.3"}
|
||||
{"root":["../../src/app.tsx","../../src/global.d.ts","../../src/main.tsx","../../src/components/cookieconsent.tsx","../../src/components/glowbutton.tsx","../../src/components/homologationbanner.tsx","../../src/components/seo.tsx","../../src/components/whatsappwidget.tsx","../../src/components/ui/accordion.tsx","../../src/components/ui/alert-dialog.tsx","../../src/components/ui/alert.tsx","../../src/components/ui/aspect-ratio.tsx","../../src/components/ui/avatar.tsx","../../src/components/ui/badge.tsx","../../src/components/ui/breadcrumb.tsx","../../src/components/ui/button-group.tsx","../../src/components/ui/button.tsx","../../src/components/ui/calendar.tsx","../../src/components/ui/card.tsx","../../src/components/ui/carousel.tsx","../../src/components/ui/chart.tsx","../../src/components/ui/checkbox.tsx","../../src/components/ui/collapsible.tsx","../../src/components/ui/command.tsx","../../src/components/ui/context-menu.tsx","../../src/components/ui/dialog.tsx","../../src/components/ui/drawer.tsx","../../src/components/ui/dropdown-menu.tsx","../../src/components/ui/empty.tsx","../../src/components/ui/field.tsx","../../src/components/ui/form.tsx","../../src/components/ui/hover-card.tsx","../../src/components/ui/input-group.tsx","../../src/components/ui/input-otp.tsx","../../src/components/ui/input.tsx","../../src/components/ui/item.tsx","../../src/components/ui/kbd.tsx","../../src/components/ui/label.tsx","../../src/components/ui/menubar.tsx","../../src/components/ui/navigation-menu.tsx","../../src/components/ui/pagination.tsx","../../src/components/ui/popover.tsx","../../src/components/ui/progress.tsx","../../src/components/ui/radio-group.tsx","../../src/components/ui/resizable.tsx","../../src/components/ui/scroll-area.tsx","../../src/components/ui/select.tsx","../../src/components/ui/separator.tsx","../../src/components/ui/sheet.tsx","../../src/components/ui/sidebar.tsx","../../src/components/ui/skeleton.tsx","../../src/components/ui/slider.tsx","../../src/components/ui/sonner.tsx","../../src/components/ui/spinner.tsx","../../src/components/ui/switch.tsx","../../src/components/ui/table.tsx","../../src/components/ui/tabs.tsx","../../src/components/ui/textarea.tsx","../../src/components/ui/toggle-group.tsx","../../src/components/ui/toggle.tsx","../../src/components/ui/tooltip.tsx","../../src/config/environment.ts","../../src/config/mautic.ts","../../src/config/schema.ts","../../src/config/site.ts","../../src/hooks/use-mobile.ts","../../src/lib/utils.ts","../../src/pages/avaliador.tsx","../../src/pages/blog.tsx","../../src/pages/blogpost.tsx","../../src/pages/cases.tsx","../../src/pages/condominios.tsx","../../src/pages/contato.tsx","../../src/pages/home.tsx","../../src/pages/notfound.tsx","../../src/pages/ondeatuamos.tsx","../../src/pages/privacidade.tsx","../../src/pages/sobre.tsx","../../src/pages/tecnologias.tsx","../../src/pages/termos.tsx","../../src/pages/local-bras.tsx","../../src/pages/local-cerqueira-cesar.tsx","../../src/pages/local-guarulhos.tsx","../../src/pages/local-ipiranga.tsx","../../src/pages/local-mogi-das-cruzes.tsx","../../src/pages/local-ribeirao-preto.tsx","../../src/pages/local-santana.tsx","../../src/pages/local-vila-formosa.tsx","../../src/pages/nicho-clinicas.tsx","../../src/pages/nicho-imobiliarias.tsx","../../src/pages/nicho-industria.tsx","../../src/pages/nicho-portaria-remota.tsx","../../src/pages/nicho-recrutamento-selecao.tsx","../../src/pages/nichos/advocacia.tsx","../../src/pages/nichos/backupcorporativo.tsx","../../src/pages/nichos/contabilidade.tsx","../../src/pages/nichos/firewallpfsense.tsx","../../src/pages/nichos/monitoramento.tsx","../../src/pages/nichos/voipempresarial.tsx","../../src/pages/services/backup.tsx","../../src/pages/services/cloudcomputing.tsx","../../src/pages/services/consultoria.tsx","../../src/pages/services/noc.tsx","../../src/pages/services/pabx.tsx","../../src/pages/services/redes.tsx","../../src/pages/services/seguranca.tsx","../../src/pages/services/servidores.tsx","../../src/pages/services/suporte.tsx","../../src/pages/services/tigerenciada.tsx","../../src/pages/tech/cisco.tsx","../../src/pages/tech/linux.tsx","../../src/pages/tech/pfsense.tsx","../../src/pages/tech/proxmox.tsx","../../src/pages/tech/sharepoint.tsx","../../src/pages/tech/vmware.tsx","../../src/pages/tech/windowsserver.tsx","../../src/sections/about.tsx","../../src/sections/condominioscta.tsx","../../src/sections/contact.tsx","../../src/sections/footer.tsx","../../src/sections/hero.tsx","../../src/sections/navigation.tsx","../../src/sections/services.tsx","../../src/sections/testimonials.tsx"],"version":"5.9.3"}
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.3.4",
|
||||
"date": "2026-06-01",
|
||||
"date": "2026-06-02",
|
||||
"environment": "auto-detect"
|
||||
}
|
||||
}
|
||||
@@ -93,6 +93,12 @@ echo -e "${GREEN}OK${NC} 404.html criado"
|
||||
# Limpar backup
|
||||
rm -f "$DIST_DIR/index.html.bak"
|
||||
|
||||
echo ""
|
||||
# Gerar HTML prerenderizado com conteudo real (SEO)
|
||||
echo ""
|
||||
echo -e "${BLUE}[Prerender]${NC} Gerando HTML com conteudo real para SEO..."
|
||||
node "${SCRIPT_DIR}/prerender.cjs"
|
||||
|
||||
echo ""
|
||||
echo -e "${GREEN}Post-build concluido!${NC}"
|
||||
echo ""
|
||||
@@ -100,4 +106,5 @@ echo "Estrutura gerada:"
|
||||
echo " dist/index.html (home)"
|
||||
echo " dist/404.html (pagina nao encontrada)"
|
||||
echo " dist/{rota}/index.html (${#ROUTES[@]} paginas estaticas)"
|
||||
echo " dist/{rota}/index.html (HTML com conteudo real para SEO)"
|
||||
echo ""
|
||||
|
||||
@@ -0,0 +1,216 @@
|
||||
// ============================================================================
|
||||
// PRERENDER - Gera HTML estatico com conteudo real para cada rota
|
||||
// ============================================================================
|
||||
// Executa apos npm run build
|
||||
// Gera index.html com conteudo HTML real (nao vazio) para cada rota
|
||||
// Isso resolve o problema de SEO: Google recebe conteudo no 1o request
|
||||
// ============================================================================
|
||||
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
|
||||
const DIST_DIR = path.resolve(__dirname, '../dist');
|
||||
const INDEX_HTML = path.join(DIST_DIR, 'index.html');
|
||||
|
||||
// Verificar se dist existe
|
||||
if (!fs.existsSync(DIST_DIR)) {
|
||||
console.error('ERRO: pasta dist/ nao encontrada. Execute npm run build primeiro.');
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
// Ler o index.html base
|
||||
let baseHtml = fs.readFileSync(INDEX_HTML, 'utf-8');
|
||||
|
||||
// Rotas para prerenderizar
|
||||
const ROUTES = [
|
||||
{ path: '/', title: 'Avanzato Tecnologia | TI Gerenciada, Cloud e Seguranca em Guarulhos/SP', desc: 'Solucoes em TI Gerenciada, Cloud Computing e Seguranca da Informacao. +23 anos de experiencia, +500 clientes atendidos. Suporte 24/7.' },
|
||||
{ path: '/sobre', title: 'Sobre a Avanzato Tecnologia | +23 Anos de Experiencia em TI', desc: 'Conheca a Avanzato Tecnologia. +23 anos de experiencia em TI Gerenciada, Cloud e Seguranca. +500 clientes satisfeitos em Sao Paulo.' },
|
||||
{ path: '/cases', title: 'Cases de Sucesso - Avanzato Tecnologia | Projetos de TI', desc: 'Conheca nossos cases de sucesso em TI. Empresas de contabilidade, advocacia, industria, monitoramento e mais. +23 anos de experiencia.' },
|
||||
{ path: '/onde-atuamos', title: 'Onde Atuamos - Suporte de TI em Sao Paulo e Regiao', desc: 'Avanzato Tecnologia atende em Guarulhos, Mogi das Cruzes, Ipiranga, Zona Leste, Zona Norte, Centro e Ribeirao Preto. Suporte presencial e remoto.' },
|
||||
{ path: '/avaliacao', title: 'Avaliacao Gratuita de TI - Avanzato Tecnologia', desc: 'Avalie gratuitamente a maturidade da TI da sua empresa. Descubra o nivel e receba recomendacoes personalizadas.' },
|
||||
{ path: '/contato', title: 'Contato - Avanzato Tecnologia | TI em Guarulhos/SP', desc: 'Entre em contato com a Avanzato Tecnologia. Telefone (11) 4810-1704, WhatsApp, email ou formulario. Atendimento 24/7.' },
|
||||
{ path: '/servicos/ti-gerenciada', title: 'TI Gerenciada para Empresas - Avanzato Tecnologia', desc: 'TI Gerenciada completa para empresas em Guarulhos e Sao Paulo. Suporte 24/7, monitoramento em tempo real e equipe especializada.' },
|
||||
{ path: '/servicos/cloud-computing', title: 'Cloud Computing e Virtualizacao - Avanzato', desc: 'Solucoes em Cloud Computing: AWS, Azure, Google Cloud. Migracao, gestao e otimizacao de infraestrutura em nuvem.' },
|
||||
{ path: '/servicos/seguranca', title: 'Seguranca da Informacao - Avanzato Tecnologia', desc: 'Protecao completa para sua empresa: firewall, antivirus, backup, LGPD. Seguranca de rede e dados com suporte 24/7.' },
|
||||
{ path: '/servicos/suporte', title: 'Suporte Tecnico 24/7 - Avanzato Tecnologia', desc: 'Suporte tecnico empresarial 24 horas. Help desk, atendimento remoto e presencial em Guarulhos e regiao.' },
|
||||
{ path: '/ti-para-contabilidades', title: 'TI para Escritorios de Contabilidade - Avanzato', desc: 'Solucoes de TI especializadas para contabilidades: seguranca de dados fiscais, backup de obrigacoes, NF-e. SPED e ECD.' },
|
||||
{ path: '/ti-para-advocacias', title: 'TI para Escritorios de Advocacia - Avanzato', desc: 'TI para advocacias: seguranca de processos, LGPD para clientes, backup de documentos juridicos. PJe e e-SAJ.' },
|
||||
{ path: '/monitoramento-empresarial', title: 'Monitoramento Empresarial com CFTV - Avanzato', desc: 'Sistemas de CFTV e monitoramento por camera para empresas. IP cameras, NVR, DVR, acesso remoto via celular.' },
|
||||
{ path: '/firewall-pfsense-empresarial', title: 'Firewall pfSense Empresarial - Avanzato', desc: 'Implementacao e configuracao de firewall pfSense e OPNsense. Seguranca de rede, VPN, filtro de conteudo.' },
|
||||
{ path: '/backup-corporativo', title: 'Backup Corporativo e Disaster Recovery - Avanzato', desc: 'Backup automatizado em nuvem e local. Disaster Recovery, recuperacao de dados. Protecao contra ransomware.' },
|
||||
{ path: '/voip-empresarial', title: 'VoIP Empresarial e PABX IP - Avanzato Tecnologia', desc: 'Telefonia VoIP para empresas: PABX IP, chamadas ilimitadas, integracao com CRM. Reducao de 70% na conta telefonica.' },
|
||||
{ path: '/suporte-ti-guarulhos', title: 'Suporte de TI em Guarulhos - Matriz Avanzato', desc: 'Suporte de TI empresarial em Guarulhos. Atendemos contabilidades, advocacias, industrias e mais. Matriz da Avanzato. +23 anos.' },
|
||||
{ path: '/suporte-ti-mogi-das-cruzes', title: 'Suporte de TI em Mogi das Cruzes - Avanzato', desc: 'Suporte de TI empresarial em Mogi das Cruzes. Atendimento presencial e remoto para empresas de todos os portes.' },
|
||||
{ path: '/suporte-ti-ipiranga', title: 'Suporte de TI em Ipiranga - Avanzato Tecnologia', desc: 'Suporte de TI empresarial em Ipiranga, Sao Paulo. Atendimento a clinicas, escolas e comercios do bairro.' },
|
||||
{ path: '/suporte-ti-industria', title: 'TI para Industria - Avanzato Tecnologia', desc: 'Solucoes de TI especializadas para industrias. Suporte tecnico, seguranca, cloud e comunicacao. +23 anos de experiencia.' },
|
||||
{ path: '/suporte-ti-portaria-remota', title: 'TI para Portaria Remota - Avanzato Tecnologia', desc: 'Solucoes de TI para portaria remota: interfornia IP, controle de acesso, cameras. Condominios, empresas, industrias.' },
|
||||
{ path: '/suporte-ti-clinicas', title: 'TI para Clinicas - Avanzato Tecnologia', desc: 'Solucoes de TI para clinicas: odontologia, fisioterapia, medica, veterinaria. LGPD, prontuario digital, telemedicina.' },
|
||||
{ path: '/suporte-ti-imobiliarias', title: 'TI para Imobiliarias - Avanzato Tecnologia', desc: 'Solucoes de TI para imobiliarias: sistemas de gestao, CRM, site de imoveis. Residencial, comercial, industrial.' },
|
||||
{ path: '/tecnologias', title: 'Tecnologias que Trabalhamos - Avanzato Tecnologia', desc: 'Conheca as tecnologias que a Avanzato domina: Cisco, VMware, Microsoft, Linux, pfSense, Proxmox e muito mais.' },
|
||||
];
|
||||
|
||||
// Conteudo HTML prerenderizado para cada tipo de pagina
|
||||
function generateContent(route) {
|
||||
const isHome = route.path === '/';
|
||||
const isLocal = route.path.includes('suporte-ti-');
|
||||
const isService = route.path.includes('servicos/');
|
||||
const isNicho = route.path.includes('ti-para-') || route.path.includes('suporte-ti-') && !isLocal;
|
||||
|
||||
let content = '';
|
||||
|
||||
if (isHome) {
|
||||
content = `
|
||||
<section class="hero">
|
||||
<h1>Avanzato Tecnologia - TI Gerenciada, Cloud e Seguranca</h1>
|
||||
<p>+23 anos de experiencia em TI para empresas. +500 clientes atendidos em Guarulhos, Sao Paulo e regiao.</p>
|
||||
<p>Servicos: Suporte Tecnico 24/7, Cloud Computing, Seguranca da Informacao, Backup Corporativo, VoIP, Firewall, Monitoramento.</p>
|
||||
<div><a href="/avaliacao">Avaliacao Gratuita</a> <a href="/contato">Falar com Especialista</a></div>
|
||||
</section>
|
||||
<section>
|
||||
<h2>Por que escolher a Avanzato?</h2>
|
||||
<ul>
|
||||
<li>Suporte 24/7 com equipe especializada</li>
|
||||
<li>+23 anos de experiencia em TI empresarial</li>
|
||||
<li>+500 clientes atendidos em diversos segmentos</li>
|
||||
<li>Atendimento em Guarulhos, Grande SP e interior</li>
|
||||
<li>Relatorios tecnicos mensais detalhados</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section>
|
||||
<h2>Segmentos que Atendemos</h2>
|
||||
<p>Contabilidades, Advocacias, Industrias, BPO, Clinicas, Imobiliarias, Condominios, Logistica, Monitoramento.</p>
|
||||
<p><a href="/onde-atuamos">Ver onde atuamos</a></p>
|
||||
</section>
|
||||
<section>
|
||||
<h2>Onde Atuamos</h2>
|
||||
<p>Guarulhos (matriz), Mogi das Cruzes, Ipiranga, Vila Formosa, Cerqueira Cesar, Santana, Bras, Ribeirao Preto.</p>
|
||||
<p><a href="/onde-atuamos">Ver todas as localidades</a></p>
|
||||
</section>`;
|
||||
} else if (isLocal) {
|
||||
const city = route.title.split(' em ')[1]?.split(' - ')[0] || '';
|
||||
content = `
|
||||
<article>
|
||||
<h1>Suporte de TI em ${city}</h1>
|
||||
<p>Empresa de suporte de TI em ${city} com atendimento presencial e remoto. +23 anos de experiencia.</p>
|
||||
<h2>Servicos em ${city}</h2>
|
||||
<ul>
|
||||
<li>Suporte tecnico 24/7</li>
|
||||
<li>Administracao de servidores</li>
|
||||
<li>Backup corporativo</li>
|
||||
<li>Firewall e seguranca</li>
|
||||
<li>Microsoft 365</li>
|
||||
<li>Cloud Computing</li>
|
||||
<li>VoIP e PABX IP</li>
|
||||
<li>Monitoramento CFTV</li>
|
||||
</ul>
|
||||
<h2>Segmentos Atendidos em ${city}</h2>
|
||||
<p>Contabilidades, Advocacias, Industrias, Clinicas, Imobiliarias, Condominios, Logistica, Monitoramento.</p>
|
||||
<div><a href="/avaliacao">Solicitar Avaliacao Gratuita</a></div>
|
||||
</article>`;
|
||||
} else if (route.path === '/onde-atuamos') {
|
||||
content = `
|
||||
<article>
|
||||
<h1>Onde a Avanzato Atua</h1>
|
||||
<p>Presente em toda a regiao metropolitana de Sao Paulo e interior. Atendimento presencial e remoto.</p>
|
||||
<h2>Cidades Atendidas</h2>
|
||||
<ul>
|
||||
<li><a href="/suporte-ti-guarulhos">Guarulhos</a> - Matriz Avanzato</li>
|
||||
<li><a href="/suporte-ti-mogi-das-cruzes">Mogi das Cruzes</a></li>
|
||||
<li><a href="/suporte-ti-ipiranga">Ipiranga</a></li>
|
||||
<li><a href="/suporte-ti-vila-formosa">Vila Formosa</a></li>
|
||||
<li><a href="/suporte-ti-cerqueira-cesar">Cerqueira Cesar</a></li>
|
||||
<li><a href="/suporte-ti-santana">Santana</a></li>
|
||||
<li><a href="/suporte-ti-bras">Bras</a></li>
|
||||
<li><a href="/suporte-ti-ribeirao-preto">Ribeirao Preto</a></li>
|
||||
</ul>
|
||||
<div><a href="/contato">Falar com Especialista</a></div>
|
||||
</article>`;
|
||||
} else if (route.path === '/cases') {
|
||||
content = `
|
||||
<article>
|
||||
<h1>Cases de Sucesso - Avanzato Tecnologia</h1>
|
||||
<p>Conheca nossos cases de sucesso em TI. Empresas de diversos segmentos que confiam na Avanzato.</p>
|
||||
<h2>Cases Recentes</h2>
|
||||
<ul>
|
||||
<li><strong>Apoio 24 Horas</strong> - Monitoramento - Servidores, pfSense, VPN</li>
|
||||
<li><strong>ONG/Terceiro Setor</strong> - Institucional - Suporte, Cloud, Seguranca</li>
|
||||
<li><strong>Museu de Faculdade Publica</strong> - Acervo Digital - Tainacan, ICA-AtoM</li>
|
||||
<li><strong>Thalls</strong> - Industria - Suporte, VoIP</li>
|
||||
<li><strong>Dellacont</strong> - Contabilidade - Suporte, Servidor, Backup</li>
|
||||
<li><strong>Mourad Naddi Advogados</strong> - Advocacia - Suporte, Servidor, Backup</li>
|
||||
<li><strong>GateOne e Fox</strong> - Monitoramento - Servidores, VPN</li>
|
||||
<li><strong>Lucena Textil</strong> - Textil - Colocation, VPN, Backup</li>
|
||||
</ul>
|
||||
<div><a href="/avaliacao">Quero um case de sucesso tambem</a></div>
|
||||
</article>`;
|
||||
} else if (isService || isNicho) {
|
||||
const serviceName = route.title.split(' - ')[0];
|
||||
content = `
|
||||
<article>
|
||||
<h1>${serviceName}</h1>
|
||||
<p>${route.desc}</p>
|
||||
<h2>O que oferecemos</h2>
|
||||
<ul>
|
||||
<li>Diagnostico inicial gratuito</li>
|
||||
<li>Projeto personalizado</li>
|
||||
<li>Implantacao completa</li>
|
||||
<li>Suporte continuo</li>
|
||||
<li>Relatorios periodicos</li>
|
||||
</ul>
|
||||
<h2>Perguntas Frequentes</h2>
|
||||
<p><strong>Qual o tempo de resposta?</strong> Nosso SLA garante atendimento em ate 4 horas para chamados criticos.</p>
|
||||
<p><strong>Atendem empresas de qual porte?</strong> Atendemos de pequenas a grandes empresas, com planos flexiveis.</p>
|
||||
<div><a href="/avaliacao">Solicitar Avaliacao Gratuita</a> <a href="/contato">Falar com Especialista</a></div>
|
||||
</article>`;
|
||||
} else {
|
||||
content = `
|
||||
<article>
|
||||
<h1>${route.title.split(' - ')[0]}</h1>
|
||||
<p>${route.desc}</p>
|
||||
<div><a href="/contato">Entrar em Contato</a> <a href="/avaliacao">Avaliacao Gratuita</a></div>
|
||||
</article>`;
|
||||
}
|
||||
|
||||
return content;
|
||||
}
|
||||
|
||||
// Gerar HTML prerenderizado para cada rota
|
||||
console.log('[Prerender] Gerando HTML estatico com conteudo real...\n');
|
||||
|
||||
let count = 0;
|
||||
|
||||
for (const route of ROUTES) {
|
||||
// Atualizar title e meta description
|
||||
let html = baseHtml
|
||||
.replace(/<title>.*?<\/title>/, `<title>${route.title}</title>`)
|
||||
.replace(/<meta name="title" content=".*?" \/>/, `<meta name="title" content="${route.title}" />`)
|
||||
.replace(/<meta name="description" content=".*?" \/>/, `<meta name="description" content="${route.desc}" />`)
|
||||
.replace(/<meta name="app-version" content=".*?" \/>/, `<meta name="app-version" content="${require('../public/version.json').version}" />`);
|
||||
|
||||
// Gerar conteudo HTML
|
||||
const content = generateContent(route);
|
||||
|
||||
// Inserir conteudo no div#root (substituir <div id="root"></div>)
|
||||
html = html.replace(
|
||||
'<div id="root"></div>',
|
||||
`<div id="root">${content}</div>`
|
||||
);
|
||||
|
||||
// Determinar caminho de saida
|
||||
let outputPath;
|
||||
if (route.path === '/') {
|
||||
outputPath = path.join(DIST_DIR, 'index.html');
|
||||
} else {
|
||||
// Criar pasta e salvar index.html
|
||||
const dir = path.join(DIST_DIR, route.path.replace(/^\//, ''));
|
||||
fs.mkdirSync(dir, { recursive: true });
|
||||
outputPath = path.join(dir, 'index.html');
|
||||
}
|
||||
|
||||
fs.writeFileSync(outputPath, html);
|
||||
count++;
|
||||
console.log(` OK: ${route.path} → ${outputPath.replace(DIST_DIR + '/', '')}`);
|
||||
}
|
||||
|
||||
console.log(`\n[Prerender] ${count} paginas geradas com conteudo HTML real!`);
|
||||
console.log('[Prerender] Agora o Google recebe conteudo no 1o request, sem precisar de JavaScript.\n');
|
||||
@@ -130,6 +130,7 @@ export const NAV_LINKS = [
|
||||
},
|
||||
{ name: 'Tecnologias', href: '/tecnologias' },
|
||||
{ name: 'Avaliacao TI', href: '/avaliacao' },
|
||||
{ name: 'Onde Atuamos', href: '/onde-atuamos' },
|
||||
{ name: 'Cases', href: '/cases' },
|
||||
{ name: 'Blog', href: '/blog' },
|
||||
{ name: 'Contato', href: '/contato' },
|
||||
@@ -146,6 +147,7 @@ export const FOOTER_LINKS = {
|
||||
],
|
||||
empresa: [
|
||||
{ name: 'Sobre nos', href: '/sobre' },
|
||||
{ name: 'Onde Atuamos', href: '/onde-atuamos' },
|
||||
{ name: 'Cases de sucesso', href: '/cases' },
|
||||
{ name: 'Blog', href: '/blog' },
|
||||
{ name: 'Trabalhe conosco', href: '/contato' },
|
||||
|
||||
+11
-4
@@ -15,10 +15,17 @@ const Footer = () => {
|
||||
const [version, setVersion] = useState('');
|
||||
|
||||
useEffect(() => {
|
||||
fetch('/version.json?t=' + Date.now())
|
||||
.then(r => r.json())
|
||||
.then(data => setVersion(data.version))
|
||||
.catch(() => setVersion(''));
|
||||
// Ler versao da meta tag (mais confiavel que fetch de arquivo separado)
|
||||
const metaVersion = document.querySelector('meta[name="app-version"]')?.getAttribute('content');
|
||||
if (metaVersion && metaVersion !== '1.0.0') {
|
||||
setVersion(metaVersion);
|
||||
} else {
|
||||
// Fallback: tentar version.json
|
||||
fetch('/version.json?t=' + Date.now())
|
||||
.then(r => r.json())
|
||||
.then(data => setVersion(data.version))
|
||||
.catch(() => setVersion(''));
|
||||
}
|
||||
}, []);
|
||||
|
||||
const scrollToTop = () => {
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
import path from "path"
|
||||
import react from "@vitejs/plugin-react"
|
||||
import { defineConfig } from "vite"
|
||||
import { inspectAttr } from 'kimi-plugin-inspect-react'
|
||||
// import { inspectAttr } from 'kimi-plugin-inspect-react'
|
||||
import { viteStaticCopy } from 'vite-plugin-static-copy'
|
||||
|
||||
/**
|
||||
@@ -22,7 +22,7 @@ const devNoIndexPlugin = () => ({
|
||||
export default defineConfig({
|
||||
base: '/',
|
||||
plugins: [
|
||||
inspectAttr(),
|
||||
// inspectAttr(), // Desabilitado - pode causar tela em branco
|
||||
react(),
|
||||
devNoIndexPlugin(),
|
||||
viteStaticCopy({
|
||||
|
||||
Reference in New Issue
Block a user