##// END OF EJS Templates
frontend: latest js version
frontend: latest js version

File last commit:

r4:e3fa0670
r14:773ea182
Show More
Gruntfile.js
150 lines | 5.2 KiB | application/javascript | JavascriptLexer
var fs = require('fs');
var ini = require('ini');
var config = ini.parse(fs.readFileSync('./locations.ini', 'utf-8'))
module.exports = function (grunt) {
var grunt_conf_obj = {
pkg: grunt.file.readJSON('package.json'),
ngtemplates: {
app: {
options: {
module: 'appenlight.templates'
},
cwd: "src",
src: '**/*.html',
dest: 'build/templates.js'
}
},
concat: {
options: {
// define a string to put between each file in the concatenated output
separator: '\n;'
},
base: {
src: [
"bower_components/underscore/underscore.js",
"bower_components/angular/angular.min.js",
"bower_components/angular-cookies/angular-cookies.min.js",
"bower_components/angular-route/angular-route.min.js",
"bower_components/angular-resource/angular-resource.min.js",
"bower_components/angular-animate/angular-animate.min.js",
"bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js",
"bower_components/angular-ui-router/release/angular-ui-router.min.js",
"bower_components/angular-toArrayFilter/toArrayFilter.js",
"vendors/crel.js",
"bower_components/json-human/src/json.human.js",
"bower_components/moment/min/moment.min.js",
"bower_components/d3/d3.min.js",
"bower_components/c3/c3.min.js",
"bower_components/angular-smart-table/dist/smart-table.min.js",
"bower_components/ment.io/dist/mentio.min.js",
"vendors/simple_moment_utc.js",
"vendors/reconnecting-websocket.js",
],
dest: "build/base.js",
nonull: true
}
,
dev: {
src: [
"src/utils.js",
"src/app.js",
"build/templates.js",
"src/**/*.js",
"!src/**/*_test.js"
],
dest: 'build/app.js',
nonull: true
},
dist: {
src: [
'build/base.js',
'build/app.js'
],
dest: "build/release/js/appenlight.js",
nonull: true
},
},
removelogging: {
dist: {
src: "build/app.js"
}
},
copy: {
css: {
files: [
// includes files within path and its sub-directories
{
expand: true,
cwd: 'build/release/css',
src: ['front.css'],
dest: config.ae_statics_location + '/css'
},
{
expand: true,
cwd: 'build/release/css',
src: ['front.css'],
dest: config.ae_webassets_location + '/appenlight/css'
}
]
},
js: {
files: [
// includes files within path and its sub-directories
{
expand: true,
cwd: 'build/release/js',
src: ['**'],
dest: config.ae_statics_location + '/js'
},
{
expand: true,
cwd: 'build/release/js',
src: ['**'],
dest: config.ae_webassets_location + '/appenlight/js'
}
]
}
},
watch: {
dev: {
files: ['<%= concat.dev.src %>', 'src/**/*.html', '!build/*.js'],
tasks: ['ngtemplates', 'concat:dev', 'concat:dist', 'copy:js']
},
css: {
files: ['css/**/*.less', 'css/**/*.css'],
tasks: ['less', 'copy:css']
}
},
less: {
dev: {
files: {
"build/release/css/front.css": "css/front_app.less"
}
}
}
};
grunt.initConfig(grunt_conf_obj);
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-bower-concat');
grunt.loadNpmTasks('grunt-contrib-requirejs');
grunt.loadNpmTasks('grunt-contrib-copy');
grunt.loadNpmTasks("grunt-remove-logging");
grunt.loadNpmTasks('grunt-angular-templates');
grunt.loadNpmTasks('grunt-contrib-less');
grunt.registerTask('styles', ['less']);
grunt.registerTask('test', ['jshint', 'qunit']);
grunt.registerTask('default', ['ngtemplates', 'concat:base', 'concat:dev', 'removelogging', 'concat:dist', 'less', 'copy:js', 'copy:css']);
};