berg.mirror files added

This commit is contained in:
Captain Nick Lucifer* 2023-03-11 19:39:16 +05:45
commit 4747177059
73 changed files with 6994 additions and 0 deletions

8
gulptasks/assets.gulp.js Normal file
View file

@ -0,0 +1,8 @@
let gulp = require('gulp');
//copy assets
gulp.task('assets', function(callback){
return gulp.src(['src/assets/**'])
.pipe(gulp.dest('dist/assets'));
callback();
});

27
gulptasks/default.gulp.js Normal file
View file

@ -0,0 +1,27 @@
let gulp = require('gulp'),
clean = require('gulp-clean');
// clean dist directory
gulp.task('clean', () => {
return gulp.src('dist/*', { read: false }).pipe(clean());
});
// default task, run for development
gulp.task(
'default',
gulp.series(
['clean', 'html', 'styles', 'webpack', 'assets', 'watch'],
() => {}
)
);
// build for production
gulp.task(
'build',
gulp.series(
['clean', 'html', 'styles', 'webpack-prod', 'assets'],
(callback) => {
callback();
}
)
);

8
gulptasks/html.gulp.js Normal file
View file

@ -0,0 +1,8 @@
let gulp = require('gulp');
//copy HTML
gulp.task('html', function(callback){
return gulp.src(['src/**/*.html'])
.pipe(gulp.dest('dist/'));
callback();
});

26
gulptasks/scripts.gulp.js Normal file
View file

@ -0,0 +1,26 @@
let gulp = require('gulp'),
webpack = require('webpack');
// Use webpack to bundle JS and compile TS
// development env
gulp.task('webpack', (callback) => {
webpack(require('../webpack.config'), (err, stats) => {
if (err) {
throw err;
}
console.log(stats.toString());
callback();
});
});
// Use webpack to bundle JS and compile TS
// production ready
gulp.task('webpack-prod', (callback) => {
webpack(require('../webpack.config.prod'), (err, stats) => {
if (err) {
throw err;
}
console.log(stats.toString());
callback();
});
});

41
gulptasks/styles.gulp.js Normal file
View file

@ -0,0 +1,41 @@
let gulp = require('gulp'),
prefix = require('gulp-autoprefixer'),
sass = require('gulp-sass')(require('node-sass')),
sourcemaps = require('gulp-sourcemaps'),
rename = require('gulp-rename'),
cssmin = require('gulp-cssnano'),
normalize = require('node-normalize-scss');
// Options
const sassOptions = {
outputStyle: 'expanded',
includePaths: normalize.includePaths
};
const paths = {
css: './dist/css',
sourcemaps: './maps',
sass: './src/css/scss/**/*.scss',
sassFile: './src/css/scss/style.scss',
};
/*
* compile sass
* inkl. autoprefixer, normalize and sourcemaps
*/
gulp.task('styles', function() {
return gulp.src(paths.sassFile)
.pipe(sourcemaps.init())
.pipe(sass(sassOptions))
.on('error', function(errorMsg) {
console.log(errorMsg.toString());
this.emit('end');
})
.pipe(prefix())
.pipe(rename('style.css'))
.pipe(gulp.dest(paths.css))
.pipe(cssmin())
.pipe(rename({ suffix: '.min' }))
.pipe(sourcemaps.write(paths.sourcemaps))
.pipe(gulp.dest(paths.css))
});

12
gulptasks/watch.gulp.js Normal file
View file

@ -0,0 +1,12 @@
let gulp = require('gulp');
gulp.task('watch', () => {
// watch for changes in .html files
gulp.watch(['src/**/*.html'], gulp.series('html'));
// watch for changes in .scss files
gulp.watch('src/css/scss/**/*.scss', gulp.series('styles'));
// watch for changes in .ts files
gulp.watch(['src/js/**/*.ts', '!src/js/**/*.min.ts'], gulp.series('webpack'));
});