UNPKG

next-optimized-images

Version:

Automatically optimize images used in next.js projects (jpeg, png, gif, svg).

38 lines (35 loc) 924 B
const path = require('path'); /** * Returns the resource query definition for an svg sprite image * * @param {object} nextConfig - next.js configuration * @param {object} detectedLoaders - detected loaders * @param {object} imgLoaderOptions - img loader options * @param {boolean} optimize - if the svg image should get optimized * @returns {object} */ const getSvgSpriteLoaderResourceQuery = ( nextConfig, detectedLoaders, imgLoaderOptions, optimize, ) => ({ resourceQuery: /sprite/, use: [ { loader: 'svg-sprite-loader', options: { runtimeGenerator: require.resolve(path.resolve(__dirname, 'svg-runtime-generator.js')), ...(nextConfig.svgSpriteLoader || {}), }, }, ].concat(detectedLoaders.svg && optimize ? [ { loader: 'img-loader', options: imgLoaderOptions, }, ] : []), }); module.exports = { getSvgSpriteLoaderResourceQuery, };