aboutsummaryrefslogtreecommitdiffhomepage
path: root/scripts/build/client.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/build/client.sh')
-rwxr-xr-xscripts/build/client.sh88
1 files changed, 81 insertions, 7 deletions
diff --git a/scripts/build/client.sh b/scripts/build/client.sh
index d95bb9574..05c40b5bb 100755
--- a/scripts/build/client.sh
+++ b/scripts/build/client.sh
@@ -2,6 +2,8 @@
2 2
3set -eu 3set -eu
4 4
5declare -A languages
6
5pre_build_hook () { 7pre_build_hook () {
6 mkdir "./src/pending_locale" > /dev/null || true 8 mkdir "./src/pending_locale" > /dev/null || true
7 mv ./src/locale/angular.*.xlf "./src/pending_locale" 9 mv ./src/locale/angular.*.xlf "./src/pending_locale"
@@ -37,22 +39,94 @@ post_build_hook
37 39
38# Don't build other languages if --light arg is provided 40# Don't build other languages if --light arg is provided
39if [ -z ${1+x} ] || [ "$1" != "--light" ]; then 41if [ -z ${1+x} ] || [ "$1" != "--light" ]; then
40 if [ ! -z ${1+x} ] && [ "$1" == "--light-fr" ]; then 42 if [ ! -z ${1+x} ] && [ "$1" == "--light-hu" ]; then
41 languages=("fr-FR") 43 languages=(["hu"]="hu-HU")
44 elif [ ! -z ${1+x} ] && [ "$1" == "--light-th" ]; then
45 languages=(["th"]="th-TH")
46 elif [ ! -z ${1+x} ] && [ "$1" == "--light-fi" ]; then
47 languages=(["fi"]="fi-FI")
48 elif [ ! -z ${1+x} ] && [ "$1" == "--light-nl" ]; then
49 languages=(["nl"]="nl-NL")
50 elif [ ! -z ${1+x} ] && [ "$1" == "--light-gd" ]; then
51 languages=(["gd"]="gd")
52 elif [ ! -z ${1+x} ] && [ "$1" == "--light-el" ]; then
53 languages=(["el"]="el-GR")
54 elif [ ! -z ${1+x} ] && [ "$1" == "--light-es" ]; then
55 languages=(["es"]="es-ES")
56 elif [ ! -z ${1+x} ] && [ "$1" == "--light-pt" ]; then
57 languages=(["pt"]="pt-BR")
58 elif [ ! -z ${1+x} ] && [ "$1" == "--light-pt-PT" ]; then
59 languages=(["pt-PT"]="pt-PT")
60 elif [ ! -z ${1+x} ] && [ "$1" == "--light-sv" ]; then
61 languages=(["sv"]="sv-SE")
62 elif [ ! -z ${1+x} ] && [ "$1" == "--light-pl" ]; then
63 languages=(["pl"]="pl-PL")
64 elif [ ! -z ${1+x} ] && [ "$1" == "--light-ru" ]; then
65 languages=(["ru"]="ru-RU")
66 elif [ ! -z ${1+x} ] && [ "$1" == "--light-zh-Hans" ]; then
67 languages=(["zh-Hans"]="zh-Hans-CN")
68 elif [ ! -z ${1+x} ] && [ "$1" == "--light-zh-Hant" ]; then
69 languages=(["zh-Hant"]="zh-Hant-TW")
70 elif [ ! -z ${1+x} ] && [ "$1" == "--light-fr" ]; then
71 languages=(["fr"]="fr-FR")
72 elif [ ! -z ${1+x} ] && [ "$1" == "--light-ja" ]; then
73 languages=(["ja"]="ja-JP")
74 elif [ ! -z ${1+x} ] && [ "$1" == "--light-eu" ]; then
75 languages=(["eu"]="eu-ES")
76 elif [ ! -z ${1+x} ] && [ "$1" == "--light-ca" ]; then
77 languages=(["ca"]="ca-ES")
78 elif [ ! -z ${1+x} ] && [ "$1" == "--light-cs" ]; then
79 languages=(["cs"]="cs-CZ")
80 elif [ ! -z ${1+x} ] && [ "$1" == "--light-eo" ]; then
81 languages=(["eo"]="eo")
82 elif [ ! -z ${1+x} ] && [ "$1" == "--light-de" ]; then
83 languages=(["de"]="de-DE")
84 elif [ ! -z ${1+x} ] && [ "$1" == "--light-it" ]; then
85 languages=(["it"]="it-IT")
42 else 86 else
43 # Supported languages 87 # Supported languages
44 languages=( 88 languages=(
45 "fi-FI" "nl-NL" "gd" "el-GR" "es-ES" "oc" "pt-BR" "pt-PT" "sv-SE" "pl-PL" "ru-RU" "zh-Hans-CN" "zh-Hant-TW" 89 ["hu"]="hu-HU"
46 "fr-FR" "ja-JP" "eu-ES" "ca-ES" "cs-CZ" "eo" "de-DE" "it-IT" 90 ["th"]="th-TH"
91 ["fi"]="fi-FI"
92 ["nl"]="nl-NL"
93 ["gd"]="gd"
94 ["el"]="el-GR"
95 ["es"]="es-ES"
96 ["pt"]="pt-BR"
97 ["pt-PT"]="pt-PT"
98 ["sv"]="sv-SE"
99 ["pl"]="pl-PL"
100 ["ru"]="ru-RU"
101 ["zh-Hans"]="zh-Hans-CN"
102 ["zh-Hant"]="zh-Hant-TW"
103 ["fr"]="fr-FR"
104 ["ja"]="ja-JP"
105 ["eu"]="eu-ES"
106 ["ca"]="ca-ES"
107 ["cs"]="cs-CZ"
108 ["eo"]="eo"
109 ["de"]="de-DE"
110 ["it"]="it-IT"
47 ) 111 )
48 fi 112 fi
49 113
50 for lang in "${languages[@]}"; do 114 for key in "${!languages[@]}"; do
115 lang=${languages[$key]}
116
51 # TODO: remove when the project will use runtime translations 117 # TODO: remove when the project will use runtime translations
52 pre_build_hook "$lang" 118 pre_build_hook "$lang"
53 119
54 npm run ng build -- --prod --i18n-file "./src/locale/angular.$lang.xlf" --i18n-format xlf --i18n-locale "$lang" \ 120 npm run ng build -- --prod --configuration="$lang" --output-path "dist/build"
55 --output-path "dist/$lang/" --deploy-url "/client/$lang/" 121
122 # If --localize is not used
123 mv "dist/build/$key" "dist/$lang"
124 rmdir "dist/build"
125
126 # If --localize is used
127 # if [ ! "$lang" = "$key" ]; then
128 # mv "dist/$key" "dist/$lang"
129 # fi
56 130
57 # Do not duplicate assets 131 # Do not duplicate assets
58 rm -r "./dist/$lang/assets" 132 rm -r "./dist/$lang/assets"