about summary refs log tree commit diff
path: root/config/webpack/generateLocalePacks.js
diff options
context:
space:
mode:
authorSurinna Curtis <ekiru.0@gmail.com>2017-11-16 01:21:16 -0600
committerSurinna Curtis <ekiru.0@gmail.com>2017-11-16 01:21:16 -0600
commit35fbdc36f92b610e8a73e2acb220e87cf5fc83b0 (patch)
treefcd9bdb5ba49ab7a6a79590c74db858ae77b4239 /config/webpack/generateLocalePacks.js
parent30237259367a0ef2b20908518b86bbeb358999b5 (diff)
parent88627fd7aa2493a6890d60a5965459e4c7fe6fe9 (diff)
Merge tootsuite/master at 30237259367a0ef2b20908518b86bbeb358999b5
Diffstat (limited to 'config/webpack/generateLocalePacks.js')
-rw-r--r--config/webpack/generateLocalePacks.js20
1 files changed, 19 insertions, 1 deletions
diff --git a/config/webpack/generateLocalePacks.js b/config/webpack/generateLocalePacks.js
index b71cf2ade..cd3bed50c 100644
--- a/config/webpack/generateLocalePacks.js
+++ b/config/webpack/generateLocalePacks.js
@@ -34,6 +34,23 @@ locales.forEach(locale => {
   ].filter(filename => fs.existsSync(path.join(outPath, filename)))
     .map(filename => filename.replace(/..\/..\/node_modules\//, ''))[0];
 
+  let glitchInject = `
+const mergedMessages = messages;
+`;
+
+  const glitchPath = `../../app/javascript/glitch/locales/${locale}.json`;
+  if (fs.existsSync(path.join(outPath, glitchPath))) {
+    glitchInject = `
+import glitchMessages from ${JSON.stringify(glitchPath)};
+
+let mergedMessages = messages;
+Object.keys(glitchMessages).forEach(function (key) {
+   mergedMessages[key] = glitchMessages[key];
+});
+
+`;
+  }
+
   const localeContent = `//
 // locale_${locale}.js
 // automatically generated by generateLocalePacks.js
@@ -41,7 +58,8 @@ locales.forEach(locale => {
 import messages from '../../app/javascript/mastodon/locales/${locale}.json';
 import localeData from ${JSON.stringify(localeDataPath)};
 import { setLocale } from '../../app/javascript/mastodon/locales';
-setLocale({messages, localeData});
+${glitchInject}
+setLocale({messages: mergedMessages, localeData: localeData});
 `;
   fs.writeFileSync(localePath, localeContent, 'utf8');
   outPaths.push(localePath);