# gt-next: General Translation Next.js SDK: Compilatore URL: https://generaltranslation.com/it/docs/next/concepts/compiler.mdx --- title: Compilatore description: plugin SWC di gt-next basato su Rust --- gt-next include un plugin SWC basato su Rust che esegue analisi in fase di build per individuare gli errori di traduzione più comuni e ottimizzare le prestazioni. ## Funzionalità ### Rilevamento dei contenuti dinamici Rileva contenuti dinamici non racchiusi nei componenti di traduzione: ```jsx // ❌ Non valido - contenuto dinamico non racchiuso Hello {userName} // ✅ Valido - contenuto dinamico racchiuso in un componente variabile Hello {userName} ``` ### Verifica delle chiamate di funzione Rileva gli argomenti non letterali passati alle funzioni di traduzione: ```jsx const gt = useGT(); // ❌ Non valido - template literal e concatenazione gt(`Hello ${name}`) gt("Hello " + name) // ✅ Valido - stringhe letterali con sostituzione di variabili gt("Hello, {name}!", { name }) ``` ### Generazione degli hash in fase di compilazione Precalcola gli hash di traduzione per migliorare le prestazioni in runtime: ```jsx // Input Hello world // Output (quando abilitato) Hello world ``` ## Configurazione Configura il plugin SWC nel file `next.config.js`: ```javascript import { withGTConfig } from 'gt-next/config'; export default withGTConfig(nextConfig, { locales: ['en', 'es'], swcPluginOptions: { logLevel: 'silent', // Controlla l'output degli avvisi compileTimeHash: false, // Abilita la generazione degli hash }, }); ``` ### Opzioni * **`logLevel`**: Controlla il livello di output degli avvisi * `'silent'` - Nessun avviso (impostazione predefinita per la produzione) * `'error'` - Mostra gli avvisi come errori di build * `'warn'` - Mostra gli avvisi come avvisi (impostazione predefinita per lo sviluppo) * `'info'` - Mostra messaggi informativi * `'debug'` - Mostra tutte le informazioni di debug * **`compileTimeHash`**: Abilita la generazione di hash in fase di compilazione * `false` - Disabilitato (impostazione predefinita) * `true` - Genera hash in fase di build per migliorare le prestazioni ## Limitazioni Il plugin SWC elabora i file singolarmente e non può rilevare violazioni nei componenti riesportati: ```jsx // File A: export { T as Translate } from 'gt-next' // File B: import { Translate } from './A' Hello {name} // Non verrà rilevato ```