File size: 884 Bytes
b91e262 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | /**
* @param {import('next').NextConfig} nextConfig
*/
const graphqlPlugin = (nextConfig = {}) => {
return Object.assign({}, nextConfig, {
webpack: (config, options) => {
config.module.rules.push({
test: /\.graphql$/,
exclude: /node_modules/,
use: [options.defaultLoaders.babel, { loader: "graphql-let/loader" }],
});
config.module.rules.push({
test: /\.graphqls$/,
exclude: /node_modules/,
use: ["graphql-let/schema/loader"],
});
config.module.rules.push({
test: /\.ya?ml$/,
type: "json",
use: "yaml-loader",
});
// Overload the Webpack config if it was already overloaded
if (typeof nextConfig.webpack === "function") {
return nextConfig.webpack(config, options);
}
return config;
},
});
};
module.exports = graphqlPlugin;
|