# gt-next: General Translation Next.js SDK: Compilador URL: https://generaltranslation.com/es/docs/next/concepts/compiler.mdx --- title: Compilador description: plugin de SWC de gt-next basado en Rust --- gt-next incluye un plugin de SWC basado en Rust que realiza un análisis en tiempo de compilación para detectar errores habituales de traducción y optimizar el rendimiento. ## Funcionalidades ### Detección de contenido dinámico Detecta contenido dinámico sin envolver en componentes de traducción: ```jsx // ❌ Inválido - contenido dinámico no envuelto Hello {userName} // ✅ Válido - contenido dinámico envuelto en componente de variable Hello {userName} ``` ### Validación de llamadas a funciones Detecta argumentos no literales pasados a las funciones de traducción: ```jsx const gt = useGT(); // ❌ Inválido - plantillas literales y concatenación gt(`Hello ${name}`) gt("Hello " + name) // ✅ Válido - cadenas literales con sustitución de variables gt("Hello, {name}!", { name }) ``` ### Generación de hashes en tiempo de compilación Precalcula los hashes de traducción para mejorar el rendimiento en tiempo de ejecución: ```jsx // Entrada Hello world // Salida (cuando está habilitado) Hello world ``` ## Configuración Configura el plugin de SWC en tu `next.config.js`: ```javascript import { withGTConfig } from 'gt-next/config'; export default withGTConfig(nextConfig, { locales: ['en', 'es'], swcPluginOptions: { logLevel: 'silent', // Controlar la salida de advertencias compileTimeHash: false, // Habilitar la generación de hashes }, }); ``` ### Opciones * **`logLevel`**: Controla el nivel de las advertencias que se muestran * `'silent'` - No muestra advertencias (predeterminado en producción) * `'error'` - Las muestra como errores de compilación * `'warn'` - Las muestra como advertencias (predeterminado en desarrollo) * `'info'` - Muestra mensajes informativos * `'debug'` - Muestra toda la información de depuración * **`compileTimeHash`**: Habilita la generación de hashes en tiempo de compilación * `false` - Deshabilitado (predeterminado) * `true` - Genera hashes en tiempo de compilación para mejorar el rendimiento ## Limitaciones El plugin de SWC procesa los archivos de forma individual y no puede detectar incumplimientos en los componentes reexportados: ```jsx // Archivo A: export { T as Translate } from 'gt-next' // Archivo B: import { Translate } from './A' Hello {name} // No será detectado ```