File: D:/HostingSpaces/SBogers95/rentman.io/webpack.mix.js
let mix = require('laravel-mix');
require("@babel/polyfill");
let sassDir = 'resources/assets/sass/';
let imgDir = 'resources/img';
let jsDir = 'resources/assets/js/';
//We need to define this because 'mix.copy' and 'mix.script' won't listen to the setPublicPath
let publicDir = 'wwwroot/';
//Sass will use this as public path
mix.setPublicPath(publicDir);
mix.browserSync({
proxy: 'localhost:8000',
port: 8001,
files: [
'wwwroot/css/**/*',
'resources/views/**/*',
'resources/lang/**/*',
]
});
// mix.webpackConfig({ devtool: "inline-source-map" });
mix.options({
processCssUrls: false,
postCss: [
require('autoprefixer')({
grid: true,
overrideBrowserslist: [
'> 2%',
'ie 11'
]
}),
]
});
// mix.disableSuccessNotifications();
/*
|--------------------------------------------------------------------------
| 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.copy(imgDir, publicDir + 'img');
mix.copy('resources/fonts', publicDir + 'fonts');
/* Site css and js
========================================================================== */
mix.sass(sassDir + 'site/style.scss', 'css/style.css')
.version();
mix.babel([
jsDir + 'lib/hammer.js',
jsDir + 'lib/bodyScrollLock.js',
jsDir + 'lib/lazyload.js',
jsDir + 'global/polyfills/*.js',
jsDir + 'global/helpers.js'
],
publicDir + 'js/site/core.js');
const scripts = [
// 'accordionHandler.js',
// 'bookADemoButtonHandler.js',
// 'boot.js',
// 'browserHandler.js',
// 'chocolateFactory.js',
// 'compareTableHandler.js',
// 'cookieHandler.js',
// 'createPlanDropdownHandler.js',
// 'customerLogosHandler.js',
// 'customerLogoSliderHandler.js',
// 'InputHandler.js',
// 'languageSelectorHandler.js',
// 'mapsHandler.js',
// 'modalHandler.js',
// 'overlayMenuHandler.js',
// 'pricingDropdownHandler.js',
// 'pricingHandler.js',
// 'pricingSectionDropdownHandler.js',
// 'recruiteeHandler.js',
// 'resizeHandler.js',
// 'scrollHandler.js',
// 'scrollToHandler.js',
// 'searchHandler.js',
// 'shareButtonsHandler.js',
// 'slideProjectorHandler.js',
// 'sliderHandler.js',
// 'submenuHandler.js',
// 'tabHandler.js',
// 'tabSliderHandler.js',
// 'timelineHandler.js',
// 'updateGridHandler.js',
// 'youtubeHandler.js',
// 'youtubeModalHandler.js'
];
// mix.js(scripts.map(script => jsDir + 'site/' + script), publicDir + 'js/site/app.js').version();
mix.js(jsDir + 'site/app.js', publicDir + 'js/site/app.js').version();
mix.js([jsDir + 'createPlan/app.js'], publicDir + 'js/site/createPlan.js').version();
/* KMS css and js
========================================================================== */
mix.sass(sassDir + 'kms/styles.sass', 'css/kms.css');
//External javascript
mix.scripts([
//TODO upgrade this to 3.1.1
jsDir + 'lib/jquery-1.11.2.min.js',
jsDir + 'lib/axios-min.js',
jsDir + 'lib/jquery-ui-1.12.1/jquery-ui.min.js',
],
publicDir + 'js/kms/jquery-bound.js'
);
mix.scripts([
jsDir + 'kms/*.js',
],
publicDir + 'js/kms/kms.js'
);
mix.copy(jsDir + 'kms/tinymce', publicDir + 'js/kms/tinymce');
mix.babel(jsDir + 'kms/attributes/*.js', publicDir + '/js/kms/attributes.js').sourceMaps();
mix.babel([
jsDir + 'global/polyfills/*.js',
jsDir + 'global/helpers.js',
jsDir + 'kms/*.js', //TODO: Files that reside in the kms folder need to be rewritten in a nicer way so that they dont depend on angular and conform to soc
jsDir + 'kms/entities/*.js',
jsDir + 'kms/entity/*.js'
], publicDir + '/js/kms/core.js');