File: D:/HostingSpaces/SBogers10/stielman.komma.nl/vendor/komma/kms/webpack.mix.js
let mix = require('laravel-mix');
require('laravel-mix-bundle-analyzer');
/*
|--------------------------------------------------------------------------
| Mix Asset Management
|--------------------------------------------------------------------------
|
| Mix provides a clean, fluent API for defining some Webpack build steps
| for your Laravel application. By default, we are compiling the Sass
| file for the application as well as bundling up all the JS files.
|
*/
mix.options({
publicPath: 'public',
processCssUrls: false,
postCss: [
require('autoprefixer')({
grid: true,
}),
],
});
// Copy the images
mix.copy('resources/img', 'public/img');
//Transpile sass
mix.sass('resources/sass/styles.sass', 'public/kms.css');
mix.sass('resources/sass/tiny_content.scss', 'public/tiny_content.css');
//Copy tinyMCE assets
mix.copy('resources/js/tinymce_languages/', 'public/js/tinymce_languages/');
// mix.copy('node_modules/tinymce/icons', 'public/js/icons');
mix.copy('node_modules/tinymce/skins', 'public/js/skins/');
mix.copy('resources/js/kms/tinymce/skins', 'public/js/skins/');
//Transpile Javascript
mix.js('resources/js/kms.js', 'public/js/kms.js').extract([
'tinymce',
'tinymce/themes/silver',
'tinymce/plugins/paste',
'tinymce/plugins/link',
'tinymce/plugins/code',
'tinymce/plugins/lists',
'tinymce/plugins/directionality',
'axios',
'jquery',
'jquery-ui',
'jquery-ui/ui/widgets/datepicker',
'jquery-ui/ui/widgets/sortable',
'jquery-ui/ui/widgets/selectmenu',
]).sourceMaps(false, 'inline-source-map')
.version();
//We only transpile javascript to es5 when you run npm prod. because this process is slower.
//The es5.js files must be included manually in base.blade.php when we would like to support old browsers.
if(mix.inProduction()) {
mix.babel(['public/js/kms.js'], 'public/js/kms.es5.js')
.babel(['public/js/vendor.js'], 'public/js/vendor.es5.js');
} else {
if (mix.isWatching()) {
mix.bundleAnalyzer({
openAnalyzer: false,
analyzerPort: 8888
});
}
}