wormhole/explorer/gatsby-node.js

47 lines
1004 B
JavaScript

import path from 'path';
import dotenv from 'dotenv';
dotenv.config({
path: `.env.${process.env.NODE_ENV}`,
});
export const onCreateWebpackConfig = function addPathMapping({
stage,
actions,
getConfig,
}) {
actions.setWebpackConfig({
resolve: {
alias: {
'~': path.resolve(__dirname, 'src'),
},
},
});
// TODO: make sure this only runs in dev
actions.setWebpackConfig({
devtool: 'eval-source-map',
});
// Attempt to improve webpack vender code splitting
if (stage === 'build-javascript') {
const config = getConfig();
config.optimization.splitChunks.cacheGroups = {
...config.optimization.splitChunks.cacheGroups,
vendors: {
test: /[\\/]node_modules[\\/]/,
enforce: true,
chunks: 'all',
priority: 1,
},
};
// Ensure Gatsby does not do any css code splitting
config.optimization.splitChunks.cacheGroups.styles.priority = 10;
actions.replaceWebpackConfig(config);
}
};