104 lines
2.0 KiB
JavaScript
104 lines
2.0 KiB
JavaScript
'use strict';
|
|
|
|
module.exports = function(grunt) {
|
|
|
|
grunt.loadNpmTasks('grunt-contrib-uglify');
|
|
grunt.loadNpmTasks('grunt-contrib-concat');
|
|
grunt.loadNpmTasks('grunt-contrib-clean');
|
|
grunt.loadNpmTasks('grunt-contrib-cssmin');
|
|
grunt.loadNpmTasks('grunt-contrib-jshint');
|
|
grunt.loadNpmTasks('grunt-contrib-watch');
|
|
|
|
grunt.initConfig({
|
|
pkg: grunt.file.readJSON('package.json'),
|
|
meta: {
|
|
banner:
|
|
'/**\n'+
|
|
' * Leaflet Panel Layers v<%= pkg.version %> - <%= grunt.template.today("yyyy-mm-dd") %>\n'+
|
|
' *\n'+
|
|
' * Copyright <%= grunt.template.today("yyyy") %> <%= pkg.author.name %>\n'+
|
|
' * <%= pkg.author.email %>\n'+
|
|
' * <%= pkg.author.url %>\n'+
|
|
' *\n'+
|
|
' * Licensed under the <%= pkg.license %> license.\n'+
|
|
' *\n'+
|
|
' * Demos:\n'+
|
|
' * <%= pkg.homepage %>\n'+
|
|
' *\n'+
|
|
' * Source:\n'+
|
|
' * <%= pkg.repository.url %>\n'+
|
|
' *\n'+
|
|
' */\n'
|
|
},
|
|
clean: {
|
|
dist: {
|
|
src: ['dist/*']
|
|
}
|
|
},
|
|
jshint: {
|
|
options: {
|
|
globals: {
|
|
console: true,
|
|
module: true,
|
|
},
|
|
},
|
|
files: ['src/*.js']
|
|
},
|
|
concat: {
|
|
//TODO cut out SearchMarker
|
|
options: {
|
|
banner: '<%= meta.banner %>'
|
|
},
|
|
dist: {
|
|
files: {
|
|
'dist/leaflet-panel-layers.src.js': ['src/leaflet-panel-layers.js'],
|
|
'dist/leaflet-panel-layers.src.css': ['src/leaflet-panel-layers.css']
|
|
}
|
|
}
|
|
},
|
|
uglify: {
|
|
options: {
|
|
banner: '<%= meta.banner %>'
|
|
},
|
|
dist: {
|
|
files: {
|
|
'dist/leaflet-panel-layers.min.js': ['dist/leaflet-panel-layers.src.js']
|
|
}
|
|
}
|
|
},
|
|
cssmin: {
|
|
combine: {
|
|
files: {
|
|
'dist/leaflet-panel-layers.min.css': ['src/leaflet-panel-layers.css']
|
|
}
|
|
},
|
|
options: {
|
|
banner: '<%= meta.banner %>'
|
|
},
|
|
minify: {
|
|
expand: true,
|
|
cwd: 'dist/',
|
|
files: {
|
|
'dist/leaflet-panel-layers.min.css': ['src/leaflet-panel-layers.css']
|
|
}
|
|
}
|
|
},
|
|
watch: {
|
|
dist: {
|
|
options: { livereload: true },
|
|
files: ['src/*','examples/*'],
|
|
tasks: ['clean','concat','cssmin','jshint']
|
|
}
|
|
}
|
|
});
|
|
|
|
grunt.registerTask('default', [
|
|
'clean',
|
|
'concat',
|
|
'cssmin',
|
|
'jshint',
|
|
'uglify'
|
|
]);
|
|
|
|
};
|