macos-defaults/build/write-categories.js
2022-08-18 11:08:08 +02:00

27 lines
883 B
JavaScript

const fs = require('fs')
const Handlebars = require('handlebars')
module.exports = (defaults, templatesPath, destinationPath) => {
if (defaults.categories !== null) {
const categoryTemplate = fs.readFileSync(
`${templatesPath}/category.md.handlebars`,
'utf8'
)
const renderCategory = Handlebars.compile(categoryTemplate)
defaults.categories.forEach((category) => {
fs.mkdirSync(`${destinationPath}/${category.folder}`)
const categoryReadmeContent = renderCategory(category)
fs.writeFileSync(
`${destinationPath}/${category.folder}/readme.md`,
categoryReadmeContent
)
if (category.image !== undefined) {
fs.copyFileSync(
`../images/${category.folder}/${category.image.filename}`,
`${destinationPath}/${category.folder}/${category.image.filename}`
)
}
})
}
}