|
|
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']);
|
|
|
|
|
|
};
|
|
|
|