betajs/betajs-server

View on GitHub
Gruntfile.js

Summary

Maintainability
A
0 mins
Test Coverage
module.exports = function(grunt) {

    var pkg = grunt.file.readJSON('package.json');
    var gruntHelper = require('betajs-compile');
    var dist = 'betajs-server';

    gruntHelper.init(pkg, grunt)
    
    
    /* Compilation */    
    .scopedclosurerevisionTask(null, "src/**/*.js", "dist/" + dist + "-noscoped.js", {
        "module": "global:BetaJS.Server",
        "base": "global:BetaJS",
        "data": "global:BetaJS.Data"
    }, {
        "base:version": pkg.devDependencies.betajs,
        "data:version": pkg.devDependencies["betajs-data"]
    })    
    .concatTask('concat-scoped', [require.resolve("betajs-scoped"), 'dist/' + dist + '-noscoped.js'], 'dist/' + dist + '.js')
    .uglifyTask('uglify-noscoped', 'dist/' + dist + '-noscoped.js', 'dist/' + dist + '-noscoped.min.js')
    .uglifyTask('uglify-scoped', 'dist/' + dist + '.js', 'dist/' + dist + '.min.js')
    .packageTask()

    /* Testing */
    .qunitTask(null, './dist/' + dist + '-noscoped.js',
                     grunt.file.expand("./tests/*/*.js"),
                     [require.resolve("betajs-scoped"), require.resolve("betajs"), require.resolve("betajs-data")])
    .closureTask(null, [require.resolve("betajs-scoped"), require.resolve("betajs"), require.resolve("betajs-data"), "./dist/betajs-server-noscoped.js"])
    .lintTask(null, ['./src/**/*.js', './dist/' + dist + '-noscoped.js', './dist/' + dist + '.js', './Gruntfile.js', './tests/**/*.js'])
    
    /* External Configurations */
    .codeclimateTask()
    
    /* Markdown Files */
    .readmeTask()
    .autoincreasepackageTask(null, "package-source.json")
    .licenseTask();
    
    /* Documentation */
    //.docsTask();

    grunt.initConfig(gruntHelper.config);    

    grunt.registerTask('default', ['autoincreasepackage', 'package', 'readme', 'license', 'codeclimate', 'scopedclosurerevision', 'concat-scoped', 'uglify-noscoped', 'uglify-scoped']);
    grunt.registerTask('check', [ 'lint', 'qunit' ]);

};