47 lines
979 B
JavaScript
47 lines
979 B
JavaScript
var gulp = require('gulp'),
|
|
rename = require('gulp-rename'),
|
|
uglify = require('gulp-uglify'),
|
|
webpack = require('webpack'),
|
|
webpackStream = require('webpack-stream');
|
|
|
|
gulp.task('js-build', function () {
|
|
return gulp.src('./src/js/hs-nav-scroller.js')
|
|
.pipe(webpackStream({
|
|
mode: 'development',
|
|
output: {
|
|
library: 'HsNavScroller',
|
|
libraryTarget: 'umd',
|
|
libraryExport: 'default',
|
|
filename: 'hs-nav-scroller.js',
|
|
},
|
|
module: {
|
|
rules: [
|
|
{
|
|
test: /\.(js)$/,
|
|
exclude: /(node_modules)/,
|
|
loader: 'babel-loader',
|
|
query: {
|
|
presets: ["@babel/preset-env"]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
externals: {
|
|
jquery: 'jQuery'
|
|
}
|
|
}))
|
|
.pipe(gulp.dest('./dist/'))
|
|
.pipe(uglify())
|
|
.pipe(rename({
|
|
suffix: '.min'
|
|
}))
|
|
.pipe(gulp.dest('./dist/'))
|
|
});
|
|
|
|
gulp.task('main-watch', function () {
|
|
gulp.watch('./src/**/*.js', gulp.series('js-build'));
|
|
});
|
|
|
|
// Default Task
|
|
gulp.task('default', gulp.series('main-watch'));
|