2025-11-02 14:35:35 +03:00

70 lines
1.8 KiB
JavaScript

module.exports = function(grunt) {
require('matchdep').filterDev('grunt-*').forEach(grunt.loadNpmTasks);
var config = {
buildDir: 'build/'
, distDir: 'dist/'
, libDir: 'lib/'
, name: 'Powerange'
};
grunt.initConfig({
config: config
, pkg: grunt.file.readJSON('package.json')
, componentbuild: {
development : {
options: {
dev: true
, sourceUrls: true
}
, dest: '<%= config.buildDir %>'
, src: '.'
}
, standalone: {
options: {
name: '<%= pkg.name %>'
, standalone: '<%= config.name %>'
}
, dest: '<%= config.distDir %>'
, src: '.'
}
}
, uglify: {
dist: {
src: '<%= config.distDir %><%= pkg.name %>.js'
, dest: '<%= config.distDir %><%= pkg.name %>.min.js'
}
}
, cssmin: {
minify: {
src: '<%= config.distDir %><%= pkg.name %>.css'
, dest: '<%= config.distDir %><%= pkg.name %>.min.css'
}
}
, watch: {
css: {
files: ['<%= config.libDir %><%= pkg.name %>.css']
, tasks: ['componentbuild:development']
}
, js: {
files: ['<%= config.libDir %><%= pkg.name %>.js'
, '<%= config.libDir %>vertical.js'
, '<%= config.libDir %>horizontal.js'
, '<%= config.libDir %>main.js']
, tasks: ['componentbuild:development']
}
}
, clean: {
development: ['<%= config.buildDir %>*']
, standalone: ['<%= config.distDir %>*']
}
});
grunt.registerTask('build', ['componentbuild', 'uglify:dist', 'cssmin:minify']);
grunt.registerTask('default', 'build');
};