- ✅ Ticket 1.1: Estructura Clean Architecture en backend - ✅ Ticket 1.2: Schemas Zod compartidos - ✅ Ticket 1.3: Refactorización drugs.ts (1362 → 8 archivos modulares) - ✅ Ticket 1.4: Refactorización procedures.ts (3583 → 6 archivos modulares) - ✅ Ticket 1.5: Eliminación de duplicidades (~50 líneas) Cambios principales: - Creada estructura Clean Architecture en backend/src/ - Schemas Zod compartidos en backend/src/shared/schemas/ - Refactorización modular de drugs y procedures - Utilidades genéricas en src/utils/ (filter, validation) - Eliminados scripts obsoletos y documentación antigua - Corregidos errores: QueryClient, import test-error-handling - Build verificado y funcionando correctamente
54 lines
2.8 KiB
HTML
54 lines
2.8 KiB
HTML
<!doctype html>
|
|
<html lang="es">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
|
<title>EMERGES TES - Guía de Protocolos de Emergencias</title>
|
|
<meta name="description" content="Guía rápida de protocolos médicos de emergencias para Técnicos de Emergencias Sanitarias (TES). RCP, fármacos, calculadoras y más." />
|
|
<meta name="author" content="EMERGES TES" />
|
|
<meta name="theme-color" content="#1a1f2e" />
|
|
<meta name="mobile-web-app-capable" content="yes" />
|
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
|
|
|
<!-- PWA Manifest -->
|
|
<link rel="manifest" href="/manifest.json" />
|
|
|
|
<meta property="og:title" content="EMERGES TES - Guía de Protocolos" />
|
|
<meta property="og:description" content="Guía rápida de protocolos médicos de emergencias para TES" />
|
|
<meta property="og:type" content="website" />
|
|
|
|
<meta name="twitter:card" content="summary" />
|
|
<meta name="twitter:title" content="EMERGES TES" />
|
|
<meta name="twitter:description" content="Protocolos de emergencias para TES" />
|
|
|
|
<!-- Favicon -->
|
|
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
|
|
<link rel="apple-touch-icon" href="/favicon.svg" />
|
|
<link rel="mask-icon" href="/favicon.svg" color="#1a1f2e" />
|
|
|
|
<!-- Preload de recursos críticos -->
|
|
<link rel="preload" href="/assets/main-DSASJAw9.tsx" as="script" crossorigin="anonymous" />
|
|
|
|
<!-- DNS Prefetch para recursos externos (si los usas) -->
|
|
<!-- <link rel="dns-prefetch" href="https://api.example.com" /> -->
|
|
<script type="module" crossorigin src="/assets/index-BC9VFTAD.js"></script>
|
|
<link rel="modulepreload" crossorigin href="/assets/1-vendor-utils-Delnuc0l.js">
|
|
<link rel="modulepreload" crossorigin href="/assets/2-vendor-markdown-BQlHAcA7.js">
|
|
<link rel="modulepreload" crossorigin href="/assets/0-vendor-react-DWOJpYrt.js">
|
|
<link rel="modulepreload" crossorigin href="/assets/page-ajustes-DgawOEJM.js">
|
|
<link rel="modulepreload" crossorigin href="/assets/page-comunicacion-DmHQUHoW.js">
|
|
<link rel="modulepreload" crossorigin href="/assets/page-farmacos-oJNXc_A2.js">
|
|
<link rel="modulepreload" crossorigin href="/assets/page-herramientas-BzovIToK.js">
|
|
<link rel="modulepreload" crossorigin href="/assets/page-index-DvnG8OQi.js">
|
|
<link rel="modulepreload" crossorigin href="/assets/page-notfound-CX_Wllnx.js">
|
|
<link rel="stylesheet" crossorigin href="/assets/vendor-utils-Dfs9RUU9.css">
|
|
<link rel="stylesheet" crossorigin href="/assets/index-RRWTrIj0.css">
|
|
</head>
|
|
|
|
<body>
|
|
<div id="root"></div>
|
|
</body>
|
|
</html>
|