Mon 21 Jul 22:43:21 CEST 2025
This commit is contained in:
		
							parent
							
								
									768895c4b2
								
							
						
					
					
						commit
						2edb6b1046
					
				
							
								
								
									
										82
									
								
								js/ui/botui/Gulpfile.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										82
									
								
								js/ui/botui/Gulpfile.js
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,82 @@
 | 
			
		|||
 | 
			
		||||
var fs = require('fs'),
 | 
			
		||||
    gulp = require('gulp'),
 | 
			
		||||
    sass = require('gulp-sass'),
 | 
			
		||||
    banner = require('gulp-banner'),
 | 
			
		||||
    rename = require('gulp-rename'),
 | 
			
		||||
    concat = require('gulp-concat'),
 | 
			
		||||
    uglify = require('gulp-uglify'),
 | 
			
		||||
    pkg = require('./package.json'),
 | 
			
		||||
    htmlclean = require('htmlclean'),
 | 
			
		||||
    replace = require('gulp-replace'),
 | 
			
		||||
    minify = require('gulp-clean-css');
 | 
			
		||||
 | 
			
		||||
function escape (text) {
 | 
			
		||||
  return text.replace(/'/g, "\\'").replace(/"/g, "\\\"");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function htmlTemplate() {
 | 
			
		||||
  return replace('BOTUI_TEMPLATE', escape(
 | 
			
		||||
    htmlclean(fs.readFileSync('./src/botui.html', 'utf8'))
 | 
			
		||||
  ));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var comment = '/*\n' +
 | 
			
		||||
    ' * <%= pkg.name %> <%= pkg.version %>\n' +
 | 
			
		||||
    ' * <%= pkg.description %>\n' +
 | 
			
		||||
    ' * <%= pkg.homepage %>\n' +
 | 
			
		||||
    ' *\n' +
 | 
			
		||||
    ' * Copyright <%= year %>, <%= pkg.author.name %>\n' +
 | 
			
		||||
    ' * Released under the <%= pkg.license %> license.\n' +
 | 
			
		||||
    '*/\n\n';
 | 
			
		||||
 | 
			
		||||
gulp.task('styles', function() {
 | 
			
		||||
  gulp.src(['./src/styles/normal.scss',
 | 
			
		||||
            './src/styles/botui.scss'])
 | 
			
		||||
      .pipe(sass().on('error', sass.logError))
 | 
			
		||||
      .pipe(minify())
 | 
			
		||||
      .pipe(concat('botui.min.css'))
 | 
			
		||||
      .pipe(banner(comment, {
 | 
			
		||||
        pkg: pkg,
 | 
			
		||||
        year: new Date().getFullYear()
 | 
			
		||||
      }))
 | 
			
		||||
      .pipe(gulp.dest('./build/'));
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
gulp.task('themes', function() {
 | 
			
		||||
  gulp.src('./src/styles/themes/*.scss')
 | 
			
		||||
      .pipe(sass().on('error', sass.logError))
 | 
			
		||||
      .pipe(minify())
 | 
			
		||||
      .pipe(rename(function (path) {
 | 
			
		||||
        path.basename = 'botui-theme-' + path.basename;
 | 
			
		||||
      }))
 | 
			
		||||
      .pipe(gulp.dest('./build/'));
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
gulp.task('scripts', function () {
 | 
			
		||||
      gulp.src('./src/scripts/botui.js') // simply copy the original one
 | 
			
		||||
      .pipe(htmlTemplate())
 | 
			
		||||
      .pipe(banner(comment, {
 | 
			
		||||
        pkg: pkg,
 | 
			
		||||
        year: new Date().getFullYear()
 | 
			
		||||
      }))
 | 
			
		||||
      .pipe(gulp.dest('./build/'));
 | 
			
		||||
 | 
			
		||||
      gulp.src('./src/scripts/botui.js')  // minified version
 | 
			
		||||
      .pipe(uglify())
 | 
			
		||||
      .pipe(htmlTemplate())
 | 
			
		||||
      .pipe(rename('botui.min.js'))
 | 
			
		||||
      .pipe(banner(comment, {
 | 
			
		||||
        pkg: pkg,
 | 
			
		||||
        year: new Date().getFullYear()
 | 
			
		||||
      }))
 | 
			
		||||
      .pipe(gulp.dest('./build/'));
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
gulp.task('watch',function() {
 | 
			
		||||
  gulp.watch('./src/styles/*.scss', ['styles']);
 | 
			
		||||
  gulp.watch('./src/styles/themes/*.scss', ['themes']);
 | 
			
		||||
  gulp.watch(['./src/scripts/botui.js', './src/botui.html'], ['scripts']);
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
gulp.task('default', ['styles', 'scripts', 'themes']);
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user