Browse plugins

plugin-convert-translate

A Flatfile Listener plugin for field translation using the Google Translate API

Install
npm i @flatfile/plugin-convert-translate
Source:
View source
Package:
@flatfile/plugin-convert-translate 2 installs
Dependencies
@flatfile/plugin-record-hook@^1.10.0, @google-cloud/translate@^8.5.0

@flatfile/plugin-convert-translate

The @flatfile/plugin-convert-translate plugin enables field translation using the Google Translate API. It supports batch translation, configurable options, and both automatic and manual translation workflows. The plugin creates new fields for translated text and includes error handling.

Event Type: record:*

Event Type: listener.on('commit:created')

Supported Field Types: string

Features

  • Integrates with Google Translate API for accurate translations
  • Supports batch translation for improved performance
  • Configurable source and target languages
  • Allows selection of specific fields for translation
  • Creates new fields for translated content
  • Includes error handling and logging

Parameters

The convertTranslatePlugin function accepts a configuration object with the following properties:

  • sourceLanguage (string): The source language code (e.g., 'en' for English)
  • targetLanguage (string): The target language code (e.g., 'es' for Spanish)
  • sheetSlug (string): The slug of the sheet where translation should be applied
  • fieldsToTranslate (string[]): An array of field names to be translated
  • projectId (string): Your Google Cloud project ID
  • keyFilename (string): The path to your Google Cloud service account key file

Usage

Installation

To install the plugin, run the following command in your project directory:

npm install @flatfile/plugin-convert-translate

Example Usage

import { FlatfileListener } from '@flatfile/listener';
import { translatePlugin } from '@flatfile/plugin-convert-translate';

export default function (listener: FlatfileListener) {
   listener.use(translatePlugin({
      sourceLanguage: 'en',
      targetLanguage: 'es',
      sheetSlug: 'products',
      fieldsToTranslate: ['name', 'description'],
      projectId: 'your-google-cloud-project-id',
      keyFilename: '/path/to/your/google-cloud-key.json'
   }))
}