mirror of
https://github.com/yannbertrand/macos-defaults
synced 2024-12-14 13:42:30 +00:00
66 lines
1.5 KiB
JavaScript
66 lines
1.5 KiB
JavaScript
const fs = require('fs')
|
|
const YAML = require('yaml')
|
|
|
|
const writeHomepage = require('./write-homepage')
|
|
const writeCategories = require('./write-categories')
|
|
const writePages = require('./write-pages')
|
|
const writeConfig = require('./write-config')
|
|
|
|
const input = fs.readFileSync('../../defaults.yml', 'utf8')
|
|
const inputFr = fs.readFileSync('../../defaults-fr.yml', 'utf8')
|
|
const defaults = YAML.parse(input)
|
|
const defaultsFr = YAML.parse(inputFr)
|
|
|
|
const templatesPath = 'templates'
|
|
const destinationPath = 'docs'
|
|
|
|
const supportedLanguages = {
|
|
languages: [
|
|
{
|
|
url: '/fr/',
|
|
lang: 'fr-FR',
|
|
home: 'Accueil',
|
|
defaults: getSafeDefaults(defaultsFr, defaults),
|
|
isFallback: false,
|
|
},
|
|
{
|
|
url: '/',
|
|
lang: 'en-US',
|
|
home: 'Home',
|
|
defaults: defaults,
|
|
isFallback: true,
|
|
},
|
|
],
|
|
}
|
|
|
|
supportedLanguages.languages.forEach((supportedLanguage) => {
|
|
const { url, isFallback } = supportedLanguage
|
|
writeHomepage(
|
|
supportedLanguage,
|
|
`${templatesPath}${url}`,
|
|
`${destinationPath}${url}`
|
|
)
|
|
writeCategories(
|
|
supportedLanguage,
|
|
`${templatesPath}${url}`,
|
|
`${destinationPath}${url}`,
|
|
isFallback
|
|
)
|
|
writePages(
|
|
supportedLanguage,
|
|
`${templatesPath}${url}`,
|
|
`${destinationPath}${url}`,
|
|
isFallback
|
|
)
|
|
writeConfig(
|
|
supportedLanguage,
|
|
supportedLanguages,
|
|
`${templatesPath}${url}`,
|
|
`${destinationPath}${url}`,
|
|
isFallback
|
|
)
|
|
})
|
|
|
|
function getSafeDefaults(localizedDefaults, fallbackDefaults) {
|
|
return { ...fallbackDefaults, ...localizedDefaults }
|
|
}
|