mirror of https://github.com/ColorlibHQ/AdminLTE
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
189 lines
4.5 KiB
189 lines
4.5 KiB
'use strict';
|
|
module.exports = function (grunt) {
|
|
|
|
grunt.initConfig({
|
|
pkg: grunt.file.readJSON('package.json'),
|
|
less: {
|
|
dist: {
|
|
options: {
|
|
strictMath: true,
|
|
sourceMap: true,
|
|
outputSourceFiles: true,
|
|
sourceMapURL: '<%= pkg.name %>.css.map',
|
|
sourceMapFilename: 'dist/css/<%= pkg.name %>.css.map'
|
|
},
|
|
src: 'src/less/colorpicker.less',
|
|
dest: 'dist/css/<%= pkg.name %>.css'
|
|
}
|
|
},
|
|
cssmin: {
|
|
options: {
|
|
compatibility: 'ie8',
|
|
keepSpecialComments: '*',
|
|
sourceMap: true,
|
|
advanced: false
|
|
},
|
|
dist: {
|
|
src: 'dist/css/<%= pkg.name %>.css',
|
|
dest: 'dist/css/<%= pkg.name %>.min.css'
|
|
}
|
|
},
|
|
jshint: {
|
|
options: {
|
|
jshintrc: '.jshintrc'
|
|
},
|
|
files: [
|
|
'Gruntfile.js',
|
|
'docs/docs.js',
|
|
'dist/js/<%= pkg.name %>.js'
|
|
]
|
|
},
|
|
jsbeautifier: {
|
|
options: {
|
|
js: {
|
|
braceStyle: "collapse",
|
|
breakChainedMethods: false,
|
|
e4x: false,
|
|
evalCode: false,
|
|
indentChar: " ",
|
|
indentLevel: 0,
|
|
indentSize: 2,
|
|
indentWithTabs: false,
|
|
jslintHappy: false,
|
|
keepArrayIndentation: false,
|
|
keepFunctionIndentation: false,
|
|
maxPreserveNewlines: 2,
|
|
preserveNewlines: true,
|
|
spaceBeforeConditional: true,
|
|
spaceInParen: false,
|
|
unescapeStrings: false,
|
|
wrapLineLength: 0,
|
|
endWithNewline: true
|
|
}
|
|
},
|
|
src: ['src/js/*.js', 'docs/docs.js'],
|
|
dist: ['dist/js/<%= pkg.name %>.js']
|
|
},
|
|
combine: {
|
|
js: {
|
|
input: 'src/js/colorpicker-plugin-wrapper.js',
|
|
output: 'dist/js/<%= pkg.name %>.js',
|
|
tokens: [{
|
|
token: "//@version",
|
|
string: '<%= pkg.version %>'
|
|
}, {
|
|
token: "//@colorpicker-color",
|
|
file: 'src/js/colorpicker-color.js'
|
|
}, {
|
|
token: "//@colorpicker-defaults",
|
|
file: 'src/js/colorpicker-defaults.js'
|
|
}, {
|
|
token: "//@colorpicker-component",
|
|
file: 'src/js/colorpicker-component.js'
|
|
}]
|
|
},
|
|
less: {
|
|
input: 'src/less/colorpicker.less',
|
|
output: 'src/less/colorpicker.less',
|
|
tokens: [{
|
|
token: "//@version",
|
|
string: '<%= pkg.version %>'
|
|
}]
|
|
}
|
|
},
|
|
strip_code: {
|
|
src: {
|
|
src: 'dist/js/*.js'
|
|
}
|
|
},
|
|
uglify: {
|
|
options: {
|
|
banner: '/*!\n * Bootstrap Colorpicker v<%= pkg.version %>\n' +
|
|
' * https://itsjavi.com/bootstrap-colorpicker/\n */\n'
|
|
},
|
|
dist: {
|
|
files: {
|
|
'dist/js/<%= pkg.name %>.min.js': [
|
|
'dist/js/<%= pkg.name %>.js'
|
|
]
|
|
}
|
|
}
|
|
},
|
|
watch: {
|
|
less: {
|
|
files: [
|
|
'src/less/*.less'
|
|
],
|
|
tasks: ['combine:less', 'less', 'cssmin']
|
|
},
|
|
js: {
|
|
files: [
|
|
'src/js/*.js',
|
|
'docs/docs.js'
|
|
],
|
|
tasks: ['jsbeautifier:src', 'combine:js', 'jsbeautifier:dist', 'uglify', 'jshint']
|
|
},
|
|
handlebars: {
|
|
files: [
|
|
'docs/*.hbs',
|
|
'docs/**/*.hbs',
|
|
'docs/helpers/**/*.js'
|
|
],
|
|
tasks: ['assemble']
|
|
}
|
|
},
|
|
assemble: {
|
|
options: {
|
|
assets: 'docs/assets',
|
|
helpers: ['docs/helpers/code'],
|
|
partials: ['docs/includes/**/*.hbs'],
|
|
layout: ['docs/layout.hbs'],
|
|
data: ['package.json'],
|
|
flatten: true
|
|
},
|
|
site: {
|
|
src: ['docs/pages/*.hbs'],
|
|
dest: './'
|
|
}
|
|
},
|
|
clean: {
|
|
dist: [
|
|
'dist/css/*',
|
|
'dist/js/*',
|
|
'index_new.html'
|
|
]
|
|
}
|
|
});
|
|
|
|
// Load tasks
|
|
grunt.loadNpmTasks('grunt-contrib-clean');
|
|
grunt.loadNpmTasks('grunt-contrib-less');
|
|
grunt.loadNpmTasks('grunt-contrib-cssmin');
|
|
grunt.loadNpmTasks('grunt-jsbeautifier');
|
|
grunt.loadNpmTasks('grunt-combine');
|
|
grunt.loadNpmTasks('grunt-contrib-uglify');
|
|
grunt.loadNpmTasks('grunt-contrib-watch');
|
|
grunt.loadNpmTasks('grunt-contrib-jshint');
|
|
grunt.loadNpmTasks('grunt-assemble');
|
|
grunt.loadNpmTasks('grunt-strip-code');
|
|
|
|
// Register tasks
|
|
grunt.registerTask('default', [
|
|
'clean',
|
|
'combine:less',
|
|
'less',
|
|
'cssmin',
|
|
'jsbeautifier:src',
|
|
'combine:js',
|
|
'jsbeautifier:dist',
|
|
'strip_code',
|
|
'uglify',
|
|
'assemble',
|
|
'jshint'
|
|
]);
|
|
grunt.registerTask('dev', [
|
|
'watch'
|
|
]);
|
|
|
|
};
|