checkFileTranslations
Référence de l’API pour la méthode checkFileTranslations permettant de vérifier l’état des traductions sans télécharger les fichiers
Présentation
La méthode checkFileTranslations vérifie l’état de traduction des fichiers sans en télécharger le contenu.
Elle est utile pour suivre l’avancement, vérifier le niveau d’achèvement et déterminer quelles traductions sont disponibles.
const gt = new GT({ projectId: 'your-project-id', apiKey: 'your-api-key' });
const status = await gt.checkFileTranslations([
  {
    versionId: 'version-123',
    fileName: 'app.json',
    locale: 'es'
  }
]);Références
Paramètres
| Nom | Type | Description | 
|---|---|---|
| data | FileTranslationQuery[] | Tableau de requêtes de traduction de fichiers à contrôler | 
| options? | CheckFileTranslationsOptions | Configuration optionnelle de la requête | 
FileTranslationQuery
| Nom | Type | Description | 
|---|---|---|
| versionId | string | ID de version du fichier à vérifier | 
| fileName? | string | Nom de fichier (requis si fileIdn’est pas fourni) | 
| fileId? | string | ID de fichier (requis si fileNamen’est pas fourni) | 
| locale | string | Locale cible pour laquelle vérifier l’état de traduction | 
CheckFileTranslationsOptions
| Nom | Type | Description | 
|---|---|---|
| timeout? | number | Délai d’attente de la requête en millisecondes | 
Renvoie
Promise<CheckFileTranslationsResult> - Contient des informations sur l’état des traductions.
type CheckFileTranslationsResult = {
  translations: CompletedFileTranslationData[];
}| Propriété | Type | Description | 
|---|---|---|
| translations | CompletedFileTranslationData[] | Tableau des données d’état des traductions | 
Structure de CompletedFileTranslationData
type CompletedFileTranslationData = {
  id: string;
  fileId: string;
  versionId: string;
  fileName: string;
  locale: string;
  status: 'completed' | 'pending' | 'failed';
  completedAt: string | null;
  approvedAt: string | null;
  publishedAt: string | null;
  createdAt: string;
  updatedAt: string;
}Exemples
Utilisation de base
Vérifiez l’état de traduction pour des fichiers et des locales spécifiques :
// (1) Créer une instance GT
const targetLocales = ['es', 'fr', 'de'];
const gt = new GT({
  projectId: 'your-project-id',
  apiKey: 'your-api-key',
});
// (2) Téléverser le fichier
const fileUpload = {
  content: fileContents,
  fileName: filePath,
  fileFormat: 'JSON',
  locale: 'en',
};
const files = [ { source: fileUpload } ];
const { uploadedFiles } = await gt.uploadSourceFiles(
  files,
  { sourceLocale: 'en' }
);
// (3) Mettre en file d'attente la tâche de traduction du fichier
const enqueueResult = await gt.enqueueFiles(
  uploadedFiles,
  {
  sourceLocale: 'en',
  targetLocales: targetLocales,
});
// (4) Attendre que toutes les traductions soient terminées
let translationIds = [];
const statusQuery = Object.values(enqueueResult.data).flatMap(({fileName, versionId}) => {
  return targetLocales.map((locale) => ({locale, fileName, versionId}));
});
while (true) {
  const status = await gt.checkFileTranslations(statusQuery);
  if (status.translations.length === statusQuery.length) {
    translationIds = status.translations.map(translation => translation.id);
    break;
  }
  await new Promise(resolve => setTimeout(resolve, 1000));
}Notes
- L’état de traduction inclut les statuts pending,completedetfailed
- Les traductions finalisées peuvent encore nécessiter une approbation avant leur publication
- Utilisez cette méthode pour vérifier le statut de manière efficace lors du suivi de plusieurs travaux de traduction
Prochaines étapes
- Découvrez le guide de démarrage rapide pour un exemple complet d’utilisation de cette méthode
- Consultez downloadTranslatedFilepour télécharger les traductions finalisées
- Consultez enqueueFilespour créer des tâches de traduction
- Consultez querySourceFilepour obtenir des informations sur le fichier source et les traductions
Que pensez-vous de ce guide ?

