Merge branch 'feature/correctly-send-activities' into develop
[oweals/peertube.git] / scripts / i18n / create-custom-files.ts
index 3519afd47dcec9d15c420fc3d156cfba6f05868b..664207e1c91a3805dfb180ee537ca903c8c9050d 100755 (executable)
@@ -1,7 +1,14 @@
 import * as jsToXliff12 from 'xliff/jsToXliff12'
-import { writeFile } from 'fs'
+import { writeFile } from 'fs-extra'
 import { join } from 'path'
-import { buildLanguages, VIDEO_CATEGORIES, VIDEO_LICENCES, VIDEO_PRIVACIES } from '../../server/initializers/constants'
+import {
+  buildLanguages,
+  VIDEO_CATEGORIES,
+  VIDEO_IMPORT_STATES,
+  VIDEO_LICENCES,
+  VIDEO_PRIVACIES,
+  VIDEO_STATES
+} from '../../server/initializers/constants'
 import { values } from 'lodash'
 
 type TranslationType = {
@@ -14,13 +21,17 @@ const playerKeys = {
   'Quality': 'Quality',
   'Auto': 'Auto',
   'Speed': 'Speed',
+  'Subtitles/CC': 'Subtitles/CC',
   'peers': 'peers',
+  'peer': 'peer',
   'Go to the video page': 'Go to the video page',
   'Settings': 'Settings',
   'Uses P2P, others may know you are watching this video.': 'Uses P2P, others may know you are watching this video.',
   'Copy the video URL': 'Copy the video URL',
   'Copy the video URL at the current time': 'Copy the video URL at the current time',
-  'Copy embed code': 'Copy embed code'
+  'Copy embed code': 'Copy embed code',
+  'Total downloaded: ': 'Total downloaded: ',
+  'Total uploaded: ': 'Total uploaded: '
 }
 const playerTranslations = {
   target: join(__dirname, '../../../client/src/locale/source/player_en_US.xml'),
@@ -32,12 +43,16 @@ const serverKeys: any = {}
 values(VIDEO_CATEGORIES)
   .concat(values(VIDEO_LICENCES))
   .concat(values(VIDEO_PRIVACIES))
+  .concat(values(VIDEO_STATES))
+  .concat(values(VIDEO_IMPORT_STATES))
+  .concat([
+    'This video does not exist.',
+    'We cannot fetch the video. Please try again later.',
+    'Sorry',
+    'This video is not available because the remote instance is not responding.'
+  ])
   .forEach(v => serverKeys[v] = v)
 
-// ISO 639 keys
-const languages = buildLanguages()
-Object.keys(languages).forEach(k => serverKeys[languages[k]] = languages[k])
-
 // More keys
 Object.assign(serverKeys, {
   'Misc': 'Misc',
@@ -49,13 +64,27 @@ const serverTranslations = {
   data: serverKeys
 }
 
+// ISO 639 keys
+const languageKeys: any = {}
+const languages = buildLanguages()
+Object.keys(languages).forEach(k => languageKeys[languages[k]] = languages[k])
+
+const iso639Translations = {
+  target: join(__dirname, '../../../client/src/locale/source/iso639_en_US.xml'),
+  data: languageKeys
+}
+
 saveToXliffFile(playerTranslations, err => {
   if (err) return handleError(err)
 
   saveToXliffFile(serverTranslations, err => {
     if (err) return handleError(err)
 
-    process.exit(0)
+    saveToXliffFile(iso639Translations, err => {
+      if (err) return handleError(err)
+
+      process.exit(0)
+    })
   })
 })
 
@@ -83,4 +112,4 @@ function saveToXliffFile (jsonTranslations: TranslationType, cb: Function) {
 function handleError (err: any) {
   console.error(err)
   process.exit(-1)
-}
\ No newline at end of file
+}