52 lines
1.2 KiB
JavaScript
52 lines
1.2 KiB
JavaScript
|
|
const path = require('path');
|
||
|
|
const mix = require('laravel-mix');
|
||
|
|
const { CleanWebpackPlugin } = require('clean-webpack-plugin');
|
||
|
|
require('laravel-mix-polyfill');
|
||
|
|
mix.webpackConfig({
|
||
|
|
resolve: {
|
||
|
|
alias: {
|
||
|
|
'@': path.resolve('resources/assets')
|
||
|
|
}
|
||
|
|
},
|
||
|
|
plugins: [
|
||
|
|
new CleanWebpackPlugin({
|
||
|
|
cleanOnceBeforeBuildPatterns: [
|
||
|
|
'css/*',
|
||
|
|
'js/*',
|
||
|
|
'images/*',
|
||
|
|
'fonts/*',
|
||
|
|
'assets/*'
|
||
|
|
]
|
||
|
|
})
|
||
|
|
],
|
||
|
|
stats: {
|
||
|
|
logging: 'warn'
|
||
|
|
}
|
||
|
|
});
|
||
|
|
|
||
|
|
let assetDir = 'assets';
|
||
|
|
mix.options({
|
||
|
|
fileLoaderDirs: {
|
||
|
|
images: `${assetDir}/images`,
|
||
|
|
fonts: `${assetDir}/fonts`,
|
||
|
|
documents: `${assetDir}/documents`
|
||
|
|
},
|
||
|
|
postCss: [
|
||
|
|
require('postcss-discard-comments')({
|
||
|
|
removeAll: true
|
||
|
|
})
|
||
|
|
]
|
||
|
|
});
|
||
|
|
|
||
|
|
mix.js("resources/js/front.js", "public/js/preload-app.js")
|
||
|
|
.sass("resources/sass/front.scss", "public/css/preload-app.css")
|
||
|
|
.vue()
|
||
|
|
.polyfill({
|
||
|
|
enabled: true,
|
||
|
|
useBuiltIns: "usage",
|
||
|
|
targets: { "firefox": "50", "ie": 11 }
|
||
|
|
});
|
||
|
|
|
||
|
|
// Copy Blade Images Assets
|
||
|
|
mix.copyDirectory('resources/assets', 'public/assets');
|