@dfds-contentful/translation

2.0.1 • Public • Published

DFDS Translation System

This package facilitates working with translations in Contentful

Usage (Export)

  • exportTranslations --space-id=<spaceId> --environment-id=<environment-id> --management-token=<management-token> --url-filter=<url pattern> --locale=<locale> --mode=<mode> --exact-url The exportTranslations script is used for generating JSON from pages in Contentful (starting with a URL slug, and most commonly used on DotCom)

  • exportOneType --space-id=<spaceId> --environment-id=<environment-id> --management-token=management-token --type-id=<typeId> --team-id=<teamId> --locale=<locale> --mode=<mode> The exportOneType script is used for generating JSON from entries of a specific type. If team-id is specified, then only the entries with this team ID will be exported.

  • exportOneEntry --space-id=<spaceId> --environment-id=<environmentId> --management-token=management-token --entry-id=<entryId> --locale=<locale> --mode=<mode> The exportOneEntry script is used for generating JSON from ONE Contentful entry (and everything below it). This is typically used for special cases and exceptions.

Export script arguments:

Parameter Description
url-filter The URL under which we want the content exported (required in the exportTranslations script only)
exact-url (optional) if specified, only content for this exact URL gets exported, otherwise ALL pages matching the pattern will be exported (exportTranslations script only)
type-id The id of the content type in Contentful whose entries we want exported (required for the exportOneType script)
team-id (optional) The ID of the TeamName entry in the ShortStrings space. If specified, only the entries with that teamID will be exported (exportOneType script)
entry-id The Contentful id of the entry to export (required for the exportOneEntry script)
locale locale to export for. For example da-DK, tr-TR (case doesn't matter). Additional supported locale aliases are listed below:
all: all supported locales at DFDS
all-b2b: locales used in Freight & Logistics
all-pax: locales used in PAX
all-app: locales used by the App team
mode (optional) determines how the export gets generated, see options below Expected format coming back from the translation vendor
"all English" is the default mode, generating English content for everything under the URL. translations for the English strings that were sent out
missing: export only the strings that have no translations for that language. The result is English strings to be translated translations for the English strings that were sent out
existing: re-sends the strings that already have translations for them. This generates 2 files per language. The source English (for reference) and the existing translation for target language corrections to existing translations
space-id The ID of the space in Contentful, usually pre-specified
environment-id The environment for that contentful space, usually export goes from master
management-token The access token for that Contentful space, usually pre-specified

Usage (Import)

The importTranslations script is used for importing translated JSON files into Contentful

The syntax for this script is as follows:

importTranslations --space-id=<spaceId> --environment-id=<environment-id> --management-token=management-token --filename=<filename_locale.json> [--overwrite] [--all-locales] [--all-folders]

Import script arguments:

Parameter Description
filename The filename containing translations. Specify the filename relative to package/translation/translationImport. The suffix of the file indicates which locale the translations are for, for example myfile_da-DK.json will be imported into the Danish locale, and myfile_tr-TR.json will be imported into the Turkish locale
all-locales import from files of all available locales. With this option, you should remove the <locale>.json postfix, leaving the name as --filename=myfile
all-folders import from files of subfolders, in all available locales. Note that the specified argument at --filename will be ignored, and all files in all subfolders of package/translation/translationImport will be imported
overwrite (optional) If false (default), any existing content in the locale being imported will be KEPT. If true, the content in the JSON file will supercede what's in Contentful
space-id The ID of the space in Contentful, usually pre-specified
environment-id The environment for the Contentful space into which we are importing, usually the import is into staging or sandbox for testing and verification, and master for going live
management-token The access token for that Contentful space, usually pre-specified

Note: while you can export in different modes (all English / existing / missing), the importer doesn't have modes, everything we import is going to be either new translations or existing translations fixed up

Package Sidebar

Install

npm i @dfds-contentful/translation

Weekly Downloads

318

Version

2.0.1

License

MIT

Unpacked Size

377 kB

Total Files

82

Last publish

Collaborators

  • aleksd-dfds
  • samdi