feat(website): init

This commit is contained in:
moklick
2020-10-05 10:14:49 +02:00
parent f54b93b319
commit 277e032770
140 changed files with 30517 additions and 0 deletions
+66
View File
@@ -0,0 +1,66 @@
const path = require('path');
const docsTemplate = path.resolve('./src/templates/doc-page.js');
const docPagesQuery = `
{
docs: allMdx(
filter: {
fields: {
slug: { regex: "/docs/" },
}
}
) {
edges {
node {
fields {
slug
}
frontmatter {
title
}
}
}
}
}
`;
const createDocPages = (createPage, docPages) => {
const menu = docPages.map((page) => ({
slug: page.node.fields.slug,
title: page.node.frontmatter.title,
}));
docPages.forEach((page) => {
createPage({
path: page.node.fields.slug,
component: docsTemplate,
context: {
slug: page.node.fields.slug,
menu,
},
});
});
};
const blogGenerator = (createPage, graphql) =>
new Promise((resolve, reject) => {
resolve(
graphql(docPagesQuery).then((result) => {
if (result.errors) {
console.log(result.errors);
reject(result.errors);
}
const docPages = result.data.docs.edges;
try {
createDocPages(createPage, docPages);
} catch (e) {
console.log(e);
}
})
);
});
module.exports = blogGenerator;