Vue d'ensemble
Présentation de la bibliothèque generaltranslation
Introduction
La bibliothèque generaltranslation est la bibliothèque i18n centrale de GT, regroupant des fonctions utilitaires et des classes pour la traduction et le formatage.
Elle est le plus souvent utilisée avec des packages de framework comme gt-next et gt-react, mais peut aussi être utilisée en tant que bibliothèque autonome.
import { GT } from 'generaltranslation';
const gt = new GT({
  apiKey: 'your-api-key',
  projectId: 'your-project-id',
  sourceLocale: 'en',
  targetLocale: 'es',
});
// Traduire du contenu
const result = await gt.translate('Hello, world!', 'es');
// "¡Hola, mundo!"
// Formater les nombres, dates et devises
const formattedPrice = gt.formatCurrency(29.99, 'USD');
const formattedDate = gt.formatDateTime(new Date());
// "$29.99"
// "9/25/2025"
// Travailler avec les locales
const localeProps = gt.getLocaleProperties('fr-CA');
const isValid = gt.isValidLocale('de');
// { language: "fr", region: "CA", ... }
// trueInstallation
npm install generaltranslationyarn add generaltranslationbun add generaltranslationpnpm add generaltranslationExemples
Il existe deux principaux types de traduction : la traduction de chaînes et la traduction de fichiers.
Configuration
Pour activer la traduction, vous devez fournir un id de projet et une clé d’API.
Consultez la méthode constructor pour en savoir plus.
const gt = new GT({
  apiKey: 'your-api-key',
  projectId: 'your-project-id',
  targetLocale: 'es',
});Traduction de chaînes
Consultez la méthode translate pour en savoir plus.
try {
  const result = await gt.translate('Bonjour le monde !');
  console.log(result); // "¡Hola, mundo!"
} catch (error) {
  console.error('Échec de la traduction :', error.message);
}Traduction de fichiers
Les fichiers sont traduits au moyen de jobs. Vous lancez un job en téléversant un fichier. Téléverser plusieurs fichiers lancera plusieurs jobs.
Consultez les méthodes uploadSourceFiles
et checkFileTranslations pour en savoir plus.
// Fichiers à téléverser
const files = [
  {
    source: {
      fileName: 'src/components/Button.tsx',
      fileFormat: 'TSX',
      locale: 'en',
      content: '...',
    },
  },
];
// Téléverser les fichiers source
await gt.uploadSourceFiles(files);Table des matières
Classe GT
Classe principale pour la traduction et la gestion des locales :
- Constructor - Initialiser une instance de GT avec une configuration
- setConfig - Mettre à jour la configuration de l’instance de GT
Méthodes de traduction
- translate - Fonction de traduction principale
- translateMany - Traduction en lot
- setupProject - Initialisation du projet
- shouldSetupProject - Vérifier si la configuration du projet est requise
- checkSetupStatus - Vérifier l’état de la configuration du projet
- getProjectData - Récupérer les informations du projet
- uploadSourceFiles - Téléverser des fichiers à traduire
- enqueueFiles - Mettre les fichiers en file d’attente pour traitement
- checkFileTranslations - Vérifier l’état des traductions
- downloadTranslatedFile - Télécharger un fichier traduit
- downloadFileBatch - Télécharger plusieurs fichiers traduits
- querySourceFile - Consulter les informations du fichier source
Méthodes de formatage
- formatMessage - Formatage de texte internationalisé
- formatNum - Formatage des nombres
- formatDateTime - Formatage des dates et des heures
Méthodes liées aux locales
- getLocaleName - Obtenir le nom d’affichage de la locale
- getLocaleProperties - Obtenir des informations complètes sur la locale
- getLocaleDirection - Obtenir la direction du texte pour la locale
- getLocaleEmoji - Obtenir l’emoji de drapeau de la locale
- getRegionProperties - Obtenir les informations et propriétés de la région
- isValidLocale - Valider le code de locale
- resolveAliasLocale - Convertir les locales canoniques en alias
- resolveCanonicalLocale - Convertir les locales alias en forme canonique
- standardizeLocale - Normaliser le format du code de locale
- isSameDialect - Vérifier si les locales correspondent au même dialecte
- isSameLanguage - Vérifier si les locales correspondent à la même langue
- isSupersetLocale - Vérifier les relations hiérarchiques entre locales
- determineLocale - Trouver la meilleure locale correspondant aux préférences
- requiresTranslation - Déterminer si une traduction est nécessaire
Fonctions utilitaires
Fonctions de formatage
- formatMessage - Formatage de texte autonome
- formatNum - Formatage autonome des nombres
- formatDateTime - Formatage autonome des dates et heures
Fonctions de gestion des locales
- getLocaleName - Utilitaire autonome pour le nom de la locale
- getLocaleProperties - Propriétés de la locale (autonome)
- getLocaleDirection - Utilitaire autonome pour la direction du texte
- getLocaleEmoji - Utilitaire autonome pour l’emoji
- getRegionProperties - Utilitaire autonome pour les propriétés de région
- isValidLocale - Validation de locale autonome
- resolveAliasLocale - Résolution autonome des alias de locale
- standardizeLocale - Standardisation autonome de locale
- isSameDialect - Comparaison autonome de dialectes
- isSameLanguage - Comparaison autonome de langues
- isSupersetLocale - Vérification autonome de la hiérarchie des locales
- determineLocale - Négociation autonome de locale
- requiresTranslation - Vérification autonome des besoins de traduction
Types et interfaces
Définitions TypeScript :
- GTConstructorParams - Options de configuration
- LocaleProperties - Informations complètes sur le locale
- TranslationResult - Types de réponse de traduction
- TranslateManyResult - Réponses de traduction en lot
- FileToTranslate - Configuration de traduction de fichiers
- EnqueueFilesOptions - Options de mise en file des fichiers
- Entry - Structure d’Entry pour la traduction
- EntryMetadata - Métadonnées d’Entry
- Content - Définitions des types de contenu
- Variable - Structure de Variable
- VariableType - Définitions des types de Variable
- JsxElement - Type d’élément JSX
- JsxChild - Type d’enfant JSX
- JsxChildren - Type d’enfants JSX
- DataFormat - Spécifications du format de données
- CustomMapping - Configuration de mapping personnalisé
Prochaines étapes
- Bien démarrer avec la classe GT
- Explorer les méthodes de traduction
- Découvrir les utilitaires de locale
- Consulter les options de formatage
- Parcourir les fonctions autonomes
Pour l’usage spécifique à un framework, consultez la documentation Next.js ou React.
Que pensez-vous de ce guide ?

