52 lines
1.9 KiB
JavaScript
Executable file
52 lines
1.9 KiB
JavaScript
Executable file
const mix = require('laravel-mix');
|
|
const glob = require('glob')
|
|
const path = require('path')
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Vendor assets
|
|
|--------------------------------------------------------------------------
|
|
*/
|
|
|
|
function mixAssetsDir(query, cb) {
|
|
(glob.sync('resources/assets/' + query) || []).forEach(f => {
|
|
f = f.replace(/[\\\/]+/g, '/');
|
|
cb(f, f.replace('resources/assets', 'public'));
|
|
});
|
|
}
|
|
|
|
const sassOptions = {
|
|
precision: 5
|
|
};
|
|
|
|
// Core stylesheets
|
|
mix.sass('resources/assets/vendor/sass/bootstrap.scss', 'public/vendor/css', sassOptions)
|
|
.sass('resources/assets/vendor/sass/appwork.scss', 'public/vendor/css', sassOptions)
|
|
.sass('resources/assets/vendor/sass/theme-corporate.scss', 'public/vendor/css', sassOptions)
|
|
.sass('resources/assets/vendor/sass/colors.scss', 'public/vendor/css', sassOptions)
|
|
.sass('resources/assets/vendor/sass/uikit.scss', 'public/vendor/css', sassOptions);
|
|
|
|
// Core javascripts
|
|
mixAssetsDir('vendor/js/**/*.js', (src, dest) => mix.scripts(src, dest));
|
|
|
|
// Libs
|
|
mixAssetsDir('vendor/libs/**/*.js', (src, dest) => mix.scripts(src, dest));
|
|
mixAssetsDir('vendor/libs/**/!(_)*.scss', (src, dest) => mix.sass(src, dest.replace(/\.scss$/, '.css'), sassOptions));
|
|
|
|
// Pages
|
|
mixAssetsDir('vendor/sass/pages/**/!(_)*.scss', (src, dest) => mix.sass(src, dest.replace(/(\\|\/)sass(\\|\/)/, '$1css$2').replace(/\.scss$/, '.css'), sassOptions));
|
|
|
|
// Fonts
|
|
mixAssetsDir('vendor/fonts/*.css', (src, dest) => mix.copy(src, dest));
|
|
mixAssetsDir('vendor/fonts/*/*', (src, dest) => mix.copy(src, dest));
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Application assets
|
|
|--------------------------------------------------------------------------
|
|
*/
|
|
|
|
mix.js('resources/assets/js/application.js', 'public/js')
|
|
.sass('resources/assets/sass/application.scss', 'public/css');
|
|
|
|
mix.version();
|