ldc-bogt/webpack.mix.js

61 lines
1.4 KiB
JavaScript
Vendored

const path = require('path');
const mix = require('laravel-mix');
const { CleanWebpackPlugin } = require('clean-webpack-plugin');
require('laravel-mix-polyfill');
require('laravel-mix-clean');
let assetDir = 'assets';
let polyfill = {
enabled: true,
useBuiltIns: "usage",
// legacy targets from gulp file
targets: ['last 3 version', 'safari 5', 'ie 8', 'opera 12.1', 'ios 6', 'android 4']
};
mix.webpackConfig({
resolve: {
alias: {
'@': path.resolve('resources/assets')
}
},
// Pour debug compilation errors
// stats: {
// children: true,
// warningsFilter: [
// /\-\-underline\-color/,
// ]
// },
});
mix.options({
fileLoaderDirs: {
// fonts: `${assetDir}/fonts`,
// images: `${assetDir}/images`
},
postCss: [
require('postcss-discard-comments')({
removeAll: true
})
],
});
mix.clean({
cleanOnceBeforeBuildPatterns: [
'css/*',
'js/*',
'assets/*',
'loue/*',
]
});
// * BO
mix.js('resources/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css')
.polyfill(polyfill);
// * THEME LOUE
mix.sass('resources/themes/loue/css/app.scss', 'public/loue/css')
.polyfill(polyfill);
mix.copy('resources/themes/loue/img', 'public/loue/img');
mix.copy('resources/themes/loue/fonts', 'public/loue/fonts');