From fb9e6cb075197d54f9a39dc4b0f9c45038e900d5 Mon Sep 17 00:00:00 2001
From: Chocobozzz <me@florianbigard.com>
Date: Tue, 31 Jul 2018 18:04:54 +0200
Subject: [PATCH] Add german, spanish and chinese (traditional, taiwan)
 languages

---
 scripts/build/client.sh    |  2 +-
 shared/models/i18n/i18n.ts | 11 ++++++++---
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/scripts/build/client.sh b/scripts/build/client.sh
index 567a6e5e0..5b70b6045 100755
--- a/scripts/build/client.sh
+++ b/scripts/build/client.sh
@@ -31,7 +31,7 @@ post_build_hook
 # Don't build other languages if --light arg is provided
 if [ -z ${1+x} ] || [ "$1" != "--light" ]; then
     # Supported languages
-    languages=("fr_FR" "eu_ES" "ca_ES" "cs_CZ" "eo")
+    languages=("fr_FR" "eu_ES" "ca_ES" "cs_CZ" "eo" "zh_Hant_TW" "de_DE" "es_ES")
 
     for lang in "${languages[@]}"; do
         # TODO: remove when the project will use runtime translations
diff --git a/shared/models/i18n/i18n.ts b/shared/models/i18n/i18n.ts
index 3f2ca4eaf..baf3fa0f4 100644
--- a/shared/models/i18n/i18n.ts
+++ b/shared/models/i18n/i18n.ts
@@ -6,7 +6,10 @@ export const I18N_LOCALES = {
   'eu-ES': 'euskara',
   'ca-ES': 'català',
   'cs-CZ': 'čeština',
-  'eo': 'Esperanto'
+  'eo': 'Esperanto',
+  'de-DE': 'Deutsch',
+  'es-ES': 'español',
+  'zh-Hant-TW': '中文 (繁體, 台灣)'
   // 'pl-PL': 'polski'
 }
 
@@ -15,7 +18,9 @@ const I18N_LOCALE_ALIAS = {
   'fr': 'fr-FR',
   'eu': 'eu-ES',
   'ca': 'ca-ES',
-  'cs': 'cs-CZ'
+  'cs': 'cs-CZ',
+  'de': 'de-DE',
+  'es': 'es-ES'
   // 'pl': 'pl-PL'
 }
 
@@ -56,5 +61,5 @@ export function getShortLocale (locale: string) {
 export function buildFileLocale (locale: string) {
   const completeLocale = getCompleteLocale(locale)
 
-  return completeLocale.replace('-', '_')
+  return completeLocale.replace(/-/g, '_')
 }