33 lines
859 B
JavaScript
33 lines
859 B
JavaScript
|
const { merge, mergeWithRules, webpackConfig } = require('shakapacker')
|
||
|
const cssConfig = require('./rules/css');
|
||
|
const vueConfig = require('./rules/vue');
|
||
|
const svgConfig = require('./rules/svg');
|
||
|
|
||
|
let conf = merge(vueConfig, svgConfig);
|
||
|
conf = merge(cssConfig, conf);
|
||
|
conf = merge(conf, webpackConfig);
|
||
|
|
||
|
const updateFileLoaderConf = {
|
||
|
module: {
|
||
|
rules: [
|
||
|
{
|
||
|
type: 'asset/resource',
|
||
|
// This version does not include svg. See https://github.com/shakacode/shakapacker/blob/v6.2.0/package/rules/file.js
|
||
|
test: /\.(bmp|gif|jpe?g|png|tiff|ico|avif|webp|eot|otf|ttf|woff|woff2)$/
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
|
||
|
conf = mergeWithRules({
|
||
|
module: {
|
||
|
rules: {
|
||
|
type: "match",
|
||
|
test: "replace"
|
||
|
}
|
||
|
}
|
||
|
})(conf, updateFileLoaderConf);
|
||
|
|
||
|
|
||
|
module.exports = conf
|