mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2025-11-11 13:02:25 +10:00
66 lines
1.5 KiB
JavaScript
66 lines
1.5 KiB
JavaScript
exports.onCreateWebpackConfig = ({ stage, actions, getConfig }) => {
|
|
if (stage === 'build-javascript') {
|
|
const config = getConfig();
|
|
const miniCssExtractPlugin = config.plugins.find(
|
|
(plugin) => plugin.constructor.name === 'MiniCssExtractPlugin',
|
|
);
|
|
if (miniCssExtractPlugin) {
|
|
miniCssExtractPlugin.options.ignoreOrder = true;
|
|
}
|
|
actions.replaceWebpackConfig(config);
|
|
}
|
|
|
|
if (stage === 'build-html') {
|
|
actions.setWebpackConfig({
|
|
externals: [/^firebase/],
|
|
});
|
|
}
|
|
};
|
|
|
|
exports.onCreatePage = async ({ page, actions }) => {
|
|
const { createPage } = actions;
|
|
|
|
if (page.path.match(/^\/r/)) {
|
|
page.matchPath = '/r/*';
|
|
createPage(page);
|
|
}
|
|
};
|
|
|
|
exports.createPages = async ({ actions, graphql, reporter }) => {
|
|
const { createPage } = actions;
|
|
|
|
const blogTemplate = require.resolve(`./src/components/Blog.js`);
|
|
|
|
const result = await graphql(`
|
|
{
|
|
allMarkdownRemark(
|
|
sort: { order: DESC, fields: [frontmatter___date] }
|
|
limit: 1000
|
|
) {
|
|
edges {
|
|
node {
|
|
frontmatter {
|
|
slug
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
`);
|
|
|
|
if (result.errors) {
|
|
reporter.panicOnBuild(`Error while running GraphQL query.`);
|
|
return;
|
|
}
|
|
|
|
result.data.allMarkdownRemark.edges.forEach(({ node }) => {
|
|
createPage({
|
|
path: node.frontmatter.slug,
|
|
component: blogTemplate,
|
|
context: {
|
|
slug: node.frontmatter.slug,
|
|
},
|
|
});
|
|
});
|
|
};
|