-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathgatsby-node.js
More file actions
29 lines (26 loc) · 780 Bytes
/
gatsby-node.js
File metadata and controls
29 lines (26 loc) · 780 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
const messages = require("./i18n-translations.json")
const {languages} = require("./src/i18n");
const {defaultLanguage} = require("./src/i18n");
exports.onCreatePage = async ({page, actions}) => {
const {createPage, deletePage} = actions;
return new Promise((resolve) => {
let path = page.path;
deletePage(page);
for (let language of languages) {
const isDefaultLanguage = language === defaultLanguage;
if (!isDefaultLanguage) {
path = '/' + language + page.path;
}
const pageForLanguage = Object.assign({}, page, {
originalPath: page.path,
path: path,
context: {
language,
messages: messages[language]
}
});
createPage(pageForLanguage)
}
resolve()
})
};