reinstate a simplified findPage()

This commit is contained in:
Sarah Schneider 2021-01-13 16:49:21 -05:00
Родитель d5eee9d01e
Коммит f0244fa645
1 изменённых файлов: 17 добавлений и 0 удалений

17
lib/find-page.js Normal file
Просмотреть файл

@ -0,0 +1,17 @@
const { getLanguageCode } = require('./patterns')
module.exports = function findPage (href, pageMap, redirects) {
// remove any fragments
href = href.replace(/#.*$/, '')
// find the page
const page = pageMap[href] || pageMap[redirects[href]]
if (page) return page
// get the current language
const currentLang = getLanguageCode.test(href) ? href.match(getLanguageCode)[1] : 'en'
// try to fall back to English if the translated page can't be found
const englishHref = href.replace(`/${currentLang}/`, '/en/')
return pageMap[englishHref] || pageMap[redirects[englishHref]]
}