in scripts/separate-snippets.ts [227:263]
async function main() {
const fileNames = listSnippetFiles();
for (const filePath of fileNames) {
const config = collectSnippets(filePath);
if (!config.enabled) {
continue;
}
const fileSlug = filePath
.replace(".js", "")
.replace("./", "")
.replace(/\./g, "-");
const snippetDir = path.join("./snippets", fileSlug);
console.log(
`Processing: ${filePath} --> ${snippetDir} (suffix=${config.suffix})`
);
if (!fs.existsSync(snippetDir)) {
fs.mkdirSync(snippetDir, { recursive: true });
}
for (const snippetName in config.map) {
const newFilePath = path.join(snippetDir, `${snippetName}.js`);
const snippetLines = config.map[snippetName];
const content = processSnippet(
snippetLines,
filePath,
config.suffix
);
fs.writeFileSync(newFilePath, content);
}
}
}